refactor(logging): quiet default observability in jido#245
refactor(logging): quiet default observability in jido#245nshkrdotcom wants to merge 4 commits intoagentjido:mainfrom
Conversation
|
Companion upstream PRs are now open for the library-side portions of this logging cleanup:
Both reference #244 and this Jido PR for the broader ecosystem context. A note on interdependencies: the Jido work in this branch was validated locally against those The net effect is:
Tagging @mikehostetler for visibility. |
|
@mikehostetler Compatibility follow-up pushed on this branch. This restores the historical top-level logging defaults while keeping the boundary cleanup from this PR. What changed:
How to opt in to the quieter runtime behavior introduced by this refactor:
Why this follow-up was needed:
Stack note:
|
ccarvalho-eng
left a comment
There was a problem hiding this comment.
This is a good step. Moving away from eager interpolation in debug logs is exactly the right habit for a library, and safe_inspect as a centralized policy makes sense.
One thing worth being explicit about: Jido.Log in core solves the problem for this repo, but it does not solve it for the ecosystem. The value here is the convention, not the module. Other jido_* repos should copy the shape, not take a dependency on core just to share a logger wrapper — that would be the wrong coupling. Make sure that is clear in the team so this doesn't quietly become an undocumented public API.
The duplicate error messages in cron_cancel.ex are a small but real issue — two different failure paths, same string. That will cost someone an hour at 3am.
mikehostetler
left a comment
There was a problem hiding this comment.
Requesting changes on the logging rollout shape.
I’m aligned with the goals here: quieter defaults, safer handling of inspect-hostile values, and lazy evaluation where it actually matters. I’m not aligned with introducing a repo-local logging facade like Jido.Log.
The ADR direction I want us to follow is: use base Logger directly, not a helper API layer. Please rework this PR back to direct Logger usage and keep any sanitizer / safe-inspect / redaction logic local to the observability boundary that actually owns it.
In other words: keep the behavior improvements, but remove the helper module and the abstraction spread that comes with it.
|
Yes, it's a smell to copy paste such a facade. My bad. I was hesitant to suggest an alternative: A shared For now, I'll redo all four PR's per the spec. @mikehostetler May I ask where is an ADR for logging? |
|
Superseded by #249 from . Closing this original logging PR without merge so review can continue on the direct-Logger replacement branch requested by Mike. |
Summary
jidoContext
Refs #244
Testing