このチュートリアルに従ったところ、セットアップはうまくいきました。次に、この公式ドキュメントから ES 用のウォッチャー プラグインをインストールして、エラーのアラートと電子メールを取得しましたが、リンクに示されている次のコマンドを使用してインストールを確認できませんでした。
curl -XGET ' http://localhost:9200/_watcher/stats?pretty '
次に、kibana ダッシュボードを再度確認したところ、nginx で 502 - ゲートウェイが正しくないというエラーが表示されました。構成ファイルを再度確認しましたが、nginx 側ではすべて問題ありませんでした (私は nginx に詳しくないので、これは部分的に仮定でした)。5 つのサービス (logstash、Kibana、ES、logstash-server の nginx、およびクライアント側の logstash-forwarder) はすべて稼働していました。
さらに調査したところ、次のコマンドを使用して見つけました。
tail -f /var/log/logstash-forwarder/logstash-forwarder.err
次のようなエラーがあること。
XXXX read tcp XXXX:5000 で TLS ハンドシェイクに失敗しました: i/o タイムアウト
[XXXX] に接続中:5000 (example.com)
私が試したこと:
LF マシンから LS サーバー マシンに telnet を試みたところ、できました。LF GitHub リポジトリでこの問題を確認したところ、プラグインのインストールに問題があるようで、logstash サーバー側の server.rb ファイルに次の変更を加えることで結論が得られました。
def data(sequence, map, &block)
puts sequence
puts map
block.call(map)
#if (sequence - @last_ack) >= @window_size
@fd.syswrite(["1A", sequence].pack("A*N"))
@last_ack = sequence
#end
end
だからここに私の質問があります:
- 問題は実際にプラグインのインストールが原因で発生したのでしょうか (GitHub の問題に関する意見の 1 つがそう言っています)。
- server.rb ファイルが見つかりません。正確にはどこにありますか?
- 問題はチュートリアルの nginx セットアップと関係がありますか?
- ES 用のより良いアラート プラグイン/パッケージはありますか?
これらのいずれかに関するヘルプをいただければ幸いです。
更新: ウォッチャー プラグインをアンインストールすると、すべてがスムーズに動作するようになりました。
したがって、問題は確かにプラグインにあり (回避策はまだ考えていません)、nginx や ssl にはないと思います。