WebRequestInformation クラス
アセンブリ: System.Web (system.web.dll 内)


運用および操作の担当者は、ASP.NET Health Monitoring を使用して、配置されている Web アプリケーションを管理できます。System.Web.Management 名前空間には、アプリケーションの状態データをパッケージ化する状態イベント型、およびそのデータを処理するプロバイダ型が含まれます。また、状態イベント管理を支援するサポート型も含まれます。
WebRequestInformation クラスのインスタンスには、WebRequestEvent 型、WebAuditEvent 型、WebErrorEvent 型、または WebRequestErrorEvent 型を使用して取得される情報が格納されます。
この型が提供する保護された情報にアクセスするには、アプリケーションに適切なアクセス許可が必要です。
![]() |
---|
ほとんどの場合、ASP.NET 状態監視型はそのままの実装で使用できます。ASP.NET Health Monitoring system の制御は healthMonitoring 構成セクションに値を指定することによって行います。状態監視型の派生として独自のイベントおよびプロバイダを作成することもできます。カスタム イベント クラスの作成例については、このトピックの例を参照してください。 |

WebRequestInformation 型を使用したカスタム イベントを実装する方法を次のコード例に示します。
また、ASP.NET でこのカスタム イベントを使用できるようにする構成ファイルの抜粋も示します。
作成するカスタム イベントは、必ず適切なタイミングで、つまり、置き換える対象のシステム状態イベントと同じタイミングで発生するようにしてください。
<healthMonitoring heartBeatInterval="0" enabled="true"> <profiles> <add name="Custom" minInstances="1" maxLimit="Infinite" minInterval="00:00:00" /> </profiles> <eventMappings> <add name="SampleWebRequestInformation" type="SamplesAspNet.SampleWebRequestInformation,webrequestinformation,Version=1.0.1782.28745, Culture=neutral, PublicKeyToken=79955d9b8521c250,processorArchitecture=MSIL" /> </eventMappings> <rules> <add name="Custom Web Request Info Event" eventName="SampleWebRequestInformation" provider="EventLogProvider" profile="Custom" /> </rules> </healthMonitoring>
Imports System Imports System.Text Imports System.Web Imports System.Web.Management Imports System.Web.UI Imports System.Web.UI.WebControls ' Implements a custom WebRequestEvent that uses ' WebRequestInformation. Public Class SampleWebRequestInformation Inherits WebRequestEvent Private eventInfo As StringBuilder ' Instantiate events identified ' only by their event code. Public Sub New(ByVal msg As String, _ ByVal eventSource As Object, _ ByVal eventCode As Integer) MyBase.New(msg, eventSource, eventCode) ' Perform custom initialization. eventInfo = New StringBuilder() eventInfo.Append(String.Format( _ "Event created at: {0}", EventTime.ToString())) End Sub 'New ' Instantiate events identified by ' their event code.and related ' event detailed code. Public Sub New(ByVal msg As String, _ ByVal eventSource As Object, _ ByVal eventCode As Integer, _ ByVal eventDetailCode As Integer) MyBase.New(msg, eventSource, _ eventCode, eventDetailCode) ' Perform custom initialization. eventInfo = New StringBuilder() eventInfo.Append(String.Format( _ "Event created at: {0}", EventTime.ToString())) End Sub 'New ' Raises the event. Public Overrides Sub Raise() ' Perform custom processing. eventInfo.Append(String.Format( _ "Event raised at: {0}", EventTime.ToString())) ' Raise the event. MyBase.Raise() End Sub 'Raise ' Get the request path. Public Function GetRequestPath() As String ' Get the request path. Return String.Format( _ "Request path: {0}", RequestInformation.RequestPath) End Function 'GetRequestPath ' Get the request URL. Public Function GetRequestUrl() As String ' Get the request URL. Return String.Format("Request URL: {0}", _ RequestInformation.RequestUrl) End Function 'GetRequestUrl ' Get the request user host address. Public Function GetRequestUserHostAdddress() As String ' Get the request user host address. Return String.Format( _ "Request user host address: {0}", _ RequestInformation.UserHostAddress) End Function 'GetRequestUserHostAdddress ' Get the request principal. Public Function GetRequestPrincipal() As String ' Get the request principal. Return String.Format( _ "Request principal name: {0}", _ RequestInformation.Principal.Identity.Name) End Function 'GetRequestPrincipal ' Formats Web request event information. Public Overrides Sub FormatCustomEventDetails( _ ByVal formatter As WebEventFormatter) ' Add custom data. formatter.AppendLine("") formatter.AppendLine("Custom Request Information:") formatter.IndentationLevel += 1 ' Display the request information obtained ' using the WebRequestInformation object. formatter.AppendLine(GetRequestPath()) formatter.AppendLine(GetRequestUrl()) formatter.AppendLine(GetRequestUserHostAdddress()) formatter.AppendLine(GetRequestPrincipal()) formatter.IndentationLevel -= 1 formatter.AppendLine(eventInfo.ToString()) End Sub 'FormatCustomEventDetails End Class 'SampleWebRequestInformation
using System; using System.Text; using System.Web; using System.Web.Management; using System.Web.UI; using System.Web.UI.WebControls; namespace SamplesAspNet { // Implements a custom WebRequestEvent that uses // WebRequestInformation. public class SampleWebRequestInformation : WebRequestEvent { private StringBuilder eventInfo; // Instantiate events identified // only by their event code. public SampleWebRequestInformation(string msg, object eventSource, int eventCode): base(msg, eventSource, eventCode) { // Perform custom initialization. eventInfo = new StringBuilder(); eventInfo.Append(string.Format( "Event created at: {0}", EventTime.ToString())); } // Instantiate events identified by // their event code.and related // event detailed code. public SampleWebRequestInformation(string msg, object eventSource, int eventCode, int eventDetailCode) : base(msg, eventSource, eventCode, eventDetailCode) { // Perform custom initialization. eventInfo = new StringBuilder(); eventInfo.Append(string.Format( "Event created at: {0}", EventTime.ToString())); } // Raises the event. public override void Raise() { // Perform custom processing. eventInfo.Append(string.Format( "Event raised at: {0}", EventTime.ToString())); // Raise the event. base.Raise(); } // Get the request path. public string GetRequestPath() { // Get the request path. return (string.Format( "Request path: {0}", RequestInformation.RequestPath)); } // Get the request URL. public string GetRequestUrl() { // Get the request URL. return (string.Format( "Request URL: {0}", RequestInformation.RequestUrl)); } // Get the request user host address. public string GetRequestUserHostAdddress() { // Get the request user host address. return (string.Format( "Request user host address: {0}", RequestInformation.UserHostAddress)); } // Get the request principal. public string GetRequestPrincipal() { // Get the request principal. return (string.Format( "Request principal name: {0}", RequestInformation.Principal.Identity.Name)); } // Formats Web request event information. public override void FormatCustomEventDetails( WebEventFormatter formatter) { // Add custom data. formatter.AppendLine(""); formatter.AppendLine( "Custom Request Information:"); formatter.IndentationLevel += 1; // Display the request information obtained // using the WebRequestInformation object. formatter.AppendLine(GetRequestPath()); formatter.AppendLine(GetRequestUrl()); formatter.AppendLine(GetRequestUserHostAdddress()); formatter.AppendLine(GetRequestPrincipal()); formatter.IndentationLevel -= 1; formatter.AppendLine(eventInfo.ToString()); } } }


System.Web.Management.WebRequestInformation


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からWebRequestInformation クラスを検索する場合は、下記のリンクをクリックしてください。

- WebRequestInformation クラスのページへのリンク