# Powershell - Journalisation windows

<p class="callout info">Par convention, nous utiliserons "PSAutomationEngine" comme nom de source.</p>

Créer une source d'évènements (requiert les droits admin) :

```powershell
[System.Diagnostics.EventLog]::CreateEventSource("PSAutomationEngine", "Application")
```

La première valeur est le nom de la source.

La seconde valeur est le journal dans lequel enregistrer la source.

Les valeurs possibles sont :

- Application
- Security
- Setup
- System

---

Récupérer les journaux générés par la source :

```powershell
Get-EventLog -LogName "Application" -Source "PSAutomationEngine"
```

La première valeur est le nom du journal.

La seconde valeur est le nom de la source.

---

Créer un évènement :

```powershell
[System.Diagnostics.EventLog]::WriteEntry("PSAutomationEngine","This is a test entry","information",9)
```

La première valeur est le nom de la source.

La seconde valeur est le message de l'évènement.

La troisième valeur est le type d'évènement.

Les différentes valeurs possibles sont :

- information
- warning
- error

La quatrième valeur est le code d'évènement.

<p class="callout info">Voir : [Powershell - Matrice des codes d'états](https://docs.mfrstegreve.fr/books/normalisation/page/powershell-matrice-des-codes-detats "Powershell - Matrice des codes d'états")</p>

[![image.png](https://docs.labs404.fr/uploads/images/gallery/2026-07/scaled-1680-/6xNimage-png.png)](https://docs.labs404.fr/uploads/images/gallery/2026-07/scaled-1680-/6xNimage-png.png)

---

Supprimer une source (requiert les droits admin) :

```powershell
[System.Diagnostics.EventLog]::DeleteEventSource("PSAutomationEngine")
```

La première valeur est le nom de la source.