Changing the log format of ATS, for instance by modifying profile::trafficserver::tls::log_formats triggers a trafficserver reload to apply the changes. When this happens, check_trafficserver_log_fifo thinks that ATS stopped writing to the pipe due to a change in lsof output, although writing and reading still keeps on happening without problems.
Valid output example:
root@cp3050:~# lsof -E -u trafficserver -c fifo-log-demux -a /srv/trafficserver/tls/var/log/tls.pipe COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME fifo-log- 27095 trafficserver 5r FIFO 9,0 0t0 3539000 /srv/trafficserver/tls/var/log/tls.pipe 27111,[TS_MAIN],164w
Output causing false positives, notice that the very last field includes a *:
root@cp3050:~# lsof -E -u trafficserver -c fifo-log-demux -a /srv/trafficserver/tls/var/log/analytics.pipe COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME fifo-log- 27096 trafficserver 5r FIFO 9,0 0t0 3539001 /srv/trafficserver/tls/var/log/analytics.pipe 27111,[TS_MAIN],*524w
We should find a more robust way to verify that named pipe logging works as expected.