Condividi tramite


Come acquisire una traccia con WMI

L'acquisizione di traccia fa riferimento al processo di visualizzazione dei log di traccia. Per Host Integration Server, questo si riferisce in genere alla confronto dei dati archiviati negli oggetti di log di traccia in un singolo file e salvarlo in una posizione specificata. È possibile acquisire informazioni di traccia SNA nello stesso modo in cui si recuperano altre informazioni da Strumentazione gestione Windows (WMI). Si usa ExecQuery per effettuare una chiamata all'oggetto pertinente e quindi scrivere le informazioni nella posizione desiderata.

Per acquisire una traccia

  1. Connettersi allo spazio dei nomi usando GetObject con un moniker nel parametro.

  2. Recuperare gli oggetti che rappresentano l'applicazione SNA usando ExecQuery.

    La funzionalità di base dell'acquisizione di una traccia può essere descritta nel codice seguente:

    Set colItems = objWMIService.ExecQuery("Select * from MsHisTrace_SNAApplication",,48)  
    Set colItems = objWMIService.ExecQuery("Select * from MsHisTrace_SNABase",,48)  
    

    Tutto il resto di questo esempio consiste nel supportare la registrazione in un file.

    Nell'esempio di codice seguente viene illustrato come acquisire una traccia:

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