38 lines
647 B
Go
38 lines
647 B
Go
package logger
|
|
|
|
import (
|
|
"os"
|
|
|
|
"github.com/rs/zerolog"
|
|
"gopkg.in/natefinch/lumberjack.v2"
|
|
)
|
|
|
|
var Log zerolog.Logger
|
|
|
|
func init() {
|
|
|
|
// Set up logging
|
|
var logPath string
|
|
logPath = "logs/server_api.log"
|
|
apiLogger := &lumberjack.Logger{
|
|
Filename: logPath,
|
|
MaxSize: 10, // megabytes
|
|
MaxBackups: 3,
|
|
MaxAge: 28, // days
|
|
}
|
|
apiLogger.Rotate()
|
|
|
|
Log = zerolog.New(
|
|
zerolog.MultiLevelWriter( // Send logs to both console and file
|
|
// zerolog.ConsoleWriter{Out: os.Stdout},
|
|
os.Stdout,
|
|
// zerolog.ConsoleWriter{
|
|
// Out: apiLogger,
|
|
// NoColor: true,
|
|
// },
|
|
apiLogger,
|
|
),
|
|
).With().Timestamp().Logger()
|
|
|
|
}
|