Comment capturer une trace avec WMI
La capture de traces fait référence au processus d’affichage des journaux de trace. Pour Host Integration Server, cela fait généralement référence à la collecte des données stockées dans des objets de journal de trace dans un fichier unique et à leur enregistrement à un emplacement spécifié. Vous pouvez capturer les informations de trace SNA de la même manière que vous récupérez d’autres informations à partir de Windows Management Instrumentation (WMI). Vous utilisez ExecQuery pour appeler l’objet approprié, puis écrire les informations à l’emplacement souhaité.
Pour capturer une trace
Connectez-vous à l’espace de noms à l’aide de GetObject avec un moniker dans le paramètre .
Récupérez les objets représentant l’application SNA à l’aide de ExecQuery.
Les principales fonctionnalités de capture d’une trace peuvent être décrites dans le code suivant :
Set colItems = objWMIService.ExecQuery("Select * from MsHisTrace_SNAApplication",,48) Set colItems = objWMIService.ExecQuery("Select * from MsHisTrace_SNABase",,48)
Tout le reste de cet exemple consiste à prendre en charge la journalisation dans un fichier.
L’exemple de code suivant montre comment capturer une trace :
On Error Resume Next
strComputer = "."
Dim iCounter
'Initialize
CreateLogFile
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\MicrosoftHIS")
'Validate TraceSnaApplication
iCounter = 0
Set colItems = objWMIService.ExecQuery("Select * from MsHisTrace_SNAApplication",,48)
For Each objItem in colItems
Wscript.Echo "APPCTrace: " & objItem.APPCTrace
Wscript.Echo "CPICTrace: " & objItem.CPICTrace
Wscript.Echo "CSVTrace: " & objItem.CSVTrace
Wscript.Echo "EnabledTraces: " & objItem.EnabledTraces
Wscript.Echo "InternalMessageTrace: " & objItem.InternalMessageTrace
Wscript.Echo "LU62Trace: " & objItem.LU62Trace
Wscript.Echo "LUATrace: " & objItem.LUATrace
Wscript.Echo "T3270Trace: " & objItem.T3270Trace
iCounter = iCounter + 1
Next
if iCounter > 0 then
Wscript.Echo "Number of Instances found " & iCounter
else
Wscript.Echo "No Instances Found"
End If
iCounter = 0
Set colItems = objWMIService.ExecQuery("Select * from MsHisTrace_SNABase",,48)
For Each objItem in colItems
Wscript.Echo "EnabledTraces: " & objItem.EnabledTraces
Wscript.Echo "InternalMessageTrace: " & objItem.InternalMessageTrace
Wscript.Echo "LU62Trace: " & objItem.LU62Trace
Wscript.Echo "T3270Trace: " & objItem.T3270Trace
iCounter = iCounter + 1
Next
if iCounter > 0 then
Wscript.Echo "Number of Instances found " & iCounter
else
Wscript.Echo "No Instances Found"
End If