Taylan (GNU+Feminism Cat) on Nostr: After all this time, I still loathe journald / journalctl. This is literally the ...
After all this time, I still loathe journald / journalctl. This is literally the worst aspect of systemd ever. For 99.9% of use-cases there was absolutely never any justification for ditching plaintext log files in /var/log.
And even if an application really needs something more sophisticated than that, including line breaks or binary data in logs, it could just use some well-known plaintext-based serialization format. For example, it could simply log each log line as a JSON string, so line breaks are escaped as \n and you can't "forge" fake log lines with a line break. Or if it really wants more structured data, it could log each line as a JSON array, or object. That way you could STILL just open it with less(1) and use grep(1) and whatnot. Heck, there's jq(1) these days to parse JSON from the CLI.
I loathe journald.
Published at
2026-06-16 02:26:00 UTCEvent JSON
{
"id": "77b7b5d7cbf219ac7c3881ac586f77ae22ea6566b323ced14cbd70bc10903d03",
"pubkey": "e0b10dfa957ffe13755bb47b2b60471e95045e566641264c0a36096ba7864996",
"created_at": 1781576760,
"kind": 1,
"tags": [
[
"proxy",
"https://fedi.feministwiki.org/objects/c0ca4184-9eb1-4844-b487-d024d064ee8f",
"activitypub"
],
[
"client",
"Mostr",
"31990:6be38f8c63df7dbf84db7ec4a6e6fbbd8d19dca3b980efad18585c46f04b26f9:mostr",
"wss://relay.ditto.pub"
]
],
"content": "After all this time, I still loathe journald / journalctl. This is literally the worst aspect of systemd ever. For 99.9% of use-cases there was absolutely never any justification for ditching plaintext log files in /var/log.\n\nAnd even if an application really needs something more sophisticated than that, including line breaks or binary data in logs, it could just use some well-known plaintext-based serialization format. For example, it could simply log each log line as a JSON string, so line breaks are escaped as \\n and you can't \"forge\" fake log lines with a line break. Or if it really wants more structured data, it could log each line as a JSON array, or object. That way you could STILL just open it with less(1) and use grep(1) and whatnot. Heck, there's jq(1) these days to parse JSON from the CLI.\n\nI loathe journald.",
"sig": "ea7ff956c1a611eef95e9f8f0e73205038b78460eb6aa850b9c90577611f243f03199fd0531ce70fd005596aa360e07107946bf72b2eaf9a5d1c5d7703070865"
}