v0.1.4 formatter race fix, fiber adapter added, default config changed, docs updated

This commit is contained in:
lixen committed 2025-11-17 16:33:08 -05:00
1 parent 8b5faa217f
commit 6734e2141c
22 files changed
+797 -56

No files matched your search

+15 -5
View File
@@ -19,7 +19,7 @@ type Logger struct {
currentConfig atomic.Value // stores *Config
state State
initMu sync.Mutex
formatter *formatter.Formatter
formatter atomic.Value // stores *formatter.Formatter
}
// NewLogger creates a new Logger instance with default settings
@@ -27,7 +27,16 @@ func NewLogger() *Logger {
l := &Logger{}
// Set default configuration
l.currentConfig.Store(DefaultConfig())
defaultCfg := DefaultConfig()
l.currentConfig.Store(defaultCfg)
// Initialize default formatter to prevent nil access
defaultFormatter := formatter.New(sanitizer.New()).
Type(defaultCfg.Format).
TimestampFormat(defaultCfg.TimestampFormat).
ShowLevel(defaultCfg.ShowLevel).
ShowTimestamp(defaultCfg.ShowTimestamp)
l.formatter.Store(defaultFormatter)
// Initialize the state
l.state.IsInitialized.Store(false)
@@ -347,11 +356,12 @@ func (l *Logger) applyConfig(cfg *Config) error {
// Create formatter with sanitizer
s := sanitizer.New().Policy(cfg.Sanitization)
l.formatter = formatter.New(s).
newFormatter := formatter.New(s).
Type(cfg.Format).
TimestampFormat(cfg.TimestampFormat).
ShowLevel(cfg.ShowLevel).
ShowTimestamp(cfg.ShowTimestamp)
l.formatter.Store(newFormatter)
// Ensure log directory exists if file output is enabled
if cfg.EnableFile {
@@ -442,8 +452,8 @@ func (l *Logger) applyConfig(cfg *Config) error {
// Mark as initialized
l.state.IsInitialized.Store(true)
l.state.ShutdownCalled.Store(false)
// l.state.DiskFullLogged.Store(false)
// l.state.DiskStatusOK.Store(true)
l.state.DiskFullLogged.Store(false)
l.state.DiskStatusOK.Store(true)
// Restart processor if it was running and needs restart
if needsRestart {