Comments (8)
@ronshapiro I will see what I can do about cloning the Log4J backend and switching it to SLF4J, which might not be as clean as backends for the actual logging frameworks, but is what we need internally at the moment. If I end up with something serviceable, I'll happily open a PR.
As for the language, I believe there is a misunderstanding - I was baffled at the lack of backends the library supported, not at the support given by you contributors. I am sorry, I did not mean to offend.
from flogger.
In support of Gaibhne, he is not the only one confused by the promise of such a good api with such "obvious missing" backend. This is google's logging framework and it uses JUL? There must be something more to this picture. Unless you're already using the java 9 logging module, in which case I need to go study that immediately...:)
from flogger.
We now also have an SLF4J backend.
I think we should close this in favor of having specific issues for individual requests backends. Those are much easier to search for and manage.
from flogger.
@Gaibhne Yeah, I'm a bit puzzled too that a backend for log4j was introduced so apparently quickly and easily, but I do understand that interest in backends for log4j 2 and logback have already been raised in issues #24 and #25.
I do also understand, though, that documentation on how to use Flogger is rather lacking. I vaguely recall that JUL (java.util.logging
) is also implemented as a backend for Flogger, but I can't remember now why I think that, and neither do I actually know how to use JUL as a backend.
@ronshapiro Is there any documentation yet on how to use Flogger with JUL? Also, is there anything that we can do to help with getting Flogger to support log4j2 and Logback? :)
from flogger.
@Gaibhne - we almost exclusively use JUL internally, so we haven't built other backends yet. The backends you see are ones that others have implemented. We don't have plans to actively create backends, but we're happy to help review PRs and include them in the project if someone wants to write one.
Btw, when you contribute to a project, whether new or old, saying that you are "baffled" at the level of support is probably a good recipe for rubbing project maintainers the wrong way. I'll take it that it wasn't intentional, but it's worth using nicer language in the future.
@jbduncan JUL is the default. There's no configuration necessary.
from flogger.
@jbduncan JUL is the default. There's no configuration necessary.
Oh cool, thanks for the clarification @ronshapiro! 👍
from flogger.
We don't have plans to actively create backends, but we're happy to help review PRs and include them in the project if someone wants to write one.
SGTM. :)
from flogger.
No, it really is as simple as "Google's logging uses JUL" so there's been no incentive internally to add more backends. The Gerrit team added the Log4J backend in about a week, they are very simple to write.
We looked at the Java 9 logging module but didn't think that was suitable for debug logging (it seems more a driver level thing by the looks of how it's configured).
from flogger.
Related Issues (20)
- Benchmarks and String Creation HOT 19
- Architecture diagram for flogger
- Extensibility How to HOT 9
- Better document Flogger's status (active, maintained, in use at Google) HOT 5
- Support for java.util.ResourceBundle HOT 9
- Add tags from thread context to log HOT 17
- Use java.time.Duration for atMostEvery in LoggingApi. HOT 2
- Flag --incompatible_disable_starlark_host_transitions will break Flogger in Bazel 7.0 HOT 6
- Release schedule?
- Default JavaDocs generated for Flogger confusingly suggest it's deprecated (it isn't). HOT 2
- How to handle ScopedLoggingContext for new Threads / ThreadPools? HOT 1
- Provide a log writer to produce JSON log items according to Elastic Common Schema HOT 8
- I don't believe ScopedLoggingContexts should obviously accept null "no-op" arguments. HOT 5
- Incorrect caller details logged with Flogger in spring boot HOT 2
- Error: 'JavaInfo' value has no field or method 'transitive_deps' HOT 5
- Error: 'JavaInfo' value has no field or method 'transitive_deps' HOT 5
- Next release HOT 2
- ThreadlocalRandom instead of ThreadLocal HOT 8
- java failed error executing Javac command from target //api:checks HOT 5
- test
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 flogger.