Documentation ¶
Overview ¶
Package logging provides logging functionality for gnet server, it sets up a default logger (powered by go.uber.org/zap) which is about to be used by gnet server, it also allows users to replace the default logger with their customized logger by just implementing the `Logger` interface and assign it to the functional option `Options.Logger`, pass it to `gnet.Serve` method.
The environment variable `GNET_LOGGING_LEVEL` determines which zap logger level will be applied for logging. The environment variable `GNET_LOGGING_FILE` is set to a local file path when you want to print logs into local file. Alternatives of logging level (the variable of logging level ought to be integer):
const (
// DebugLevel logs are typically voluminous, and are usually disabled in // production. DebugLevel Level = iota - 1 // InfoLevel is the default logging priority. InfoLevel // WarnLevel logs are more important than Info, but don't need individual // human review. WarnLevel // ErrorLevel logs are high-priority. If an application is running smoothly, // it shouldn't generate any error-level logs. ErrorLevel // DPanicLevel logs are particularly important errors. In development the // logger panics after writing the message. DPanicLevel // PanicLevel logs a message, then panics. PanicLevel // FatalLevel logs a message, then calls os.Exit(1). FatalLevel
)
Index ¶
- Constants
- func Cleanup()
- func Debugf(format string, args ...any)
- func Error(err error)
- func Errorf(format string, args ...any)
- func Fatalf(format string, args ...any)
- func Infof(format string, args ...any)
- func LogLevel() string
- func SetDefaultLoggerAndFlusher(logger Logger, flusher Flusher)
- func Warnf(format string, args ...any)
- type Flusher
- type Level
- type Logger
Constants ¶
const ( // DebugLevel logs are typically voluminous, and are usually disabled in // production. DebugLevel = zapcore.DebugLevel // InfoLevel is the default logging priority. InfoLevel = zapcore.InfoLevel // WarnLevel logs are more important than Info, but don't need individual // human review. WarnLevel = zapcore.WarnLevel // ErrorLevel logs are high-priority. If an application is running smoothly, // it shouldn't generate any error-level logs. ErrorLevel = zapcore.ErrorLevel // DPanicLevel logs are particularly important errors. In development the // logger panics after writing the message. DPanicLevel = zapcore.DPanicLevel // PanicLevel logs a message, then panics. PanicLevel = zapcore.PanicLevel // FatalLevel logs a message, then calls os.Exit(1). FatalLevel = zapcore.FatalLevel )
Variables ¶
This section is empty.
Functions ¶
func Cleanup ¶
func Cleanup()
Cleanup does something windup for logger, like closing, flushing, etc.
func SetDefaultLoggerAndFlusher ¶ added in v2.2.9
SetDefaultLoggerAndFlusher sets the default logger and its flusher.
Types ¶
type Flusher ¶ added in v2.2.9
type Flusher = func() error
Flusher is the callback function which flushes any buffered log entries to the underlying writer. It is usually called before the gnet process exits.
func GetDefaultFlusher ¶ added in v2.2.9
func GetDefaultFlusher() Flusher
GetDefaultFlusher returns the default flusher.
type Logger ¶
type Logger interface { // Debugf logs messages at DEBUG level. Debugf(format string, args ...any) // Infof logs messages at INFO level. Infof(format string, args ...any) // Warnf logs messages at WARN level. Warnf(format string, args ...any) // Errorf logs messages at ERROR level. Errorf(format string, args ...any) // Fatalf logs messages at FATAL level. Fatalf(format string, args ...any) }
Logger is used for logging formatted messages.