Documentation ¶
Index ¶
- Variables
- func DisableQuote(logger *logrus.Logger)
- func DisposeLogger(logger *logrus.Logger) error
- func EnableQuote(logger *logrus.Logger)
- func MustSetUp(config *Config)
- func NewFileLogger(filePath string, formatter logrus.Formatter, level logrus.Level, ...) (*logrus.Logger, error)
- func NewLogger(options ...LoggerOption) *logrus.Logger
- func NewTextFormatter(timestampFormat string) *logrus.TextFormatter
- func ParseLevel(str string) (logrus.Level, error)
- func PrintBasicDetails()
- func SetLevel(logger *logrus.Logger, level logrus.Level)
- func SetUp(config *Config) (err error)
- type Config
- type LoggerOption
Constants ¶
This section is empty.
Variables ¶
var (
DefaultTextFormatter = NewTextFormatter("")
)
Functions ¶
func EnableQuote ¶ added in v2.1.0
func NewFileLogger ¶
func NewFileLogger(filePath string, formatter logrus.Formatter, level logrus.Level, toConsoleFlag bool) (*logrus.Logger, error)
NewFileLogger
PS: 如果 logger.Out 被释放后继续调用 logger 进行输出,会失败(e.g. 控制台os.Stderr有输出: Failed to write to log, write /Users/richelieu/Downloads/a.txt: file already closed).
@param filePath 内部会做处理:
(1) 会尝试创建父级目录 (2) 文件不存在,会自动创建 (3) 文件存在:是个文件,追加在最后;是个目录,返回error
@param formatter 可以为nil,此时将采用默认值 @param toConsoleFlag true: 输出到日志文件的同时,也输出到控制台; false: 只输出到文件日志
func NewLogger ¶
func NewLogger(options ...LoggerOption) *logrus.Logger
NewLogger
PS: (1) 如果希望 输出到文件 且 rotatable,可以使用 WithWriter(),详见下例.
@param options 可以什么都不配置(此时输出到控制台)
e.g.
writer, err := ioKit.NewLumberjackWriteCloser(ioKit.WithFilePath(path)) // process err logger := NewLogger(WithWriter(writer))
func NewTextFormatter ¶
func NewTextFormatter(timestampFormat string) *logrus.TextFormatter
NewTextFormatter
PS: 外部在调用此方法后,建议调用: Logger.SetReportCaller(true)!!!
@param timestampFormat 可以为""(将采用默认值)
e.g. 日志输出 time=2023-03-23 16:46:23.398+08:00 level=info msg=[CHIMERA, PROCESS] pid: [8579]. func=PrintBasicDetails(logrusKit/basicDetails.go:17) time=2023-03-23 16:46:23.398+08:00 level=info msg=[CHIMERA, OS] os: [darwin]. func=PrintBasicDetails(logrusKit/basicDetails.go:20) time=2023-03-23 16:46:23.398+08:00 level=info msg=[CHIMERA, OS] arch: [arm64]. func=PrintBasicDetails(logrusKit/basicDetails.go:21)
func ParseLevel ¶ added in v2.0.12
ParseLevel string => logrus.Level
Types ¶
type LoggerOption ¶ added in v2.0.12
type LoggerOption func(opts *loggerOptions)
func WithFormatter ¶ added in v2.0.12
func WithFormatter(formatter logrus.Formatter) LoggerOption
func WithLevel ¶ added in v2.0.12
func WithLevel(level logrus.Level) LoggerOption
func WithReportCaller ¶ added in v2.0.12
func WithReportCaller(reportCaller bool) LoggerOption
func WithWriter ¶ added in v2.0.16
func WithWriter(writer io.Writer) LoggerOption