3

複数のホストから複数のログ ファイルをマージしようとしています。socat -u EXEC:'follow_log_cmd' UNIX-SENDTO:/tmp/socketフォローしたいログごとに実行しています。

私がやっているログ収集マシンでsocat -u UNIX-RECV:/tmp/socket -

私の問題は、socat が一度に 1 行ずつ書き込むのではなく、一度に 1 行ずつ書き込むため、ログ エントリが重複することがあるということです。

一度に1行ずつ書き込む方法はありますか?

4

1 に答える 1

3

擬似端末を使用して socat の書き込み行をバッファリングしてみてください:

- socat -u EXEC:'follow_log_cmd' UNIX-SENDTO:/tmp/socket
+ socat -u EXEC:'follow_log_cmd',pty,ctty UNIX-SENDTO:/tmp/socket

参照: https://stackoverflow.com/questions/1000674/turn-off-buffering-in-pipe

于 2011-06-14T15:37:33.640 に答える