StorPortEtwEvent4, fonction (storport.h)
StorPortEtwEvent4 enregistre un événement de suivi d’événements pour Windows (ETW) avec quatre paramètres ETW à usage général dans un canal de trace de stockage.
Syntaxe
ULONG StorPortEtwEvent4(
[in] PVOID HwDeviceExtension,
[in, optional] PSTOR_ADDRESS Address,
[in] ULONG EventId,
[in] PWSTR EventDescription,
[in] ULONGLONG EventKeywords,
[in] STORPORT_ETW_LEVEL EventLevel,
[in] STORPORT_ETW_EVENT_OPCODE EventOpcode,
[in, optional] PSCSI_REQUEST_BLOCK Srb,
[in, optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter1Name,
[in] ULONGLONG Parameter1Value,
[in, optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter2Name,
[in] ULONGLONG Parameter2Value,
[in, optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter3Name,
[in] ULONGLONG Parameter3Value,
[in, optional] _In_reads_or_z_opt_(STORPORT_ETW_MAX_PARAM_NAME_LENGTH)PWSTR Parameter4Name,
[in] ULONGLONG Parameter4Value
);
Paramètres
[in] HwDeviceExtension
Pointeur vers l’extension d’appareil du miniport.
[in, optional] Address
Adresse du périphérique d’unité de stockage. Ce paramètre est NULL pour les périphériques adaptateurs.
[in] EventId
Identificateur défini par miniport pour l’événement ETW.
[in] EventDescription
Texte de description de l’événement. Cette chaîne de texte doit être <= STORPORT_ETW_MAX_DESCRIPTION_LENGTH.
[in] EventKeywords
Indicateurs de mot clé pour la catégorisation d’événements. Définissez sur 0 si aucune mot clé n’est souhaitée. Les mots clés sont une combinaison OR au niveau du bit des éléments suivants.
Valeur | Signification |
---|---|
STORPORT_ETW_EVENT_KEYWORD_IO | L’événement est lié aux opérations d’E/S de l’appareil. |
STORPORT_ETW_EVENT_KEYWORD_PERFORMANCE | L’événement est lié aux performances. |
STORPORT_ETW_EVENT_KEYWORD_POWER | L’événement est lié à l’alimentation de l’appareil. |
STORPORT_ETW_EVENT_KEYWORD_ENUMERATION | L’événement est lié à l’énumération d’appareil. |
[in] EventLevel
Niveau d’événement. Cette valeur peut indiquer l’importance ou la gravité de l’événement. Il s’agit de l’une des valeurs suivantes.
Valeur | Signification |
---|---|
StorportEtwLevelLogAlways | Journaliser l’événement de manière inconditionnelle. L’événement est journalisé quel que soit le filtre défini. |
StorportEtwLevelCritical | Événement de niveau critique. |
StorportEtwLevelError | Événement de niveau d’erreur. |
StorportEtwLevelWarning | Événement de niveau avertissement. |
StorportEtwLevelInformational | Événement d’information. |
StorportEtwLevelVerbose | Informations détaillées sur les événements fournies. |
[in] EventOpcode
Nature opérationnelle de l’événement. Il s’agit de l’une des valeurs suivantes.
Valeur | Signification |
---|---|
StorportEtwEventOpcodeInfo | Événement d’information générale. |
StorportEtwEventOpcodeStart | L’appareil ou l’unité a démarré. |
StorportEtwEventOpcodeStop | L’appareil ou l’unité s’arrêtait. L’événement correspond au dernier événement de début non apparié. |
StorportEtwEventOpcodeDC_Start | Événement de début de collecte de données. Il s’agit de types d’événements d’arrêt. |
StorportEtwEventOpcodeDC_Stop | Événement d’arrêt de collecte de données. Il s’agit de types d’événements d’arrêt. |
StorportEtwEventOpcodeExtension | Evénement d'extension. |
StorportEtwEventOpcodeReply | Événement de réponse. |
StorportEtwEventOpcodeResume | L’appareil ou l’unité a repris après la suspension. |
StorportEtwEventOpcodeSuspend | L’appareil ou l’unité est suspendu en attendant la fin d’une autre opération. |
StorportEtwEventOpcodeReceive | Le transfert d’activité est reçu d’un autre composant. |
[in, optional] Srb
Pointeur vers le SRB associé à l’événement journalisé. Si ce paramètre contient un SRB valide, ce pointeur SRB et le pointeur SRB associé sont consignés.
[in, optional] Parameter1Name
Description de la signification de Parameter1Value. Cette chaîne de nom de paramètre doit être <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.
[in] Parameter1Value
Valeur du paramètre 1.
[in, optional] Parameter2Name
Description de la signification de Parameter2Value. Cette chaîne de nom de paramètre doit être <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.
[in] Parameter2Value
Valeur du paramètre 2.
[in, optional] Parameter3Name
Description de la signification de Parameter3Value. Cette chaîne de nom de paramètre doit être <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.
[in] Parameter3Value
Valeur du paramètre 3.
[in, optional] Parameter4Name
Description de la signification de Parameter4Value. Cette chaîne de nom de paramètre doit être <= STORPORT_ETW_MAX_PARAM_NAME_LENGTH.
[in] Parameter4Value
Valeur du paramètre 4.
Valeur retournée
StorPortEtwEvent4 retourne l’un des codes status suivants :
Code de retour | Description |
---|---|
STOR_STATUS_SUCCESS | L’événement a été correctement journalisé. |
STOR_STATUS_NOT_IMPLEMENTED | Le suivi n’est pas activé pour les événements de stockage. |
STOR_STATUS_INVALID_PARAMETER | Un paramètre n'est pas valide. Par exemple, HwDeviceExtension ou EventDescription ont la valeur NULL, EventDescription est supérieur à la longueur maximale du nom ou un nom de paramètre ETW est supérieur à la longueur maximale du nom. |
Remarques
Un miniport peut appeler StorPortEtwEvent4 pour journaliser quatre paramètres ETW à usage général. Les paramètres ETW sont exprimés sous la forme de quatre paires nom-valeur. Si un paramètre n’est pas nommé (ParamètreXName = NULL), la routine définit la valeur du paramètre correspondant sur 0.
Les événements générés à partir des pilotes de miniport StorPort sont enregistrés dans le canal ETW « Microsoft-Windows-Storage-Storport/Diagnostiquer ».
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 8.1 |
Plateforme cible | Universal |
En-tête | storport.h (inclure Storport.h) |
IRQL | <= DISPATCH_LEVEL |