ソリューションを実装する前に、要件を慎重に検討する必要があると思います。選択したソリューションがオープン ソースで「無料」であっても、それを機能させるために多くの時間を投資し、アプリケーションや環境が変化しても機能し続けるために時間を投資し続けることになります。
今、いくつかの重要なサービスが稼働しているかどうかを知るという、一見単純に見える要件を述べました。しかし、ランニングとはどういう意味ですか?実行中とは、停止またはクラッシュしていないことを意味しますか? それとも、実行中ということは、通常の量のデータがサービスに出入りしていることを意味しますか? それは、市販のツールや無料のツールでは確認できないことです。
さらに一歩進んでください。実行中とは、サービスが適切に実行されていることを意味しますか? 使用したいパフォーマンスの定義は何ですか? サービスが通常の量のリソースを使用していること (測定が容易)、またはサービスに流れ込むトランザクションが許容可能な応答時間で処理されていること (これも、商品または無料ツールの範囲を超えています)。
肝心なのは、すべてのものと同じように、あなたが支払うものを手に入れるということです。それが機能しており、トランザクションの応答時間を含めて機能していることを本当に知りたい場合は、商用グレードの APM ツールが必要になります。それらは 2 つのカテゴリに分類されます。
1) アプリケーション コンテナー内からアプリケーションを監視するもの (New Relic、AppDynamics など)
2) オペレーティング システム内からアプリケーションを監視するもの (AppEnsure、BlueStripe、Correlsense など)
アプリケーションがオンプレミスで実行されていて、スイッチにアプライアンスを接続できる場合、ExtraHop などのベンダーが提供するネットワークのディープ パケット インスペクションを使用する 3 つ目のオプションがあります。