IIS應用地址池監控


目的:公司服務器IIS有十幾個應用地址池,總在不經意間停掉一個,停止線系統日志里會有一大堆警告日志,然后就停掉了,分析了好幾次,網上有人說是某一個網站的問題應該查網站,

但是網站又有那么多地址,誰知道從哪個請求開始就把應用地址池給弄掛掉了啊,白天還好隨時有人看着服務器在,晚上停了就麻煩了,所有有了需求,自動監控應用地址池。

其實方法很簡單,就是定時對應用地址池遍歷一遍,檢查是否有未啟動的應用地址池,有的話就執行啟動命令。

 1 /// <summary>
 2         /// IIS應用地址池監控方法
 3         /// </summary>
 4         private void IISAppPools()
 5         {
 6             try
 7             {
 8                 string entPath = "IIS://LOCALHOST/W3SVC/AppPools";
 9                 while (true)
10                 {
11                     DirectoryEntry rootEntry = new DirectoryEntry(entPath);
12                     foreach (DirectoryEntry AppPool in rootEntry.Children)
13                     {
14                         if (AppPool.Properties["AppPoolState"].Value.ToString() != "2")
15                         {
16                             LogHelper.Wirte("監控到" + AppPool.Name + "應用地址池停止.");
17                             AppPool.Invoke("Start", null);
18                             AppPool.CommitChanges();
19                             LogHelper.Wirte(AppPool.Name + "應用地址池已成功啟動.");
20                         }
21                         AppPool.Close();
22                     }
23                     Thread.Sleep(600000);
24                 }
25             }
26             catch (Exception ex)
27             {
28                 LogHelper.Wirte(ex.ToString());
29             }
30         }

這一個方法就搞定了,10分鍾監控一次,不占任何系統資源。

但是我們怎么去取的IIS中應用地址池的集合喃,其實就是一個特殊的地址,IIS中的任何配置都是可以得到的 

推薦一個可視化工具

使用IIS資源管理工具 下載地址:http://download.csdn.net/detail/cake_green/6756847 這個要分的哈 大家也可以百度

對應地址就是 IIS://LOCALHOST/W3SVC/AppPools  LOCALHOST也可以是IP地址或服務器名稱

最后以服務的形式安裝到服務器,一直啟動就OK了 

寫這個博客的目的主要是記錄IIS的操作功能 有了IIS的配置地址可以對IIS做任何程序操作,根據自己的業務來定了 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM