簡體   English   中英

監控.NET中運行的應用程序?

[英]Monitor running apps in .NET?

我們有幾個在Windows 2003/2008服務器上運行的應用程序。 其中一些應用程序是使用app.cmd文件通過Scheduled Task啟動的Java JAR文件。

其他人是SQL Server和IIS等“大牌”。

我想編寫一個應用程序(或實際上是服務)來監視這些程序並查看它們是否正在運行。

這比我以前做的有點遠。 哦,這需要用C#編寫。

我正在考慮某種類型的“心跳”模式,以便每隔幾分鍾,我檢查線程是否正在運行(再次,新的高級線程),如果是這樣,發出“All's OK”消息(使用SMTP或其他東西) 。

任何提示從哪里開始?

謝謝你的任何建議。

您可以使用Process.GetProcesses()

使用此方法可以創建一個新的Process組件數組,並將它們與本地計算機上的所有進程資源相關聯。

您應該根據具體情況處理每個應用程序,雖然您可以檢查SQL Server進程是否存在,但最好還是運行查詢(例如)檢查給定的存在性服務器中的數據庫。

類似地,您可以針對IIS服務器運行簡單的HTTP請求以檢查以確保正確設置權限等...

顯然,測試Java進程的方式取決於它們的工作方式,盡管您仍然可以檢查進程是否正在運行(請注意,如果它們作為服務運行,它們可能正在其中一個svchost中運行.exe進程 - 雖然這不適用於計划任務)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM