2

IIS (6 または 7.0) アプリケーション プールがいつ起動するか (または実際にシャットダウンするか)、または IIS マネージャーを介して手動でリサイクルされたことを検出する方法はありますか?

アプリケーション初期化モジュールにより、II7.5 では必要ありません。

しかし、アプリケーション プールがシャットダウンしたかどうかを知る必要があるので、再起動できます。起動時に、そのプールの Web アプリケーションでウォームアップを行います。

スケジューラを使用してサーバー ログでイベントを監視できるかどうか疑問に思っていましたが、アプリ プールを手動でシャットダウンすると、ログ エントリが見つかりません。

アプリ プールが壊滅的に失敗し、ログに記録されない場合があることを認識しています。

ありがとう

4

1 に答える 1

1

IIS 7 では、 Microsoft.Web.Administration dllを使用できます。プログラムでプールの状態を確認、作成できます。ApplicationPool.State は、アプリ プールの状態を示します。

これは、iis.net がプールを追加する例です。

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Web.Administration;
namespace MSWebAdmin_Application
{       
    class Program
    {
        static void Main(string[] args)
        {
            ServerManager serverManager = new ServerManager();
            Site site = serverManager.Sites["Racing Cars Site"];
            site.Name = "Racing Site";
            site.Applications[0].VirtualDirectories[0].PhysicalPath = "d:\\racing";
            serverManager.ApplicationPools.Add("RacingApplicationPool");
            serverManager.Sites["Racing Site"].Applications[0].ApplicationPoolName = "RacingApplicationPool";
            ApplicationPool apppool = serverManager.ApplicationPools["RacingApplicationPool"];
            apppool.ManagedPipelineMode = ManagedPipelineMode.ISAPI;
            serverManager.CommitChanges();
    apppool.Recycle();
        }
    }
} 

http://www.iis.net/learn/manage/scripting/how-to-use-microsoftwebadministration

IIS 6の場合C# を使用してアプリケーション プール (IIS 6) の状態を確認する

于 2013-10-10T20:29:32.173 に答える