Hi, this is a suggestion to change a config example in README.
Summary
persistent true setting could cause unexpected high IO utilization when systemd-journal already stores much logs. So I think persistent false would be better in example.
Details
I observed that IO utilization continually indicated 90~100% after starting fluentd with fluent-plugin-systemd on a server which had a few GB logs in systemd-journal. Using systemtap I observed a massive number of reads and writes to the position file. After applying persistent false, high IO utilization disappeared.
In my understanding, with persistent mode (persistent true), PosWriter writes a journal position(cursor) to the position file via LocalStorage after every reading an entry from journald. This could be likely to cause the issue I faced. Without persistent mode, a journal position is only stored in memory, but it's periodically flushed to the position file per about 1 sec. So 'persistent false' would be safe to most users as default.
Of cause, I think this problem doesn't happen if journald has not much logs or using read_from_head false.
Hi, this is a suggestion to change a config example in README.
Summary
persistent true
setting could cause unexpected high IO utilization when systemd-journal already stores much logs. So I thinkpersistent false
would be better in example.Details
I observed that IO utilization continually indicated 90~100% after starting fluentd with fluent-plugin-systemd on a server which had a few GB logs in systemd-journal. Using systemtap I observed a massive number of reads and writes to the position file. After applying
persistent false
, high IO utilization disappeared.In my understanding, with persistent mode (
persistent true
), PosWriter writes a journal position(cursor) to the position file via LocalStorage after every reading an entry from journald. This could be likely to cause the issue I faced. Without persistent mode, a journal position is only stored in memory, but it's periodically flushed to the position file per about 1 sec. So 'persistent false' would be safe to most users as default.Of cause, I think this problem doesn't happen if journald has not much logs or using
read_from_head false
.library versions
My configuration of fluent-plugin-systemd
output of systemtap using iotime.stp
Thanks.