(level LogLevel, msg string, args []LoggerArgument)
| 377 | } |
| 378 | |
| 379 | func (l Logger) renderJSON(level LogLevel, msg string, args []LoggerArgument) string { |
| 380 | m := l.argsToMap(args) |
| 381 | |
| 382 | m["level"] = level.String() |
| 383 | m["timestamp"] = time.Now().Format(l.TimeFormat) |
| 384 | m["msg"] = msg |
| 385 | |
| 386 | if file, line := l.getCallerInfo(); file != "" { |
| 387 | m["caller"] = Sprintf("%s:%d", file, line) |
| 388 | } |
| 389 | |
| 390 | b, _ := json.Marshal(m) |
| 391 | return string(b) |
| 392 | } |
| 393 | |
| 394 | func (l Logger) argsToMap(args []LoggerArgument) map[string]any { |
| 395 | m := make(map[string]any) |
no test coverage detected