[agent/codex:gpt-5.4-mini] Read ~/spec/code/core/go/log/RFC.md fully. Find ONE feature ... #18
2 changed files with 20 additions and 3 deletions
|
|
@ -408,7 +408,7 @@ func LogError(err error, op, msg string) error {
|
|||
return nil
|
||||
}
|
||||
wrapped := Wrap(err, op, msg)
|
||||
Default().Error(msg, "op", op, "err", wrapped)
|
||||
Default().Error(msg, "op", op, "err", err)
|
||||
return wrapped
|
||||
}
|
||||
|
||||
|
|
@ -423,7 +423,7 @@ func LogWarn(err error, op, msg string) error {
|
|||
return nil
|
||||
}
|
||||
wrapped := Wrap(err, op, msg)
|
||||
Default().Warn(msg, "op", op, "err", wrapped)
|
||||
Default().Warn(msg, "op", op, "err", err)
|
||||
return wrapped
|
||||
}
|
||||
|
||||
|
|
@ -436,7 +436,7 @@ func LogWarn(err error, op, msg string) error {
|
|||
func Must(err error, op, msg string) {
|
||||
if err != nil {
|
||||
wrapped := Wrap(err, op, msg)
|
||||
Default().Error(msg, "op", op, "err", wrapped)
|
||||
Default().Error(msg, "op", op, "err", err)
|
||||
panic(wrapped)
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -390,6 +390,23 @@ func TestLogError_Good(t *testing.T) {
|
|||
assert.Contains(t, output, "op=\"db.Connect\"")
|
||||
}
|
||||
|
||||
func TestLogError_Good_LogsOriginalErrorContext(t *testing.T) {
|
||||
var buf bytes.Buffer
|
||||
logger := New(Options{Level: LevelDebug, Output: &buf})
|
||||
SetDefault(logger)
|
||||
defer SetDefault(New(Options{Level: LevelInfo}))
|
||||
|
||||
underlying := E("db.Query", "query failed", errors.New("timeout"))
|
||||
err := LogError(underlying, "db.Connect", "database unavailable")
|
||||
|
||||
assert.NotNil(t, err)
|
||||
|
||||
output := buf.String()
|
||||
assert.Contains(t, output, "op=\"db.Connect\"")
|
||||
assert.Contains(t, output, "stack=\"db.Query\"")
|
||||
assert.NotContains(t, output, "stack=\"db.Connect -> db.Query\"")
|
||||
}
|
||||
|
||||
func TestLogError_Good_NilError(t *testing.T) {
|
||||
var buf bytes.Buffer
|
||||
logger := New(Options{Level: LevelDebug, Output: &buf})
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue