Files
kumomta/Cargo.toml
T
Wez Furlong d3a5626180 Add log tailer utility
This commit adjusts the logger:

* When a log segment is finised, the `w` permission bits are removed.
  This is used to signal to the tailer that there will be no additional
  data written to that file.

* On startup, kumod will remove the `w` bits from all files in the
  configured log directories so that any that were left on by a prior
  incarnation will be considered closed when the new generation is
  started up.

* Add a `tailer` utility that will essentially `cat` all of the log
  files in a given directory in the appropriate order, then go into
  log tailing mode, where it will wait for new data to show up.

* When reading data, if it hits EOF, the tailer will wait around until
  more data shows up, or until the `w` bit is removed from the file
  that it is reading.

The idea is that, in a later commit, the tailer will be able to persist
a checkpoint file to record where it got to, and be able to dispatch
chunks of data to eg: a webhook push utility, advancing the checkpoint
only when the utility indicates success.

For now, running `cargo run -p tailer -- --tail /var/tmp/kumo-logs` is
a convenient way to tail the logs as they are written.
2023-03-30 14:01:46 -07:00

22 lines
403 B
TOML

[workspace]
members = [
"crates/bounce-classify",
"crates/cidr-map",
"crates/domain-map",
"crates/integration-tests",
"crates/kumod",
"crates/rfc5321",
"crates/spool",
"crates/tailer",
"crates/timeq",
"crates/throttle",
"crates/traffic-gen",
"crates/version-info",
]
resolver = "2"
[profile.release]
opt-level = 3
debug = 1 # include line tables for more meaningful backtraces