「nohup」モニタリングのベストプラクティスやツールはありますか?


7

nohupAWS Lambdaからboto3を介して生成されるマスター内でAnsibleプレイブックを開始するために使用します。

このプレイブックは複数のワーカーを作成し、いくつかのタスクを実行させて終了させます。

そこで、信頼性の高い監視システムを設計/構築したいと思います。とりあえず、マスター内nohuptasks.logファイルにログを書き込み、Ansibleの再生が完了したら、それをストア(現時点ではS3)にプッシュしています。

しかし、私は同じことをするためのはるかにエレガントな(そして/または)より良い方法があるかどうか知りたいですか?また、その過程で私を助ける良いツールがあるかどうか?


ログをプッシュするELK / filebeatの周りの何かが興味深いオプションでしょうか?
Tensibai 2017年

@Tensibaiええ、ELKスタックも調査しています:)。しかし、現時点では、S3で十分です。
Dawny33

私はあなたが実際に何をしているのか理解するのが非常によくわかりません:p
Tensibai

それらについて何を知りたいですか?
Xiong Chiamiov 2017

nohup最近、ログファイルへのリダイレクトとバックグラウンドでの実行がシェルに組み込まれている場合は、ばかげているように見えます。
ヒヨコ

回答:


8

ベストプラクティスであるかどうかはわかりませんが、filebeatを使用してログをほぼリアルタイムで読み取り、ElasticSearchにプッシュすることをお勧めします。
AWSは、この部分からあなたを救うことができるElasticSearchサービスを提供します。

elasticsearchに直接filebeatを使用することの欠点は、イベントの時間がプロスペクターがそれらを読み取る時間になることと、ログにタイムスタンプがある場合、生成された順序とは異なる順序で(複数のワーカーから)「取り込む」ことができることです。

その間にLogstashを追加して、filebeatからlogstashに送信してからelasticsearchに送信できます。Logstashはログを解釈し、フィールドに分割して再検索できます。これは、ログ内の日付を解析して、イベントが正しいタイムスタンプで保存されるのと同じ方法で行えます。

logstashを直接使用してログを読み取ることもできますが、リソースにかなりの負荷がかかるため、ワーカーに影響を与えないようにログを分離しておくことにします。

x-packからライセンスを購入した場合、elasticsearchから直接メッセージにアラートを追加できます。

logstashを維持する負担から解放したい場合は、フルスタックを提供するlogmatic.ioなどのサービスがあります。ログをプッシュするだけで、大量の解析がストックから処理されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.