Partager via


3. Définitions de profil

Les profils d’enregistrement WPR (Windows Performance Recorder) sont stockés dans un fichier XML qui a une extension .wprp. Les définitions de profil regroupent les définitions du collecteur et du fournisseur dans le fichier .wprp.

Profils

Vous définissez un profil WPR à l’aide (<Profile> … </Profile> de balises XML qui font référence aux balises XML de définition de collecteur et de fournisseur que vous définissez dans le même fichier .wprp ou à l’aide de l’héritage dans un autre fichier .wprp. Chaque balise XML de définition de profil doit avoir les attributs suivants :

  • ID : identificateur unique de la définition de profil. Utilisez la construction d’identificateur de profil suivante :

    < Nom>.<DetailLevel>.<LoggingMode>.

  • Nom : chaîne qui indique le nom du profil.

  • DetailLevel : attribut qui spécifie si une définition de profil est utilisée pour le suivi de minutage (light) ou le suivi d’analyse (détaillé).

  • LoggingMode : attribut qui spécifie si le profil consigne les événements dans un fichier séquentiel ou dans des mémoires tampons circulaires. Tous les profils doivent avoir un fichier et une version mémoire dans le même fichier .wprp.

  • Description : description textuelle du profil que l’utilisateur voit.

WPR prend en charge l’enregistrement des performances pour les modes de journalisation des fichiers et de la mémoire pour chaque fichier .wprp, à l’exception des profils activés/désactivés. Vous devez ouvrir une session/désactiver des profils dans un fichier, mais vous devez définir à la fois un fichier et une version mémoire. Étant donné qu’une seule définition de profil ne peut prendre en charge qu’un seul mode de journalisation, il peut y avoir deux ou quatre définitions de profil dans un fichier .wprp, une pour chaque combinaison de mode de journalisation et de niveau de détail. Toutes les définitions de profil d’un seul fichier .wprp doivent avoir le même attribut Name .

< Nom>.<DetailLevel>.<LoggingMode>

L’exemple de code suivant montre Example1.wprp. Ce fichier contient deux définitions de profil. Les points de suspension (...) représentent le corps du profil.

<Profile
  Id="Example1.Verbose.File"
  Name="Example1"
  DetailLevel="Verbose"
  LoggingMode="File"
  Description="Example1 profile">
…
</Profile>
<Profile
  Id="Example1.Verbose.Memory"
  Name="Example1"
  DetailLevel="Verbose"
  LoggingMode="Memory"
  Description="Example1 profile">
…
</Profile>

L’exemple de code suivant montre Example2.wprp. Ce fichier contient quatre définitions de profil. Les points de suspension (...) représentent le corps du profil.

<Profile
  Id="Example2.Verbose.File"
  Name="Example2"
  DetailLevel="Verbose"
  LoggingMode="File"
  Description="Example2 profile">
…
</Profile>
<Profile
  Id="Example2.Light.File"
  Name="Example2"
  DetailLevel="Light"
  LoggingMode="File"
  Description="Example2 profile">
…
</Profile>
<Profile
  Id="Example2.Verbose.Memory"
  Name="Example2"
  DetailLevel="Verbose"
  LoggingMode="Memory"
  Description="Example2 profile">
…
</Profile>
<Profile
  Id="Example2.Light.Memory"
  Name="Example2"
  DetailLevel="Light"
  LoggingMode="Memory"
  Description="Example2 profile">
…
</Profile>

Élément Collectors

L’élément Collectors contient des références à des collecteurs système et d’événements définis précédemment. Les éléments SystemCollectorId et EventCollectorId identifient ces collecteurs.

Chaque élément SystemCollectorId et EventCollectorId contient un attribut Value obligatoire qui spécifie l’attribut Id du collecteur à utiliser. Chaque élément SystemCollectorId et EventCollectorId contient également une liste d’éléments SystemProviderId ou EventCollectorId . Ces éléments ont une syntaxe similaire. Toutefois, ces éléments font référence à des fournisseurs de système et d’événements définis précédemment.

Vous pouvez également définir des collecteurs et des fournisseurs à l’intérieur de la définition de profil.

Exemple de définition de profil

L’exemple de code suivant montre une définition de profil complète.

<Profile
  Id="Example.Light.File"
  Name="Example"
  DetailLevel="Light"
  LoggingMode="File"
  Description="Example profile">
  <ProblemCategories> 
    <ProblemCategory
      Value="First Level Triage"/>
  </ProblemCategories> 
  <Collectors> 
    <SystemCollectorId
      Value="WPRSystemCollector">
      <!--Enables the system provider for this system collector. --> 
      <SystemProviderId
        Value="system-provider"/>
    </SystemCollectorId> 
    <EventCollectorId
      Value="WPREventCollector">
      <EventProviders> 
      <!--Enables two event providers for this event collector. --> 
        <EventProviderId
          Value="Win32K-provider"/>
        <EventProviderId
          Value="Search-Core-provider"/>
      </EventProviders> 
    </EventCollectorId> 
  </Collectors>
</Profile>

Création de profils d’enregistrement

2. Définitions du système et du fournisseur d’événements

Mode de journalisation

Niveau de détail

ProblemCategories

SystemCollectorId

HeapEventProviderId