Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ColoredLevelEncoder ¶
func ColoredLevelEncoder(level zapcore.Level, enc zapcore.PrimitiveArrayEncoder)
ColoredLevelEncoder colorizes log levels.
func ColoredNameEncoder ¶
func ColoredNameEncoder(s string, enc zapcore.PrimitiveArrayEncoder)
ColoredNameEncoder colorizes service names.
Types ¶
type Config ¶
type Config struct {
// Level is the minimum enabled logging level
Level string `yaml:"level" env:"LEVEL" env-default:"INFO"`
// Logger line ending. Default: "\n" for the all modes except production
LineEnding string `yaml:"line_ending"`
// Encoding sets the logger's encoding. InitDefault values are "json" and
// "console", as well as any third-party encodings registered via
// RegisterEncoder.
Encoding string `yaml:"encoding"`
// Output is a list of URLs or file paths to write logging output to.
// See Open for details.
Output []string `yaml:"output"`
// ErrorOutput is a list of URLs to write internal logger errors to.
// The default is standard error.
//
// Note that this setting only affects internal errors; for sample code that
// sends error-level logs to a different location from info- and debug-level
// logs, see the package-level AdvancedConfiguration example.
ErrorOutput []string `yaml:"error_output"`
// File logger options
FileLogger *FileLoggerConfig `yaml:"file_logger_options"`
}
func (*Config) BuildLogger ¶
BuildLogger converts config into Zap configuration.
func (*Config) InitDefault ¶
InitDefault Initialize default logger
type FileLoggerConfig ¶
type FileLoggerConfig struct {
// Filename is the file to write logs to. Backup log files will be retained
// in the same directory. It uses <processname>-lumberjack.log in
// os.TempDir() if empty.
LogOutput string `yaml:"log_output"`
// MaxSize is the maximum size in megabytes of the log file before it gets
// rotated. It defaults to 100 megabytes.
MaxSize int `yaml:"max_size"`
// MaxAge is the maximum number of days to retain old log files based on the
// timestamp encoded in their filename. Note that a day is defined as 24
// hours and may not exactly correspond to calendar days due to daylight
// savings, leap seconds, etc. The default is not to remove old log files
// based on age.
MaxAge int `yaml:"max_age"`
// MaxBackups is the maximum number of old log files to retain. The default
// is to retain all old log files (though MaxAge may still cause them to get
// deleted.)
MaxBackups int `yaml:"max_backups"`
// Compress determines if the rotated log files should be compressed
// using gzip. The default is not to perform compression.
Compress bool `yaml:"compress"`
}
FileLoggerConfig structure represents configuration for the file logger
func (*FileLoggerConfig) InitDefaults ¶
func (fl *FileLoggerConfig) InitDefaults() *FileLoggerConfig
Click to show internal directories.
Click to hide internal directories.