Documentation ¶
Index ¶
- Variables
- func DisableQuote(logger *logrus.Logger)
- func DisableQuoteTemporarily(logger *logrus.Logger, callback func(logger *logrus.Logger))
- func DisposeLogger(logger *logrus.Logger) error
- func EnableQuote(logger *logrus.Logger)
- func GetLocation(f *runtime.Frame) string
- func MustSetUp(config *Config)
- func NewDefaultTextFormatter() *logrus.TextFormatter
- func NewFileAndStdoutLogger(filePath string, options ...LoggerOption) (*logrus.Logger, error)
- func NewFileLogger(filePath string, options ...LoggerOption) (*logrus.Logger, error)
- func NewLogger(options ...LoggerOption) *logrus.Logger
- func NewTextFormatter(timestampFormat string) *logrus.TextFormatter
- func NewTruncFileAndStdoutLogger(filePath string, options ...LoggerOption) (*logrus.Logger, error)
- func NewTruncFileLogger(filePath string, options ...LoggerOption) (*logrus.Logger, error)
- func PrintBasicDetails(logger *logrus.Logger)
- func SetUp(config *Config) error
- func StringToLevel(str string) (logrus.Level, error)
- type Config
- type LoggerOption
- func WithDisableQuote(disableQuote bool) LoggerOption
- func WithFormatter(formatter logrus.Formatter) LoggerOption
- func WithLevel(level logrus.Level) LoggerOption
- func WithMsgPrefix(msgPrefix string) LoggerOption
- func WithOutput(output io.Writer) LoggerOption
- func WithReportCaller(reportCaller bool) LoggerOption
Constants ¶
This section is empty.
Variables ¶
var NewLfsHook func(output interface{}, formatter logrus.Formatter) *lfshook.LfsHook = lfshook.NewHook
NewLfsHook
使用场景: (1) 指定日志级别(s),可以也输出到其它输出,不影响原输出.
Functions ¶
func DisableQuoteTemporarily ¶
DisableQuoteTemporarily 临时禁用双引号(")
@param logger (1) 可以为nil(此时将采用logrus.StandardLogger())
(2) 只有当formatter为 *logrus.TextFormatter 类型,DisableQuote才会生效
func EnableQuote ¶
func GetLocation ¶ added in v3.0.43
func NewDefaultTextFormatter ¶
func NewDefaultTextFormatter() *logrus.TextFormatter
func NewFileAndStdoutLogger ¶
func NewFileAndStdoutLogger(filePath string, options ...LoggerOption) (*logrus.Logger, error)
NewFileAndStdoutLogger 同时输出到 文件(not rotatable) 和 os.Stdout.
@param filePath (1) 如果文件不存在,会自动创建;
(2) 如果文件存在,会自动追加内容.
func NewFileLogger ¶
func NewFileLogger(filePath string, options ...LoggerOption) (*logrus.Logger, error)
NewFileLogger 输出到 文件(not rotatable).
@param filePath (1) 如果文件不存在,会自动创建;
(2) 如果文件存在,会自动追加内容.
func NewLogger ¶
func NewLogger(options ...LoggerOption) *logrus.Logger
NewLogger
PS: (1) 默认输出到 控制台(os.Stderr); (2) 如果希望 输出到文件(可选是否rotatable),可以使用 WithOutput(),详见下例.
@param options 可以什么都不配置(此时输出到控制台)
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 NewTruncFileAndStdoutLogger ¶ added in v3.0.50
func NewTruncFileAndStdoutLogger(filePath string, options ...LoggerOption) (*logrus.Logger, error)
NewTruncFileAndStdoutLogger
@param filePath (1) 如果不存在,会自动创建;
(2) 如果 已经存在 && 是个文件,会截断该文件的内容.
func NewTruncFileLogger ¶ added in v3.0.50
func NewTruncFileLogger(filePath string, options ...LoggerOption) (*logrus.Logger, error)
NewTruncFileLogger
@param filePath (1) 如果不存在,会自动创建;
(2) 如果 已经存在 && 是个文件,会截断该文件的内容.
func PrintBasicDetails ¶
PrintBasicDetails 输出服务器的基本信息(以便于甩锅)
Types ¶
type LoggerOption ¶
type LoggerOption func(opts *loggerOptions)
func WithDisableQuote ¶
func WithDisableQuote(disableQuote bool) LoggerOption
func WithFormatter ¶
func WithFormatter(formatter logrus.Formatter) LoggerOption
func WithLevel ¶
func WithLevel(level logrus.Level) LoggerOption
func WithMsgPrefix ¶
func WithMsgPrefix(msgPrefix string) LoggerOption
func WithOutput ¶
func WithOutput(output io.Writer) LoggerOption
func WithReportCaller ¶
func WithReportCaller(reportCaller bool) LoggerOption