Export (0) Print
Expand All

ApplicationPoolFailure Class

IIS 7.0

Defines the actions to take when an application pool fails.

System..::..Object
  Microsoft.Web.Administration..::..ConfigurationElement
    Microsoft.Web.Administration..::..ApplicationPoolFailure

Namespace:  Microsoft.Web.Administration
Assembly:  Microsoft.Web.Administration (in Microsoft.Web.Administration.dll)

public sealed class ApplicationPoolFailure : ConfigurationElement

The ApplicationPoolFailure type exposes the following members.

  NameDescription
Public propertyAttributesGets a configuration attribute collection that contains the list of attributes for this element. (Inherited from ConfigurationElement.)
Public propertyAutoShutdownExeGets or sets the path of an executable to run when the service shuts down an application pool for rapid-fail protection.
Public propertyAutoShutdownParamsGets or sets command-line parameters for the executable that is specified by the AutoShutdownExe property.
Public propertyChildElementsGets all the child elements of the current element. (Inherited from ConfigurationElement.)
Public propertyElementTagNameGets the XML tag name of the current element. (Inherited from ConfigurationElement.)
Public propertyIsLocallyStoredGets a value indicating whether the configuration element is stored in a particular configuration file. (Inherited from ConfigurationElement.)
Public propertyItemGets or sets an attribute with the specified name. (Inherited from ConfigurationElement.)
Public propertyLoadBalancerCapabilitiesGets or sets the response behavior of a service when it is unavailable.
Public propertyMethodsGets a collection of methods for the configuration element. (Inherited from ConfigurationElement.)
Public propertyOrphanActionExeGets or sets the path of an executable to run when the service orphans a worker process.
Public propertyOrphanActionParamsGets or sets command-line parameters for the executable named by the OrphanActionExe property.
Public propertyOrphanWorkerProcessGets or sets a value indicating whether to put a worker process in an orphan state when an application pool fails.
Public propertyRapidFailProtectionGets or sets a value indicating whether rapid-fail protection is on or off.
Public propertyRapidFailProtectionIntervalGets or sets the interval of time before the failure count for a process is reset.
Public propertyRapidFailProtectionMaxCrashesGets or sets the maximum number of failures allowed within the time specified by the RapidFailProtectionInterval property.
Public propertyRawAttributesGets the raw attribute names and values for the current configuration element. (Inherited from ConfigurationElement.)
Public propertySchemaGets the schema for the current element. (Inherited from ConfigurationElement.)
Top

  NameDescription
Public methodDelete (Inherited from ConfigurationElement.)
Public methodEquals (Inherited from Object.)
Protected methodFinalize (Inherited from Object.)
Public methodGetAttributeReturns a ConfigurationAttribute object that represents the requested attribute. (Inherited from ConfigurationElement.)
Public methodGetAttributeValueReturns the value of the specified attribute. (Inherited from ConfigurationElement.)
Public methodGetChildElement(String)Returns a child element that is under the current configuration element and has the specified name. (Inherited from ConfigurationElement.)
Public methodGetChildElement(String, Type)Returns a child element that is under the current configuration element and has the specified name and type. (Inherited from ConfigurationElement.)
Public methodGetCollection()()()()Returns the default collection for the current configuration element. (Inherited from ConfigurationElement.)
Public methodGetCollection(String)Returns all configuration elements that belong to the current configuration element. (Inherited from ConfigurationElement.)
Public methodGetCollection(Type)Returns the configuration element that has the specified type and is under the current configuration element. (Inherited from ConfigurationElement.)
Public methodGetCollection(String, Type)Returns the configuration element that has the specified name and type and is under the current configuration element. (Inherited from ConfigurationElement.)
Public methodGetHashCode (Inherited from Object.)
Public methodGetMetadataReturns metadata values from the element schema. (Inherited from ConfigurationElement.)
Public methodGetType (Inherited from Object.)
Protected methodMemberwiseClone (Inherited from Object.)
Public methodSetAttributeValueSets the value of the specified attribute. (Inherited from ConfigurationElement.)
Public methodSetMetadataSets metadata values from the element schema. (Inherited from ConfigurationElement.)
Public methodToString (Inherited from Object.)
Top

This class represents the application pool failure configuration in the IIS configuration system. The properties correspond directly to the attributes of the failure element for the applicationPoolDefaults element for the applicationPools element.

When the properties of an ApplicationPoolFailure object are modified, you must call the ServerManager..::..CommitChanges method to persist the values to the ApplicationHost.config file and to IIS Manager.

The following example displays the property values for the ApplicationPoolFailure object. If the RapidFailProtection property is set to true, the RapidFailProtectionInterval and RapidFailProtectionMaxCrashes property values are set and the application pool failures are committed.

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Web.Administration;
using Microsoft.Web.Management;

namespace AdministrationSnippets
{
    class ApplicationPoolFailure
    {
        public void GetApplicationPoolFailures()
        {
            ServerManager manager = new ServerManager();
            // Get the application pool failures.
            Console.WriteLine("AutoShutdownExe:\t{0}",
                manager.ApplicationPoolDefaults.Failure.AutoShutdownExe);
            Console.WriteLine("AutoShutdownParams:\t{0}",
                manager.ApplicationPoolDefaults.Failure.AutoShutdownParams);
            Console.WriteLine("LoadBalancerCapabilities:\t{0}",
                manager.ApplicationPoolDefaults.Failure.LoadBalancerCapabilities);
            Console.WriteLine("OrphanActionExe:\t{0}",
                manager.ApplicationPoolDefaults.Failure.OrphanActionExe);
            Console.WriteLine("OrphanActionParams:\t{0}",
                manager.ApplicationPoolDefaults.Failure.OrphanActionParams);
            Console.WriteLine("OrphanWorkerProcess:\t{0}",
                manager.ApplicationPoolDefaults.Failure.OrphanWorkerProcess);
            Console.WriteLine("RapidFailProtection:\t{0}",
                manager.ApplicationPoolDefaults.Failure.RapidFailProtection);
            Console.WriteLine("RapidFailProtectionInterval:\t{0}",
                manager.ApplicationPoolDefaults.Failure.RapidFailProtectionInterval);
            Console.WriteLine("RapidFailProtectionMaxCrashes:\t{0}",
                manager.ApplicationPoolDefaults.Failure.RapidFailProtectionMaxCrashes);
            // If the RapidFailProtection is enabled, set 
            // the Interval and maximum crashes properties.
            if (manager.ApplicationPoolDefaults.Failure.RapidFailProtection)
            {
                manager.ApplicationPoolDefaults.Failure.
                    RapidFailProtectionInterval = (TimeSpan.FromMinutes(10));
                manager.ApplicationPoolDefaults.Failure.
                    RapidFailProtectionMaxCrashes = 6;
            }
            // Commit the changes to ApplicationHost.config file.
            manager.CommitChanges();
        }
    }
}


Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Community Additions

ADD
Show:
© 2015 Microsoft