feat: Add basic structured logger
This commit is contained in:
@@ -27,15 +27,15 @@ func headerEventToCSV(event *config.HeaderEvent) []string {
|
||||
return append([]string{event.Type, fmt.Sprintf("%v", event.Indexed)}, headerToCSV(event.Header)...)
|
||||
}
|
||||
|
||||
type Logger struct {
|
||||
type CSVLogger struct {
|
||||
n int
|
||||
}
|
||||
|
||||
func NewLogger() *Logger {
|
||||
return &Logger{}
|
||||
func NewCSVLogger() *CSVLogger {
|
||||
return &CSVLogger{}
|
||||
}
|
||||
|
||||
func (l *Logger) PrintHeader(hdr *models.Header) {
|
||||
func (l *CSVLogger) PrintHeader(hdr *models.Header) {
|
||||
w := csv.NewWriter(os.Stdout)
|
||||
|
||||
if l.n <= 0 {
|
||||
@@ -49,7 +49,7 @@ func (l *Logger) PrintHeader(hdr *models.Header) {
|
||||
l.n++
|
||||
}
|
||||
|
||||
func (l *Logger) PrintHeaderEvent(event *config.HeaderEvent) {
|
||||
func (l *CSVLogger) PrintHeaderEvent(event *config.HeaderEvent) {
|
||||
w := csv.NewWriter(os.Stdout)
|
||||
|
||||
if l.n <= 0 {
|
||||
|
||||
37
internal/logging/json.go
Normal file
37
internal/logging/json.go
Normal file
@@ -0,0 +1,37 @@
|
||||
package logging
|
||||
|
||||
import (
|
||||
"log"
|
||||
|
||||
golog "github.com/fclairamb/go-log"
|
||||
)
|
||||
|
||||
type JSONLogger struct{}
|
||||
|
||||
func NewJSONLogger() *JSONLogger {
|
||||
return &JSONLogger{}
|
||||
}
|
||||
|
||||
func (l JSONLogger) Trace(event string, keyvals ...interface{}) {
|
||||
log.Println("TRACE", event, keyvals)
|
||||
}
|
||||
|
||||
func (l JSONLogger) Debug(event string, keyvals ...interface{}) {
|
||||
log.Println("DEBUG", event, keyvals)
|
||||
}
|
||||
|
||||
func (l JSONLogger) Info(event string, keyvals ...interface{}) {
|
||||
log.Println("INFO", event, keyvals)
|
||||
}
|
||||
|
||||
func (l JSONLogger) Warn(event string, keyvals ...interface{}) {
|
||||
log.Println("WARN", event, keyvals)
|
||||
}
|
||||
|
||||
func (l JSONLogger) Error(event string, keyvals ...interface{}) {
|
||||
log.Println("ERROR", event, keyvals)
|
||||
}
|
||||
|
||||
func (l JSONLogger) With(keyvals ...interface{}) golog.Logger {
|
||||
return l
|
||||
}
|
||||
Reference in New Issue
Block a user