Question
Gestion asynchrone d'un événement
- Lymnia
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 52
- Remerciements reçus 0
il y a 15 ans 7 mois #7518
par Lymnia
Pour WMI, pensez à scriptomatic ça peut aider quand on connait pas la classe que l'on voudrait utiliser.
Gestion asynchrone d'un événement a été créé par Lymnia
Bonjour,
J'ai créer des scripts pour faire des bascule des mes ressources sur les nœuds de mes cluster.
Ce que cherche à faire c'est de vérifier si m'a bascule à bien été réalisé. pour celà je me base sur les évènements créés 1201 pour une ressource online et 1204 pour une ressource offline.
Vue que les bascules sont schedulées je pensais rajouter la vérification via des job mais là je sèche.
j'ai tenté un Register-WMIEVENT:
[code:1]$query = \"SELECT * from __InstanceCreationEvent
WHERE Targetinstance ISA 'Win32_NTLogEvent' AND Targetinstance.EventCode = 1201\"
$Action = {Write-host \"L'événement à été déclenché.\"}
Register-WMIEVENT -query $query -SourceID 'test' -Action $Action -Computername $NomNoeud -credential $Login[/code:1]
Mais il se passe rien quand le log est créé.
Là je me dis c'est pas ça, vas voir sur le site
Je tombe sur powershell-scripting.com/index.php?optio...645&catid=5#6645
et là je tombe sur le fin fond du problème le get-eventlog sur 2008 ...
le logname de mon event c'est :Microsoft-Windows-FailoverClustering/Operational (contrairement aux serveurs 2003 où mon évent se trouve sur System)
et ça passe pas:dry:
Si quelqu'un sait comment faire. Merci d'avance.
J'ai créer des scripts pour faire des bascule des mes ressources sur les nœuds de mes cluster.
Ce que cherche à faire c'est de vérifier si m'a bascule à bien été réalisé. pour celà je me base sur les évènements créés 1201 pour une ressource online et 1204 pour une ressource offline.
Vue que les bascules sont schedulées je pensais rajouter la vérification via des job mais là je sèche.
j'ai tenté un Register-WMIEVENT:
[code:1]$query = \"SELECT * from __InstanceCreationEvent
WHERE Targetinstance ISA 'Win32_NTLogEvent' AND Targetinstance.EventCode = 1201\"
$Action = {Write-host \"L'événement à été déclenché.\"}
Register-WMIEVENT -query $query -SourceID 'test' -Action $Action -Computername $NomNoeud -credential $Login[/code:1]
Mais il se passe rien quand le log est créé.
Là je me dis c'est pas ça, vas voir sur le site
Je tombe sur powershell-scripting.com/index.php?optio...645&catid=5#6645
et là je tombe sur le fin fond du problème le get-eventlog sur 2008 ...
le logname de mon event c'est :Microsoft-Windows-FailoverClustering/Operational (contrairement aux serveurs 2003 où mon évent se trouve sur System)
et ça passe pas:dry:
Si quelqu'un sait comment faire. Merci d'avance.
Pour WMI, pensez à scriptomatic ça peut aider quand on connait pas la classe que l'on voudrait utiliser.
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 15 ans 7 mois #7520
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:Gestion asynchrone d'un événement
Salut,
Lymnia écrit:
[code:1]
$query = \"SELECT * FROM __instancecreationevent WHERE TargetInstance ISA 'Win32_NtLogEvent' AND TargetInstance.eventcode = '1201'\"
#Vérifier l'état du job
get-job -Name 'test'
#récupérer une possible erreur
Receive-job -Name 'test' -keep
[/code:1]
Lymnia écrit:
Lymnia écrit:
La syntaxe de ta requête est peut être erronée, essaie avec celle-ci :Mais il se passe rien quand le log est créé.
[code:1]
$query = \"SELECT * FROM __instancecreationevent WHERE TargetInstance ISA 'Win32_NtLogEvent' AND TargetInstance.eventcode = '1201'\"
#Vérifier l'état du job
get-job -Name 'test'
#récupérer une possible erreur
Receive-job -Name 'test' -keep
[/code:1]
Lymnia écrit:
Tu ne t'es pas trompé de post ?Je tombe sur
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Lymnia
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 52
- Remerciements reçus 0
il y a 15 ans 7 mois #7529
par Lymnia
Pour WMI, pensez à scriptomatic ça peut aider quand on connait pas la classe que l'on voudrait utiliser.
Réponse de Lymnia sur le sujet Re:Gestion asynchrone d'un événement
J'ai trouvé là où cela plante 
c'est dans la requête... la class fonctionne très bien c'est l'EventCode qui n'est pas trouvé
.
J'ai essayé avec EventID mais pareil.
J'essaye de trouver et j'édite quand c'est fait.

[code:1]#La ligne ne renvoie aucune erreur
Receive-job -Name 'test' -keep[/code:1]
Merci si vous trouvez avant moi
c'est dans la requête... la class fonctionne très bien c'est l'EventCode qui n'est pas trouvé
J'ai essayé avec EventID mais pareil.
J'essaye de trouver et j'édite quand c'est fait.
[code:1]#La ligne ne renvoie aucune erreur
Receive-job -Name 'test' -keep[/code:1]
Merci si vous trouvez avant moi
Pour WMI, pensez à scriptomatic ça peut aider quand on connait pas la classe que l'on voudrait utiliser.
Connexion ou Créer un compte pour participer à la conversation.
- Richard Lazaro
- Hors Ligne
- Membre platinium
-
Réduire
Plus d'informations
- Messages : 530
- Remerciements reçus 0
il y a 15 ans 7 mois #7541
par Richard Lazaro
Think-MS : (Get-Life).Days | %{ Learn-More }
\\"Problems cannot be solved by the same level of thinking that created them.\\" - Albert Einstein
Réponse de Richard Lazaro sur le sujet Re:Gestion asynchrone d'un événement
Bonjour,
D'après la doc msdn msdn.microsoft.com/en-us/library/aa394226.aspx sur cette classe Win32, c'est bien l'attribut EventCode qu'il faut filtrer ... après, es tu sur du code de l'event ?
Je suis pas un expert dans la gestion d'event ...
Bien Cordialement,
Richard Lazaro.
D'après la doc msdn msdn.microsoft.com/en-us/library/aa394226.aspx sur cette classe Win32, c'est bien l'attribut EventCode qu'il faut filtrer ... après, es tu sur du code de l'event ?
Je suis pas un expert dans la gestion d'event ...
Bien Cordialement,
Richard Lazaro.
Think-MS : (Get-Life).Days | %{ Learn-More }
\\"Problems cannot be solved by the same level of thinking that created them.\\" - Albert Einstein
Connexion ou Créer un compte pour participer à la conversation.
- Lymnia
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 52
- Remerciements reçus 0
il y a 15 ans 7 mois #7545
par Lymnia
Pour WMI, pensez à scriptomatic ça peut aider quand on connait pas la classe que l'on voudrait utiliser.
Réponse de Lymnia sur le sujet Re:Gestion asynchrone d'un événement
Sur le site suivant :
www.scriptinganswers.com/forum2/forum_posts.asp?TID=1042
, ils indiquent qu'il faut faire de cette manière (je reprends l'exemple donné sur le site.):
[code:1](\"SELECT * FROM __InstanceCreationEvent \" &_
\"WITHIN 10 \" & _
\"WHERE Targetinstance ISA 'CIM_DirectoryContainsFile' \" &_
\"AND (TargetInstance.GroupComponent= 'Win32_Directory.Name=\"\"c:\\\\scripts\\\\test1\"\"' \" &_
\"OR TargetInstance.GroupComponent= 'Win32_Directory.Name=\"\"c:\\\\scripts\\\\test2\"\"')\"«»)[/code:1]
cependant, j'ai toujours note found si je fait
[code:1] $query = \"Select * from __InstanceCreationEvent WHERE Targetinstance ISA 'Win32_NTLogEvent' AND TargetInstance.GroupComponent='Win32_NtLogEvent.EventCode=\"\"1201\"\"'\"[/code:1]
Peut être est-ce le mauvais EventCode car en réalité j'ai utilisé l'event id du log en pensant que les deux étaient liés.
, ils indiquent qu'il faut faire de cette manière (je reprends l'exemple donné sur le site.):
[code:1](\"SELECT * FROM __InstanceCreationEvent \" &_
\"WITHIN 10 \" & _
\"WHERE Targetinstance ISA 'CIM_DirectoryContainsFile' \" &_
\"AND (TargetInstance.GroupComponent= 'Win32_Directory.Name=\"\"c:\\\\scripts\\\\test1\"\"' \" &_
\"OR TargetInstance.GroupComponent= 'Win32_Directory.Name=\"\"c:\\\\scripts\\\\test2\"\"')\"«»)[/code:1]
cependant, j'ai toujours note found si je fait
[code:1] $query = \"Select * from __InstanceCreationEvent WHERE Targetinstance ISA 'Win32_NTLogEvent' AND TargetInstance.GroupComponent='Win32_NtLogEvent.EventCode=\"\"1201\"\"'\"[/code:1]
Peut être est-ce le mauvais EventCode car en réalité j'ai utilisé l'event id du log en pensant que les deux étaient liés.
Pour WMI, pensez à scriptomatic ça peut aider quand on connait pas la classe que l'on voudrait utiliser.
Connexion ou Créer un compte pour participer à la conversation.
- Lymnia
- Auteur du sujet
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 52
- Remerciements reçus 0
il y a 15 ans 7 mois #7546
par Lymnia
Pour WMI, pensez à scriptomatic ça peut aider quand on connait pas la classe que l'on voudrait utiliser.
Réponse de Lymnia sur le sujet Re:Gestion asynchrone d'un événement
DSl, doublon à la publication du poste.<br><br>Message édité par: Lymnia, à: 4/08/10 12:37
Pour WMI, pensez à scriptomatic ça peut aider quand on connait pas la classe que l'on voudrait utiliser.
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.064 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Gestion asynchrone d'un événement