Javaサーバーアプリケーションの自動シャットダウンを監視する方法は?

Javaサーバーアプリケーションの自動シャットダウンを監視する方法は?

Centos 7を実行しているAWS EC2インスタンスでJava Springサーバーアプリケーションクラスタを実行しています。私たちはここにステータスモニタをインストールし、時々ビープ音が鳴り、Javaプロセスが静かに消えたことを発見しました。私たちのログとシステムログの両方に何も見つかりませんでした。私たちは、キャプチャした内容を記録する独自のコードの周りに外部の「キャッチスロー可能」を持っていますが、独自のスレッドが多いTomcatを実行します。消えた瞬間を捉えるためにロギングを追加しましたが、まだ情報は生成されていません。

私は次の質問を見たことがあります。LinuxでJavaプロセスが終了した理由を見つける方法。そこにどんな助けがあるのか​​わかりません。

現在、これらのプロセスの実行プログラムをソリューションに含めることはできません。これは長い話だ。私を信じなさい。私たちはこの道をたどろうと努力してきました。

どんな提案がありますか? Javaサブプロセスのすべてのシグナルを注意深く監視して記録する外部親プロセスでJavaプロセスをラップする必要があるかどうか疑問に思います。まだ見つからない既製の解決策があるかどうか疑問に思います。どんなアイデアでも大いに感謝します。

ベストアンサー1

使った監視装置モニタリングサービスデフォルトでは、システムは独自のサービスとして実行され、名前付きプロセスの存在を監視できます。サービスを再起動するか、サービスが終了したときに警告を生成できます。また、失敗した再起動(および試行回数)を検出するロジックもあります。また、http接続を開いてサービスが開始されたことを確認するなどの操作を実行することもできます。

私はこれがmonitCentOS7用のEPEL7にあると思います。

おすすめ記事