Question
EventLog Distant
- Thievery
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 11
- Remerciements reçus 0
il y a 17 ans 1 mois #3834
par Thievery
EventLog Distant a été créé par Thievery
Bonjour,
Je souhaite me connecter à mes différents serveurs afin de récupérer les évènements système type WARNING et ERROR de la veille.
J'ai commencé par faire un script en local afin de vérifier ma syntaxe et ça donne cela :
[code:1]
# Création d'un objet contenant le journal d'évènement SYSTEM
$journal = New-Object -TypeName System.Diagnostics.EventLog -ArgumentList System
# Affiche le nombre d'entrée du journal
Write-Host \"Nombre d'entrée dans le journal SYSTEM : \" $journal.Entries.count
# On détermine la date du jour en cours -1
$date_veille = [string](get-date).AddDays(-1)
$date_veille = $date_veille.Split(\" \"«»)[0]
# On cherche tous les events de type WARNING et ERROR de la veille
for($i=0; $i -lt $journal.Entries.count; $i++)
{
$date_event = [string]$journal.Entries[$i].TimeGenerated
$date_event = $date_event.Split(\" \"«»)[0]
if(($date_event -eq $date_veille) -and (($journal.Entries[$i].EntryType -match \"Error\"«») -or ($journal.Entries[$i].EntryType -match \"Warning\"«»)))
{
Write-Host $journal.Entries[$i].EntryType -ForegroundColor Red \" : \" $journal.Entries[$i].Message \"`n\"
Write-Host -Separator \" \" -BackgroundColor Blue
}
}
[/code:1]
Maintenant je cherche à récupérer les mêmes informations mais sur mes serveurs. j'arrive bien à me connecter avec ce morceau de script :
[code:1]
$journal_syst= gwmi \"Win32_NTEventLogFile WHERE LogFileName='system'\" -computername $mon_serveur
$journal_syst.PSBase.Scope.Options.EnablePrivileges = $true
[/code:1]
Mais la je bloque car je n'arrive pas à trouver la \"passerelle\" entre ma variable $journal (qui était issue de mon ordinateur local) et la variable $journal_syst
Merci d'avance du coup de pouce
Je souhaite me connecter à mes différents serveurs afin de récupérer les évènements système type WARNING et ERROR de la veille.
J'ai commencé par faire un script en local afin de vérifier ma syntaxe et ça donne cela :
[code:1]
# Création d'un objet contenant le journal d'évènement SYSTEM
$journal = New-Object -TypeName System.Diagnostics.EventLog -ArgumentList System
# Affiche le nombre d'entrée du journal
Write-Host \"Nombre d'entrée dans le journal SYSTEM : \" $journal.Entries.count
# On détermine la date du jour en cours -1
$date_veille = [string](get-date).AddDays(-1)
$date_veille = $date_veille.Split(\" \"«»)[0]
# On cherche tous les events de type WARNING et ERROR de la veille
for($i=0; $i -lt $journal.Entries.count; $i++)
{
$date_event = [string]$journal.Entries[$i].TimeGenerated
$date_event = $date_event.Split(\" \"«»)[0]
if(($date_event -eq $date_veille) -and (($journal.Entries[$i].EntryType -match \"Error\"«») -or ($journal.Entries[$i].EntryType -match \"Warning\"«»)))
{
Write-Host $journal.Entries[$i].EntryType -ForegroundColor Red \" : \" $journal.Entries[$i].Message \"`n\"
Write-Host -Separator \" \" -BackgroundColor Blue
}
}
[/code:1]
Maintenant je cherche à récupérer les mêmes informations mais sur mes serveurs. j'arrive bien à me connecter avec ce morceau de script :
[code:1]
$journal_syst= gwmi \"Win32_NTEventLogFile WHERE LogFileName='system'\" -computername $mon_serveur
$journal_syst.PSBase.Scope.Options.EnablePrivileges = $true
[/code:1]
Mais la je bloque car je n'arrive pas à trouver la \"passerelle\" entre ma variable $journal (qui était issue de mon ordinateur local) et la variable $journal_syst
Merci d'avance du coup de pouce
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 17 ans 1 mois #3835
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:EventLog Distant
Tu récupéres une instance d'un fichier de log et pas les events contenus dans ce même fichier.
J'utiliserais plutot Win32_NTLogEvent
Ensuite dans la requête WQL tu peux filtrer directement le type d'event.
[edit]
Un exemple <br><br>Message édité par: Laurent Dardenne, à: 27/01/09 14:12
J'utiliserais plutot Win32_NTLogEvent
Ensuite dans la requête WQL tu peux filtrer directement le type d'event.
[edit]
Un exemple <br><br>Message édité par: Laurent Dardenne, à: 27/01/09 14:12
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Thievery
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 11
- Remerciements reçus 0
il y a 17 ans 1 mois #3836
par Thievery
Réponse de Thievery sur le sujet Re:EventLog Distant
En cherchant de façon un peu plus approfondi, la solution doit se trouver dans le script de chris présenté ici
powershell-scripting.com/index.php?optio...76&catid=14#1576
Je continue de chercher
Je continue de chercher
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6311
- Remerciements reçus 68
il y a 17 ans 1 mois #3837
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:EventLog Distant
J'ai ajouté un exemple dans mon dernier post.
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Thievery
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 11
- Remerciements reçus 0
il y a 17 ans 1 mois #3838
par Thievery
Réponse de Thievery sur le sujet Re:EventLog Distant
ah ben merci Laurent je vais suivre ton conseil
Connexion ou Créer un compte pour participer à la conversation.
- Jacques Barathon
- Hors Ligne
- Administrateur
-
Réduire
Plus d'informations
- Messages : 576
- Remerciements reçus 0
il y a 17 ans 1 mois #3839
par Jacques Barathon
Réponse de Jacques Barathon sur le sujet Re:EventLog Distant
Si tu utilises la v2 de PowerShell, tu peux également profiter du paramètre -computername de get-eventlog. Ca te permet très facilement d'interroger un serveur distant pour récupérer des évènements d'une source, d'un ID et/ou d'un type particulier.
Janel
Janel
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.101 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- EventLog Distant