ただインストールしました。ハエージェント私のテストサーバーから。
システムログの代わりにローカルファイルにログを書き込む方法はありますか?
これは単なるテストのため、ポートを開いたり、すべてのテストデータでシステムログを複雑にしたくありません。
残念ながら、私が見つけることができる唯一の情報は、syslogサーバーへのログ記録に関するものです。
私は以下を使用しようとしています:
log /home/user/ha.log local0
私の構成では。しかし、これは私に言います:
[ALERT] 039/095022 (9528) : sendto logger #1 failed: No such file or directory (errno=2)
再起動するとき。それでファイルを作成しtouch /home/user/ha.log
て再起動しましたが、その時点で次のような結果が得られました。
[ALERT] 039/095055 (9593) : sendto logger #1 failed: Connection refused (errno=111)
これは可能ですか、それとも私のテストデータを見るためにsyslogなどを設定する必要がありますか?
ベストアンサー1
Haproxyはファイルロギングをまったくサポートしていません。文書に記載されているように(https://cbonte.github.io/haproxy-dconv/1.8/configuration.html#3.1-log)、 "log"ステートメントはアドレスを最初のパラメータとして使用します。ファイルの場合はUnixソケットで、HAProxyはsyslog形式でそのソケットと通信します。 Haproxy は、ファイル書き込みではなく要求プロキシを担当し、ログファイルの書き込みを syslog に委任するため、このように設計されています。コンピュータを台無しにしたくない場合は、logstashをインストールして次のコマンドを実行し、haproxy.cfgに次のものを
logstash -e 'input { unix { path => "/tmp/haprxoy_log.sock" } } output { stdout { } }'
追加してテストできます。
log /tmp/haprxoy_log.sock