mirror of
https://github.com/Xevion/banner.git
synced 2025-12-15 04:11:11 -06:00
docs: add trivial documentation for all types, functions, packages etc.
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
// Package config provides the configuration and logging setup for the application.
|
||||
package config
|
||||
|
||||
import (
|
||||
@@ -9,12 +10,7 @@ import (
|
||||
|
||||
const timeFormat = "2006-01-02 15:04:05"
|
||||
|
||||
var (
|
||||
stdConsole = zerolog.ConsoleWriter{Out: os.Stdout, TimeFormat: timeFormat}
|
||||
errConsole = zerolog.ConsoleWriter{Out: os.Stderr, TimeFormat: timeFormat}
|
||||
)
|
||||
|
||||
// NewConsoleWriter creates a new console writer with improved formatting for development
|
||||
// NewConsoleWriter creates a new console writer that splits logs between stdout and stderr.
|
||||
func NewConsoleWriter() zerolog.LevelWriter {
|
||||
return &ConsoleLogSplitter{
|
||||
stdConsole: zerolog.ConsoleWriter{
|
||||
@@ -36,18 +32,18 @@ func NewConsoleWriter() zerolog.LevelWriter {
|
||||
}
|
||||
}
|
||||
|
||||
// ConsoleLogSplitter implements zerolog.LevelWriter with console formatting
|
||||
// ConsoleLogSplitter is a zerolog.LevelWriter that writes to stdout for info/debug logs and stderr for warn/error logs, with console-friendly formatting.
|
||||
type ConsoleLogSplitter struct {
|
||||
stdConsole zerolog.ConsoleWriter
|
||||
errConsole zerolog.ConsoleWriter
|
||||
}
|
||||
|
||||
// Write should not be called
|
||||
// Write is a passthrough to the standard console writer and should not be called directly.
|
||||
func (c *ConsoleLogSplitter) Write(p []byte) (n int, err error) {
|
||||
return c.stdConsole.Write(p)
|
||||
}
|
||||
|
||||
// WriteLevel write to the appropriate output with console formatting
|
||||
// WriteLevel writes to the appropriate output (stdout or stderr) with console formatting based on the log level.
|
||||
func (c *ConsoleLogSplitter) WriteLevel(level zerolog.Level, p []byte) (n int, err error) {
|
||||
if level <= zerolog.WarnLevel {
|
||||
return c.stdConsole.Write(p)
|
||||
@@ -55,22 +51,21 @@ func (c *ConsoleLogSplitter) WriteLevel(level zerolog.Level, p []byte) (n int, e
|
||||
return c.errConsole.Write(p)
|
||||
}
|
||||
|
||||
// LogSplitter implements zerolog.LevelWriter
|
||||
// LogSplitter is a zerolog.LevelWriter that writes to stdout for info/debug logs and stderr for warn/error logs.
|
||||
type LogSplitter struct {
|
||||
Std io.Writer
|
||||
Err io.Writer
|
||||
}
|
||||
|
||||
// Write should not be called
|
||||
// Write is a passthrough to the standard writer and should not be called directly.
|
||||
func (l LogSplitter) Write(p []byte) (n int, err error) {
|
||||
return l.Std.Write(p)
|
||||
}
|
||||
|
||||
// WriteLevel write to the appropriate output
|
||||
// WriteLevel writes to the appropriate output (stdout or stderr) based on the log level.
|
||||
func (l LogSplitter) WriteLevel(level zerolog.Level, p []byte) (n int, err error) {
|
||||
if level <= zerolog.WarnLevel {
|
||||
return l.Std.Write(p)
|
||||
} else {
|
||||
return l.Err.Write(p)
|
||||
}
|
||||
return l.Err.Write(p)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user