Komplexer ChannelType-Typ

Definiert einen Kanal, in dem Anbieter Ereignisse protokollieren können.

<xs:complexType name="ChannelType"
    mixed="true"
>
    <xs:sequence>
        <xs:element name="logging"
            type="ChannelLoggingType"
            minOccurs="0"
         />
        <xs:element name="publishing"
            type="ChannelPublishingType"
            minOccurs="0"
         />
    </xs:sequence>
    <xs:attribute name="name"
        type="anyURI"
        use="required"
     />
    <xs:attribute name="chid"
        type="token"
        use="optional"
     />
    <xs:attribute name="type"
        type="string"
        use="required"
     />
    <xs:attribute name="symbol"
        type="CSymbolType"
        use="optional"
     />
    <xs:attribute name="access"
        type="string"
        use="optional"
     />
    <xs:attribute name="isolation"
        type="string"
        use="optional"
     />
    <xs:attribute name="enabled"
        type="boolean"
        default="false"
        use="optional"
     />
    <xs:attribute name="value"
        type="UInt8Type"
        use="optional"
     />
    <xs:attribute name="message"
        type="string"
        use="optional"
     />
</xs:complexType>

Untergeordnete Elemente

Element Typ BESCHREIBUNG
Protokollierung ChannelLoggingType Definiert die Eigenschaften der Protokolldatei, die den Kanal unterstützt, z. B. seine Kapazität und ob die Protokolldatei sequenziell oder kreisförmig ist.
Publishing ChannelPublishingType Definiert die Protokollierungseigenschaften für die Sitzung, die der Kanal verwendet. Nur Debug- und Analysekanäle und -kanäle, die benutzerdefinierte Isolation verwenden, können Protokollierungseigenschaften für ihre Sitzung angeben.

Attributes

Name Typ BESCHREIBUNG
access Zeichenfolge Ein SDDL-Zugriffsdeskriptor (Security Descriptor Definition Language ), der den Zugriff auf die Protokolldatei steuert, die den Kanal unterstützt. Wenn das Isolationsattribut auf Application oder System festgelegt ist, steuert der Zugriffsdeskriptor den Lesezugriff auf die Datei (die Schreibberechtigungen werden ignoriert). Wenn das Isolationsattribut auf Benutzerdefiniert festgelegt ist, steuert der Zugriffsdeskriptor den Schreibzugriff auf den Kanal und den Lesezugriff auf die Datei.
Chid token Ein Bezeichner, der den Kanal in der Liste der Kanäle eindeutig identifiziert, die der Anbieter definiert oder importiert. Verwenden Sie diesen Wert, wenn Sie in einem Ereignis auf den Kanal verweisen. Wenn Sie keinen Kanalbezeichner angeben, verwenden Sie den Namen des Kanals, um in einer Ereignisdefinition auf diesen Kanal zu verweisen.
enabled boolean Bestimmt, ob der Kanal aktiviert ist. Legen Sie auf true fest, um die Protokollierung für den Kanal zuzulassen. andernfalls false. Der Standardwert ist false (Protokollierung ist deaktiviert).
Da es sich bei Debug- und Analysekanaltypen um Kanäle mit hoher Lautstärke handelt, sollten Sie den Kanal nur aktivieren, wenn Sie ein Problem mit einer Komponente untersuchen, die in diesen Kanal schreibt. Andernfalls sollte der Kanal deaktiviert bleiben.
Jedes Mal, wenn Sie einen Debug- und Analysekanal aktivieren, löscht der Dienst die Ereignisse aus dem Kanal.
Isolierung Zeichenfolge Der Isolationswert definiert die Standardzugriffsberechtigungen für den Kanal. Sie können einen der folgenden Werte angeben:
  • Anwendung
  • System
  • Benutzerdefiniert
Die Standardisolation ist Application. Die Standardberechtigungen für Die Anwendung sind (mit SDDL dargestellt):
Text
            L"O:BAG:SYD:"
            L"(A;;0xf0007;;;SY)"                // local system               (read, write, clear)
            L"(A;;0x7;;;BA)"                    // built-in admins            (read, write, clear)
            L"(A;;0x7;;;SO)"                    // server operators           (read, write, clear)
            L"(A;;0x3;;;IU)"                    // INTERACTIVE LOGON          (read, write)
            L"(A;;0x3;;;SU)"                    // SERVICES LOGON             (read, write)
            L"(A;;0x3;;;S-1-5-3)"               // BATCH LOGON                (read, write)
            L"(A;;0x3;;;S-1-5-33)"              // write restricted service   (read, write)
            L"(A;;0x1;;;S-1-5-32-573)";         // event log readers          (read) 

Die Standardberechtigungen für System sind (mit SDDL dargestellt):

Text
            L"O:BAG:SYD:"
            L"(A;;0xf0007;;;SY)"                // local system             (read, write, clear)
            L"(A;;0x7;;;BA)"                    // built-in admins          (read, write, clear)
            L"(A;;0x3;;;BO)"                    // backup operators         (read, write)
            L"(A;;0x5;;;SO)"                    // server operators         (read, clear) 
            L"(A;;0x1;;;IU)"                    // INTERACTIVE LOGON        (read)
            L"(A;;0x3;;;SU)"                    // SERVICES LOGON           (read, write)
            L"(A;;0x1;;;S-1-5-3)"               // BATCH LOGON              (read)
            L"(A;;0x2;;;S-1-5-33)"              // write restricted service (write)
            L"(A;;0x1;;;S-1-5-32-573)";         // event log readers        (read)

Die Standardberechtigungen für benutzerdefinierte Isolation sind identisch mit Application.

Kanäle, die Anwendungsisolation angeben, verwenden dieselbe ETW-Sitzung. Das gleiche gilt für die Systemisolation . Wenn Sie jedoch benutzerdefinierte Isolation angeben, erstellt der Dienst eine separate ETW-Sitzung für den Kanal. Mithilfe der benutzerdefinierten Isolation können Sie die Zugriffsberechtigungen für den Kanal und die Sicherungsdatei steuern. Da nur 64 ETW-Sitzungen verfügbar sind, sollten Sie die Verwendung der benutzerdefinierten Isolation einschränken.

message Zeichenfolge

Der lokalisierte Anzeigename für den Kanal. Die Nachrichtenzeichenfolge verweist auf eine lokalisierte Zeichenfolge im Abschnitt stringTable des Manifests.

name anyURI

Der Name des Channels. Der Name muss innerhalb der Liste der Kanäle, die der Anbieter verwendet, eindeutig sein. Die Konvention für die Benennung von Kanälen besteht darin, den Kanaltyp an den Namen des Anbieters anzufügen. Beispiel: wenn der Name des Anbieters Company-Product-Component lautet und Sie einen Betriebskanal definieren, lautet der Name Company-Product-Component/Operational.

Kanalnamen müssen kleiner als 255 Zeichen sein und dürfen die folgenden Zeichen nicht enthalten: ">", "<", "&", "", "|", "\", ":", "", "", "?", "*" oder Zeichen mit Codes von weniger als 31.

Symbol CSymbolType

Das Symbol, das verwendet werden soll, um auf den Kanal in Ihrer Anwendung zu verweisen. Der Nachrichtencompiler (MC.exe) verwendet das Symbol, um eine Konstante für den Kanal in der Vom Compiler generierten Headerdatei zu erstellen. Wenn Sie kein Symbol angeben, generiert der Compiler den Namen für Sie.

type Zeichenfolge

Gibt den Kanaltyp an. Sie können einen der folgenden Typen angeben:

  • Administrator
  • Bei Betrieb
  • Analytic
  • Debuggen

Admin Typkanäle unterstützen Ereignisse, die sich an Endbenutzer, Administratoren und Supportmitarbeiter richten. Ereignisse, die in die Admin Kanäle geschrieben werden, sollten über eine klar definierte Lösung verfügen, für die der Administrator handeln kann. Ein Beispiel für ein Administratorereignis ist ein Ereignis, das auftritt, wenn eine Anwendung keine Verbindung mit einem Drucker herstellen kann. Diese Ereignisse sind entweder gut dokumentiert oder ihnen eine Nachricht zugeordnet, die dem Leser direkte Anweisungen gibt, was getan werden muss, um das Problem zu beheben.

Betriebstypkanäle unterstützen Ereignisse, die zum Analysieren und Diagnostizieren eines Problems oder Auftretens verwendet werden. Sie können zum Auslösen von Tools oder Aufgaben anhand des Problems oder des Vorkommens verwendet werden. Beispielsweise handelt es sich um ein Vorgangsereignis, wenn ein Drucker einem System hinzugefügt oder daraus entfernt wird.

Analysetypkanäle unterstützen Ereignisse, die in hoher Lautstärke veröffentlicht werden. Sie beschreiben Programmvorgänge und geben Probleme an, die nicht durch Benutzereingriffe behoben werden können.

Debugtypkanäle unterstützen Ereignisse, die ausschließlich von Entwicklern zur Diagnose eines Problems für das Debuggen verwendet werden.

Analyse- und Debugkanäle sind standardmäßig deaktiviert und sollten nur aktiviert sein, um die Ursache eines Problems zu ermitteln. Beispielsweise würden Sie den Kanal aktivieren, das Szenario ausführen, das das Problem verursacht, den Kanal deaktivieren und dann die Ereignisse abfragen. Beachten Sie, dass die Aktivierung des Kanals den Kanal vorhandener Ereignisse löscht. Wenn der Analyse- und Debugkanal eine Zirkelsicherungsdatei verwendet, müssen Sie den Kanal deaktivieren, um seine Ereignisse abzufragen.

Alle Admin Kanäle verwenden dieselbe ETW-Sitzung; das gleiche gilt für Betriebskanäle. Jeder Analyse- und Debugkanal verwendet jedoch eine separate ETW-Sitzung, was ein weiterer Grund ist, diese Kanaltypen nur bei Bedarf zu aktivieren (es ist eine begrenzte Anzahl von ETW-Sitzungen verfügbar).

value UInt8Type

Ein numerischer Bezeichner, der den Kanal innerhalb der Liste der Kanäle eindeutig identifiziert, die der Anbieter definiert. Der Nachrichtencompiler weist den Wert zu, wenn er nicht angegeben ist.

Bemerkungen

Wenn der Kanalname der Kanalbenennungskonvention folgt, listet die Windows-Ereignisanzeige den Kanal mithilfe der Zeichenfolge auf, die dem umgekehrten Schrägstrich folgt. Wenn der Kanalname beispielsweise Company-Product-Component/Operational lautet, listet die Ereignisanzeige den Kanal unter dem Anbieter Company-Product-Component als betriebsbereit auf. Andernfalls wird der gesamte Kanalname unter dem Anbieter angezeigt. Der lokalisierte Anzeigename wird verwendet, sofern angegeben.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2008 [nur Desktop-Apps]

`