Comments (8)
Addressed with 858830a
from timbre.
Hi Andrew, could you give me some idea of how you'd like to see this implemented (or the kind of API you'd like to see)?
Am juggling quite a few things right now, so the more info you can give me the more likely I'll be able to help out.
Cheers! :-)
from timbre.
So. I don't have any interesting ideas about context. Just naive with-context
macro with binding
inside. It sucks with async code, but in modern world we have core.async with bindings support (as i know).
from timbre.
Closing for now. Between the log-config support and the relative ease of using custom dynamic bindings without Timbre's assistance, I think we're probably okay here? Feel free to reopen if you disagree. Cheers! :-)
from timbre.
Given that it looks like some of log-config's features are now in timbre itself, would it make sense to have this in timbre now?
Where with-context
(or some alternative) merges the map arg with the existing parent value?
from timbre.
@eoliphan Hi Erich, with-context
was added back in 2015: https://github.com/ptaoussanis/timbre/releases/tag/v4.0.0 :-)
from timbre.
Hey yeah, that's what I was referring to :). As it stands, I guess with-context
is more like an NDC? The current value is the innermost context. I was looking at more MDC like behavior where the current context is the sum/union of all parents. For example:
(log/with-context
{:outer :context}
(log/info "outer")
(log/with-context
{:inner :context}
(log/info "inner")))
; outputs
{... "context":{"outer":"context"} ...}
{... "context":{"inner":"context"} ...}
You'd want the map with both the :inner and :outer keys in the second one.
So basically a variant where the binding
statement sets *context*
to (merge *context* ~new-context)
from timbre.
@eoliphan Hi Erich, in that case I think you're probably looking for #262.
There's been a couple requests for that now, so I'll re-open it.
from timbre.
Related Issues (20)
- cljs: JS objects are printed uselessly HOT 2
- Update io.aviso/pretty to 1.2 HOT 1
- Support for `nbb` HOT 2
- Community appenders no longer included in 6.0.0 HOT 2
- 6.0.1. breaks in GraalVM native-image HOT 11
- Add test/s re: GraalVM compatibility HOT 1
- Why are my Timbre timezones different than the system ones? HOT 3
- [shadow-cljs] Invalid :refer, var taoensso.encore/have does not exist HOT 26
- IllegalAccessException when logging internal JDK exception (SunCertPathBuilderException) via `log/error` HOT 13
- shadow-cljs: Advanced build bloated since 6.0.3 HOT 6
- Exception thrown when log arguments have same name, but different separators HOT 2
- Timbre crashing Cider workflow (?) HOT 9
- Using TAOENSSO_TIMBRE_CONFIG_EDN environment variable leads to an execption HOT 4
- Need some help/advice: No debug or info level logging, and duplicated message content HOT 10
- Add console appender opt to control `:raw-console?` HOT 1
- Link to Portal Timbre guide HOT 1
- Latest release uses older com.taoensso/encore; order-dependent if used with e.g. Tufte HOT 2
- API docs link from README results in 404 HOT 3
- Graal optimizations may break uberjar running HOT 6
- Seeing a lot of deprecation warnings in our log HOT 13
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from timbre.