WebApplicationInformation Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece informações associadas a eventos de integridade.
public ref class WebApplicationInformation sealed
public sealed class WebApplicationInformation
type WebApplicationInformation = class
Public NotInheritable Class WebApplicationInformation
- Herança
-
WebApplicationInformation
Exemplos
O exemplo de código a seguir tem duas partes. A primeira parte é um trecho do arquivo de configuração que permite que ASP.NET usem um evento personalizado. O segundo mostra como criar esse evento personalizado usando a WebApplicationInformation classe .
Verifique se o evento personalizado é gerado no momento adequado, ou seja, quando o evento de integridade do sistema equivalente que ele substitui for gerado.
<healthMonitoring
enabled="true" heartBeatInterval="0">
<eventMappings>
<add name="SampleApplicationInformation"
type="SamplesAspNet.SampleWebApplicationInformation, webapplicationinformation, Version=1.0.1585.27289, Culture=neutral, PublicKeyToken=3648e5c763a8239f, processorArchitecture=MSIL"/>
</eventMappings>
<rules>
<add name="Custom Application Information"
eventName="SampleApplicationInformation"
provider="EventLogProvider"
profile="Default"/>
</rules>
</healthMonitoring>
using System;
using System.Text;
using System.Web;
using System.Web.Management;
namespace SamplesAspNet
{
// Implements a custom WebBaseEvent that uses
// WebApplicationInformation.
public class SampleWebApplicationInformation :
WebBaseEvent
{
private StringBuilder eventInfo;
// Instantiate SampleWebGet
public SampleWebApplicationInformation(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()));
}
// 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();
}
public string GetApplicationDomain()
{
// Get the name of the application domain.
return (string.Format(
"Application domain: {0}",
ApplicationInformation.ApplicationDomain));
}
public string GetApplicationPath()
{
// Get the name of the application path.
return (string.Format(
"Application path: {0}",
ApplicationInformation.ApplicationPath));
}
public string GetApplicationVirtualPath()
{
// Get the name of the application virtual path.
return (string.Format(
"Application virtual path: {0}",
ApplicationInformation.ApplicationVirtualPath));
}
public string GetApplicationMachineName()
{
// Get the name of the application machine name.
return (string.Format(
"Application machine name: {0}",
ApplicationInformation.MachineName));
}
public string GetApplicationTrustLevel()
{
// Get the name of the application trust level.
return (string.Format(
"Application trust level: {0}",
ApplicationInformation.TrustLevel));
}
//Formats Web request event information.
public override void FormatCustomEventDetails(
WebEventFormatter formatter)
{
base.FormatCustomEventDetails(formatter);
// Add custom data.
formatter.AppendLine("");
formatter.AppendLine(
"Custom Application Information:");
formatter.IndentationLevel += 1;
// Display the application information.
formatter.AppendLine(GetApplicationDomain());
formatter.AppendLine(GetApplicationPath());
formatter.AppendLine(GetApplicationVirtualPath());
formatter.AppendLine(GetApplicationMachineName());
formatter.AppendLine(GetApplicationTrustLevel());
formatter.IndentationLevel -= 1;
formatter.AppendLine(eventInfo.ToString());
}
}
}
Imports System.Text
Imports System.Web
Imports System.Web.Management
'Implements a custom WebBaseEvent that uses
' WebApplicationInformation.
Public Class SampleWebApplicationInformation
Inherits WebBaseEvent
Private eventInfo As StringBuilder
' Instantiate SampleWebGet
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
' 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
Public Function GetApplicationDomain() As String
' Get the name of the application domain.
Return String.Format( _
"Application domain: {0}", _
ApplicationInformation.ApplicationDomain)
End Function 'GetApplicationDomain
Public Function GetApplicationPath() As String
' Get the name of the application path.
Return String.Format( _
"Application path: {0}", _
ApplicationInformation.ApplicationPath())
End Function 'GetApplicationPath
Public Function GetApplicationVirtualPath() As String
' Get the name of the application virtual path.
Return String.Format( _
"Application virtual path: {0}", _
ApplicationInformation.ApplicationVirtualPath())
End Function 'GetApplicationVirtualPath
Public Function GetApplicationMachineName() As String
' Get the name of the application machine name.
Return String.Format( _
"Application machine name: {0}", _
ApplicationInformation.MachineName())
End Function 'GetApplicationMachineName
Public Function GetApplicationTrustLevel() As String
' Get the name of the application trust level.
Return String.Format( _
"Application trust level: {0}", _
ApplicationInformation.TrustLevel())
End Function 'GetApplicationTrustLevel
'Formats Web request event information.
Public Overrides Sub FormatCustomEventDetails( _
_
ByVal formatter As WebEventFormatter)
MyBase.FormatCustomEventDetails(formatter)
' Add custom data.
formatter.AppendLine( _
"Custom Application Information:")
formatter.IndentationLevel += 1
' Display the application information.
formatter.AppendLine(GetApplicationDomain())
formatter.AppendLine(GetApplicationPath())
formatter.AppendLine(GetApplicationVirtualPath())
formatter.AppendLine(GetApplicationMachineName())
formatter.AppendLine(GetApplicationTrustLevel())
formatter.IndentationLevel -= 1
formatter.AppendLine(eventInfo.ToString())
End Sub
End Class
Comentários
ASP.NET monitoramento de integridade permite que a equipe de produção e operações gerencie aplicativos Web implantados. O System.Web.Management namespace contém os tipos de evento de integridade responsáveis por empacotar dados de status de integridade do aplicativo e os tipos de provedor responsáveis por processar esses dados. Ele também contém tipos de suporte que ajudam durante o gerenciamento de eventos de integridade.
As instâncias da WebApplicationInformation classe contêm informações obtidas usando qualquer um dos tipos derivados do WebManagementEvent tipo .
Seu aplicativo precisa das permissões apropriadas para acessar informações protegidas fornecidas por esse tipo.
Veja a seguir um trecho de um arquivo de configuração que você pode usar para habilitar ASP.NET registrar eventos de erro que contêm informações do aplicativo.
<healthMonitoring
enabled="true" heartBeatInterval="0">
<rules>
<add
name="All Errors Default"
eventName="All Errors"
provider="EventLogProvider"
profile="Default"
minInterval="00:01:00" />
</rules>
</healthMonitoring>
Observação
Na maioria dos casos, você poderá usar o ASP.NET tipos de monitoramento de integridade conforme implementado e controlará o sistema de monitoramento de integridade especificando valores na healthMonitoring
seção de configuração. Você também pode derivar dos tipos de monitoramento de integridade para criar seus próprios provedores e eventos personalizados. Para obter um exemplo de criação de uma classe de evento personalizada, consulte o exemplo fornecido neste tópico.
Propriedades
ApplicationDomain |
Obtém o nome de domínio do aplicativo atual. |
ApplicationPath |
Obtém o caminho físico do aplicativo. |
ApplicationVirtualPath |
Obtém o caminho lógico do aplicativo. |
MachineName |
Obtém o nome do computador do aplicativo. |
TrustLevel |
Obtém o nível de confiança do aplicativo. |
Métodos
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
FormatToString(WebEventFormatter) |
Formata as informações do aplicativo. |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Formata as informações de evento para fins de exibição. |