Comments (7)
The rolling file appender is turned off by default - you can turn it on with a Cargo feature:
[dependencies]
log4rs = { version = "0.5", features = ["rolling_file_appender", "compound_policy", "size_trigger", "fixed_window_roller"] }
You can also just use the all_components
feature to avoid having to deal with turning on everything individually, though that'll add a couple of megabytes to the binary size.
from log4rs.
Ah I see - thanks, that fixed it.
from log4rs.
@sfackler Would you expect the following config to do rolling up correctly? The first log file comes up, but once it reaches configured trigger limit the file doesn't grow but there are no file rotations. Have I missed something?
# Scan this file for changes every 30 seconds
refresh_rate: 30 seconds
appenders:
journey-service:
kind: rolling_file
path: "logs/journey-service.log"
policy:
# Identifies which policy is to be used. If no kind is specified, it will
# default to "compound".
kind: compound
# The remainder of the configuration is passed along to the policy's
# deserializer, and will vary based on the kind of policy.
trigger:
kind: size
limit: 1mb
roller:
kind: fixed_window
base: 1
count: 5
pattern: "logs/journey-service.{}.log"
# Set the default logging level to "warn" and attach the "stdout" appender to the root
root:
level: info
appenders:
- journey-service
from log4rs.
That seems like it should work. What OS are you on?
from log4rs.
On Linux (Fedora 22/CentOS 7), think daemonizing the process has some weird effect. I think the working directory gets changed after daemonizing.
Is there any documentation to explain what types are supported and what any of those kind, base, counts etc. mean please?
from log4rs.
Docs for configuration are attached to the Deserializer
types e.g.: https://docs.rs/log4rs/0.6.1/log4rs/append/rolling_file/struct.RollingFileAppenderDeserializer.html
Ah yeah, I could see daemonization causing issues there. You may want to set the paths to be absolute. The loggers should print errors to stderror if things like rotation fail - you could check there to see what they say.
from log4rs.
The set of kinds is here: https://github.com/sfackler/log4rs/blob/master/src/file.rs#L205
from log4rs.
Related Issues (20)
- Publish on crates.io HOT 2
- Do you use any optimisations to log in file?
- README out of date with the 1.0 version HOT 2
- Clippy fails with log4rs HOT 2
- Resolve Deprecated Chrono API
- Refactor COLOR_MODE to OnceCell
- Increase test coverage across all modules HOT 1
- TimeTriggerConfig pub HOT 2
- Logging pattern does not depict logs as I declared it HOT 3
- How to config with tokio_tracing HOT 1
- bug: Cannot compile on Apple Silicon (arm64) - symbol not found for architecture arm64 HOT 2
- Timestamps assume UTC timezone in docker containers, ignoring TZ variable HOT 1
- Codecov action out of date HOT 1
- Integrate Syslog Appender HOT 3
- Make `RawConfig` serializeable HOT 11
- compile failed on mac HOT 3
- How to set up rolling by day HOT 1
- Questions about log rolling_file HOT 3
- Logger stops logging after some time
- File/Rolling File appender doesn't guard against symlink attacks
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 log4rs.