Comments (1)
Interesting issue!
I wonder - if that's about doing sync() rarely or sth like that? Is there a way to let's say… tell fern to sync to disk manually somehow? Any ideas what can cause kqueue events not be sent from files written by fern logger? :)
As it happens, yeah - I don't think fern will ever trigger sync manually right now. I think adding configuration for this could definitely be a good idea - flushing / syncing every x logs or x bytes could help ensure lack of data loss.
I'd thought you could trigger this manually with log::logger().flush()
, but I think even that might not actually do it? Fern implements flushing for files by calling std::io::Write::flush
, which appears to be implemented separately from File::fsync
- and on Unix systems, at least, is a no-op. Flushing will ensure we write all data from our internal buffer to the file, so it isn't totally useless, but it doesn't fsync. Fixing this so flush performs an fsync, or at least something can trigger an fsync, seems like a good idea.
from fern.
Related Issues (20)
- switch from chrono to time HOT 2
- Different formats for differen logging targets? HOT 1
- Possible to chain more files after already intializing a logger?
- Top-level documentation suggests using 0.5 instead of 0.6 HOT 1
- Add new Linux CI HOT 1
- WithFgColor doesn't match colored::Colorize's behavior
- `level_for_module` level-filtering for modules, not targets HOT 3
- Doc type: "equivalent form another crate"
- is there anyway to disable all crates log and only show log of my program? HOT 2
- Connection forcibly closed using `TcpStream` as `Box<dyn Write + Send>` HOT 2
- Getting rid of `atty` as a transitive dependency (via `colored`) HOT 25
- `SharedDispatch` type is not accessible HOT 2
- Missing list of dependancies in example HOT 2
- Syslog only logs in UTC HOT 2
- Reading from Box not possible since fern::Output::writer consumes it? HOT 2
- DateBased struct not accessible
- double free or corruption (out) HOT 1
- Feature Request: Log string configuration
- Implement log::kv Handling
- Specific log level for some module HOT 1
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 fern.