feat: set logger level by env PICOCLAW_LOG_LEVEL
This commit is contained in:
parent
6f5930624b
commit
76d21a791b
1 changed files with 23 additions and 0 deletions
|
|
@ -53,6 +53,29 @@ func init() {
|
|||
once.Do(func() {
|
||||
logger = &Logger{}
|
||||
})
|
||||
|
||||
// Support PICOCLAW_LOG_LEVEL environment variable
|
||||
if levelStr := os.Getenv("PICOCLAW_LOG_LEVEL"); levelStr != "" {
|
||||
if level, ok := parseLevel(levelStr); ok {
|
||||
SetLevel(level)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func parseLevel(s string) (LogLevel, bool) {
|
||||
switch strings.ToUpper(s) {
|
||||
case "DEBUG":
|
||||
return DEBUG, true
|
||||
case "INFO":
|
||||
return INFO, true
|
||||
case "WARN", "WARNING":
|
||||
return WARN, true
|
||||
case "ERROR":
|
||||
return ERROR, true
|
||||
case "FATAL":
|
||||
return FATAL, true
|
||||
}
|
||||
return INFO, false
|
||||
}
|
||||
|
||||
func SetLevel(level LogLevel) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue