Привет, спасибо за отличную либу для логов, но один момент я не могу понять как убрать )
ERR structlog odd keyvals эта ошибка засоряет все логи и ужасно раздражает, хотя они работают отлично.
Я использую следующий формат ответа от логирования
Oct 2 11:22:35 ERR structlog `odd keyvals` log.go:316
то есть мне нужна текущая дата и строчка с ошибкой или ответом.
const (
LogRemote = "remote"
LogFunc = "func"
LogHTTPMethod = "httpMethod"
LogHTTPStatus = "httpStatus"
LogHandler = "handler"
LogGRPCCode = "grpcCode"
)
// Default values.
var (
ServiceHost = os.Getenv("SERVICE_HOST")
)
// Init must be called once before using this package.
// It provides common initialization for both commands and tests.
func Init() {
must.AbortIf = must.PanicIf
structlog.DefaultLogger.
SetPrefixKeys(
structlog.KeyTime, LogGRPCCode,
structlog.KeyLevel, structlog.KeyUnit,
).
SetDefaultKeyvals(
structlog.KeyTime, structlog.Auto,
structlog.KeySource, structlog.Auto,
).
SetSuffixKeys(
structlog.KeySource,
).
SetKeysFormat(map[string]string{
structlog.KeyTime: " %[2]s",
structlog.KeySource: " %6[2]s",
structlog.KeyUnit: " %6[2]s",
LogGRPCCode: " %-16.16[2]s",
"config": " %+[2]v",
"duration": " %[2]q",
"request": " %[1]s=`% [2]X`",
"response": " %[1]s=`% [2]X`",
}).SetTimeFormat(time.StampMicro)
}
и есть такой в логировании API
log := structlog.New(
structlog.KeyTime, structlog.Auto,
def.LogRemote, remote,
def.LogHTTPStatus, "",
def.LogHTTPMethod, r.Method,
def.LogFunc, strings.TrimPrefix(r.URL.Path, basePath),
).SetTimeFormat(time.StampMicro)
Пытался как то решить проблему сам но я не понял вообще причину этой ошибки, должно быть четное количество параметров key-value?)
Привет, спасибо за отличную либу для логов, но один момент я не могу понять как убрать )
ERR structlog
odd keyvalsэта ошибка засоряет все логи и ужасно раздражает, хотя они работают отлично.Я использую следующий формат ответа от логирования
то есть мне нужна текущая дата и строчка с ошибкой или ответом.
и есть такой в логировании API
Пытался как то решить проблему сам но я не понял вообще причину этой ошибки, должно быть четное количество параметров key-value?)