summaryrefslogtreecommitdiff
path: root/internal/log/level.go
diff options
context:
space:
mode:
authorLibravatar kim <grufwub@gmail.com>2025-08-09 16:23:00 +0200
committerLibravatar tobi <kipvandenbos@noreply.codeberg.org>2025-08-09 16:23:00 +0200
commit7af9117e0dc73f83995a32f11158cffdbaf5307c (patch)
tree8295b880a2b20306febbd0330de1f51a03533bb0 /internal/log/level.go
parentchore: github/README update release month (#4359) (diff)
downloadgotosocial-7af9117e0dc73f83995a32f11158cffdbaf5307c.tar.xz
[feature + performance] add JSON logging format (#4355)
# Description Adds JSON logging as an optional alternative log output format. In the process this moves our log formatting itself into a separate subpkg to make it more easily modular, and improves caller name getting with some calling function name caching. ## Checklist - [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md). - [x] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat. - [x] I/we have not leveraged AI to create the proposed changes. - [x] I/we have performed a self-review of added code. - [x] I/we have written code that is legible and maintainable by others. - [x] I/we have commented the added code, particularly in hard-to-understand areas. - [x] I/we have made any necessary changes to documentation. - [ ] I/we have added tests that cover new code. - [x] I/we have run tests and they pass locally with the changes. - [x] I/we have run `go fmt ./...` and `golangci-lint run`. Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4355 Co-authored-by: kim <grufwub@gmail.com> Co-committed-by: kim <grufwub@gmail.com>
Diffstat (limited to 'internal/log/level.go')
-rw-r--r--internal/log/level.go28
1 files changed, 12 insertions, 16 deletions
diff --git a/internal/log/level.go b/internal/log/level.go
index be45e2964..5776db999 100644
--- a/internal/log/level.go
+++ b/internal/log/level.go
@@ -17,22 +17,18 @@
package log
-// LEVEL defines a level of logging.
-type LEVEL uint8
+import (
+ "code.superseriousbusiness.org/gotosocial/internal/log/level"
+)
+
+type LEVEL = level.LEVEL
-// Default levels of logging.
const (
- UNSET LEVEL = 0
- PANIC LEVEL = 1
- ERROR LEVEL = 100
- WARN LEVEL = 150
- INFO LEVEL = 200
- DEBUG LEVEL = 250
- TRACE LEVEL = 254
- ALL LEVEL = ^LEVEL(0)
+ PANIC = level.PANIC
+ ERROR = level.ERROR
+ WARN = level.WARN
+ INFO = level.INFO
+ DEBUG = level.DEBUG
+ TRACE = level.TRACE
+ UNSET = level.UNSET
)
-
-// CanLog returns whether an incoming log of 'lvl' can be logged against receiving level.
-func (loglvl LEVEL) CanLog(lvl LEVEL) bool {
- return loglvl > lvl
-}