クラウドでホストされているアプリケーションの監視およびアラートツールを探しています。私のアプリケーションは複数のサーバーでホストされており、これらすべてのサーバーを監視したいと思います。私は以下を監視することに興味があります:
1.サービスの監視:
- サービスが稼働しているかどうかを確認します。これには
- 新しいユーザーを設定してみてください
- 指定されたユーザー名/パスワードでアプリケーションにログインし、検索などの特定の手順を実行します。
- QoSの監視。検索やその他の操作にかかる時間
2.リソースの監視 各サーバーで次のパラメータを監視します。
- CPU使用率
- 負荷平均
- メモリ使用量
- ディスクの使用状況
- IOPS
3.プロセスの監視
一連のプロセスが実行されているかどうかを監視します。実行されていない場合は、再起動してみてください。例:php-fpm、私のアプリケーションバイナリ、mysql、nginx、smtpなど。
4.ログファイルの監視
- アプリケーションのエラーログ
- mysqlエラーログ
- MySQLの遅いクエリログなど。
また、シェルコマンドを実行したり、独自のシェルスクリプトを記述したりすることで、その使用法を拡張できるはずです。
監視対象のアイテムに問題がある場合は、アラートを設定できるはずです。アラートを受け取ることができるはずです
- Eメール
- モバイルSMS
監視システムは、必要な期間の履歴を維持する必要があります。アラートを受信した後、システムにログインして過去のデータ(たとえば、過去2週間)を表示し、問題を調査できるようにする必要があります。
最も重要な:
ツールには、独自の構成を管理するための非常に優れた方法が必要です。
- 構成が複数の場所に散在してはなりません。すべての構成は一元化された場所に保存する必要があります。将来的には、監視対象のログファイルのパスが変更されました。構成内で出現するすべてのファイルを検索して置き換えたいと思います。
- 構成をバージョン管理できるはずです。
- Webインターフェイスにアクセスして構成を手動で設定する代わりに、すべての構成を自動的にロードして監視を開始するスクリプトを設定したいと思います。
Zabbixを調べていますが、構成管理の満足のいく方法がわかりません。Nagiosを試してみるべきですか?他のツールはありますか?