package fairwind import "encoding/json" type LogFormatterJSON struct { } func NewLogFormatterJSON() *LogFormatterJSON { return &LogFormatterJSON{} } func (this *LogFormatterJSON) Format(line LogLine) (string, error) { vector := map[string]any{ "severity": SeverityToString(line.Severity), "timestamp": line.Timestamp, "message": line.Message, } for _, parameter := range line.Parameters { vector[parameter.Key] = parameter.Value } buffer, err := json.Marshal(vector) if err != nil { return "", err } return string(buffer), nil }