いくつかの ScheduledExecutorService を開始する ServletContextListener を備えた Web アプリがあり、Web アプリケーションを実行しているサーバーよりもリモートの場所で SNMP を介していくつかの relaisboards を更新します。
ただし、リモートの場所でインターネット接続が失われたために、リモートの relaisboards が使用できない場合があります。
これが発生すると、ボードを更新するスレッドの実行に時間がかかります。ScheduledExecutorService の実行と実行を監視するにはどうすればよいですか?
次に、次のコードを使用してスレッドを開始します。
schedulerLichtsturing = Executors.newSingleThreadScheduledExecutor();
schedulerLichtsturing.scheduleAtFixedRate(new LichtsturingDaemon(), 0, 15, TimeUnit.SECONDS);
ただし、しばらくするとスレッドが実行されなくなり、停止する理由がわかりません。キャッチされていない例外または他の何かが原因ですか? どうすればこれを監視できますか?
スレッドの実行状態と最終更新時刻も監視したいと思います。
これを修正するにはどうすればよいですか?