Fernwick tails files and journald, batches lines, and ships them to HTTP endpoints, Loki, or any S3-compatible bucket. One static binary, one TOML file, no agent fleet to babysit.
Get started v0.9.4 release notes$ fernwick --config /etc/fernwick/fernwick.toml
level=info msg="loaded config" sources=3 sinks=1
level=info msg="tailing" path=/var/log/nginx/access.log offset=184213
level=info msg="flushed batch" sink=loki lines=512 bytes=88.1KiB took=41ms
Read offsets are checkpointed to a tiny state file, so a restart picks up exactly where it left off. Rotated files are followed by inode.
When a sink is slow, Fernwick spills batches to a bounded on-disk buffer instead of dropping lines or eating all your RAM.
Typically under 15 MB RSS and a fraction of a core while shipping a few thousand lines per second.