代码拉取完成,页面将自动刷新
package FlyLog
import (
"errors"
"strings"
"gitee.com/flyiot/flylibs/FlyConfigFile"
)
type FlyLogLevel int
const (
FlyLogLevel_Silent FlyLogLevel = 0
FlyLogLevel_Error FlyLogLevel = 1
FlyLogLevel_Warn FlyLogLevel = 2
FlyLogLevel_Info FlyLogLevel = 3
FlyLogLevel_Debug FlyLogLevel = 4
)
type FlyLoggerSettings struct {
Enable bool
ConfigType string
ConfigKey string
FileLevel FlyLogLevel
ConsoleLevel FlyLogLevel
FileDir string
AutoCleanTime int
Ready bool
}
func NewFlyLoggerSettings() *FlyLoggerSettings {
s := FlyLoggerSettings{}
s.Enable = true
s.FileLevel = FlyLogLevel_Info
s.ConsoleLevel = FlyLogLevel_Info
s.FileDir = "log"
s.AutoCleanTime = 0
s.Ready = true
return &s
}
// 从ini加载配置信息
func (s *FlyLoggerSettings) LoadIni(config *FlyConfigFile.FlyIni, key string) error {
s.Ready = false
if !config.Ready {
return errors.New("config file error")
}
s.Enable = config.GetBool(key, "enable", true)
s.ConfigType = "ini"
s.ConfigKey = key
s.AutoCleanTime = config.GetInt(key, "auto_clean_time", 72)
s.FileDir = config.GetString(key, "file_dir", "log")
file_level := config.GetString(key, "file_level", "info")
console_level := config.GetString(key, "console_level", "info")
s.FileLevel = s.ParseLogLevel(file_level)
s.ConsoleLevel = s.ParseLogLevel(console_level)
s.Ready = true
return nil
}
func (s *FlyLoggerSettings) ParseLogLevel(name string) FlyLogLevel {
level := strings.ToLower(strings.Trim(name, " "))
if level == "debug" || level == "all" {
return FlyLogLevel_Debug
} else if level == "info" {
return FlyLogLevel_Info
} else if level == "warn" || level == "warnning" {
return FlyLogLevel_Warn
} else if level == "error" {
return FlyLogLevel_Error
} else {
return FlyLogLevel_Silent
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。