Documentation ¶
Overview ¶
Package loggergo provides functionality for configuring and setting up different logging modes in Go applications. It includes support for OpenTelemetry format, JSON format, and plain format with different flavors. The package also supports enabling OpenTelemetry tracing for the logs.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func LoggerInit ¶
func LoggerInit(ctx context.Context, config LoggerGoConfig, additionalAttrs ...any) (*slog.Logger, error)
The LoggerInit function initializes a logger with the provided configuration and additional attributes.
Types ¶
type LoggerGoConfig ¶
type LoggerGoConfig struct { Level string `json:"level"` // Level specifies the log level. Valid values are "debug", "info", "warn", and "error". Format string `json:"format"` // Format specifies the log format. Valid values are "plain" (default), "otel" and "json". DevMode bool `json:"dev_mode"` // Dev indicates whether the logger is running in development mode. DevFlavor string `json:"dev_flavor"` // DevFlavor specifies the development flavor. Valid values are "tint" (default), slogor and "devslog". OutputStream *os.File `json:"output_stream"` // OutputStream specifies the output stream for the logger. Valid values are "stdout" (default) and "stderr". OtelTracingEnabled bool `json:"otel_enabled"` // OtelTracingEnabled specifies whether OpenTelemetry support is enabled. Default is true. OtelLoggerName string `json:"otel_logger_name"` // OtelLoggerName specifies the name of the logger for OpenTelemetry. Mode string `json:"mode"` // Mode specifies the mode of the logger. Valid values are "console", "otel" and "fanout" (default) - which is a combination of console and otel. OtelServiceName string `json:"otel_service_name"` // OtelServiceName specifies the service name for OpenTelemetry. }
LoggerGoConfig represents the configuration options for the LoggerGo logger.
Click to show internal directories.
Click to hide internal directories.