Skriptet Övervakare och regler
Gäller för: System Center 2012 R2 Operations Manager, System Center 2012 - Operations Manager, System Center 2012 SP1 - Operations Manager
Övervakningsskript används när när de data som krävs inte kan samlas in på vanligt sätt, till exempel när det gäller händelser och prestandaräknare. Skriptet samlar in data från information på agenten och skapar en egenskapsuppsättning med hjälp av MOM. ScriptAPI objekt som installeras med den Operations Manager agent.
Övervakningsskript kan skrivas i alla skriptspråk som kan komma åt MOM. ScriptAPI objekt som är installerad på alla Operations Manager agenter. Du kan använda Operations-konsolen för att skapa skript i VBScript eller JScript. Att använda en Windows PowerShell skript, måste du använda en annan Authoring tool som den System Center Operations Manager 2007 R2 Authoring-konsolen eller MP författare.
Egenskapsuppsättningar
Övervakningsskript skickar alla data som en egenskap säck så att den kan utvärderas i ett uttryck för en Övervakare eller mappas till prestandadata eller en händelse för en regel för insamling. En egenskapsuppsättning är en uppsättning värden med ett namn. Vilket namn som kan tilldelas även om det är bäst att använda ett namn som beskrivande för just det värdet. Det finns bara en egenskapsuppsättning under av arbetsflödet. Nästa gång som arbetsflödet kör skriptet körs och skapar en ny egenskapsuppsättning med nya värden.
En egenskapsuppsättning kan ha några värden, även om hela uppsättning data inte får överskrida 4 MB. De flesta skript kräver endast vissa värden med totalstorlek långt under gränsen. Det finns inga krav för alla värden som ska användas av arbetsflödet.
Skript skapa egenskapsuppsättningar med hjälp av metoden CreatePropertyBag på MOM. ScriptAPI objekt. Arbetsflödet använder värden från en egenskapsuppsättning med en $Data variabel som använder du följande syntax:
$Data/Property[@Name="PropertyName"]
Ett skript som skapar prestandadata kan till exempel skapa en egenskapsuppsättning med värden i följande tabell. Den här tabellen visar namnet på det värde som skapats av skriptet och motsvarande $Data variabeln som används för att mappa egenskapen egenskapsdata data till prestandadata.
Egenskapsnamn egenskapsdata värde |
Exempelvärde |
Variabel |
---|---|---|
Objektnamn |
MyObject |
$Data/Property[@Name='ObjectName']$ |
CounterName |
Minräknare |
$Data/Property[@Name='CounterName']$ |
Instansnamn |
MyInstance |
$Data/Property[@Name='InstanceName']$ |
Värde |
10 |
$Data/Property[@Name='Value']$ |
Skript
Följande kod visar ett exempel övervakning skript för att illustrera ett övervakningsskript grundläggande struktur. Det här exempelskriptet har följande egenskaper.
Tillåter argument för namnet på den dator som kör skriptet och en sökväg till mapp där programmet.
Skapar en egenskapsuppsättning med värden som får namnet datornamn, InstanceName och PerfValue.
sComputerName = WScript.Arguments(0)
sApplicationPath = WScript.Arguments(1)
Set oAPI = CreateObject("MOM.ScriptAPI")
Set oBag = oAPI.CreatePropertyBag()
oBag.AddValue "ComputerName", sComputerName
oBag.AddValue "InstanceName", "MyInstance"
oBag.AddValue "Value", 1.0
oAPI.Return(oBag)
Information om varje avsnitt i skriptet beskrivs här.
sComputerName = WScript.Arguments(0)
sApplicationPath = WScript.Arguments(1)
De två första raderna i skriptet acceptera argument. Dessa värden kan förväntas vara i parametern argument för regeln eller övervakaren kör skriptet. Skriptet kan använda valfritt antal argument som krävs för skriptet logik.
Set oAPI = CreateObject("MOM.ScriptAPI")
Set oBag = oAPI.CreatePropertyBag()
Två rader skapar en egenskapsuppsättning. Dessa rader är också oförändrat i de flesta övervakningsskript. Syftet med resten av skriptet kommer att lägga till värden med hjälp av data som samlas in från agentdatorn egenskapsuppsättningen.
oBag.AddValue "ComputerName", sComputerName
oBag.AddValue "InstanceName", "MyInstance"
oBag.AddValue "Value", 1.0
När du har skapat egenskapsuppsättningen kan valfritt antal värden läggas till den. Det gör du med AddValue metoden för egenskapen egenskapsdata objekt med namnet på objektet följt dess värde. Det här exemplet används explicit värden. I faktiska övervakningsskript förväntas ytterligare kod som kan samla in information från agentdatorn ska ingå i dessa värden.
oAPI.Return(oBag)
När alla värden läggs till egenskapsuppsättningen, returneras den till arbetsflödet. Den här raden krävs och utan egenskapsuppsättningen ignoreras när skriptet avslutas. Den här metoden används bara när skriptet skapar en enkel egenskapsuppsättning. Mer information om skript som returnerar flera egenskapsuppsättningar och villkor när sådana även skapa används referera till den Cookdown delen av den Redigeringsguiden för System Center Operations Manager 2007 R2.
Skriptargument
De flesta skript använda argument som värden som skickas till skriptet från kommandoraden när skriptet körs. Med hjälp av argument kan ett enda skript som ska användas för flera scenarier utan att ändra själva skriptet.
Argumenten är viktiga i ett övervakningsskript eftersom det kan finnas information som krävs för skriptet som är olika på varje agent där skriptet körs. Vilken egenskap som helst i målobjektet för övervakning eller regel kan användas för värdet för ett skriptargument. Det här värdet är löst individuellt på varje agent när skriptet körs.
Argument används i Operations-konsolen från den Parametrar knappen. Enskilda argument ska avgränsas med blanksteg i den ordning som de används i skriptet. Det här är identisk med kommandoraden som skulle ha sett om skriptet kördes på kommandoraden.
Varje argument kan vara antingen ett explicit värde eller en variabel för $Target att använda värdet för en egenskap hos målobjektet. Alla $Target-variabler ersätts när skriptet körs så att de egentliga värdena används på kommandoraden. Du kan skriva i variabeln $Target om du känner till korrekt syntax. Det är enklare att välja egenskapen från mål knappen som visas en lista över alla egenskaper i målobjektet och dess överordnade.
![]() |
---|
Alla $Target-variabler som kan komma att ersättas med ett värde som innehåller blanksteg ska stå inom citattecken. Om ett värde innehåller blanksteg och inte har citattecken, kan sedan den ses av skriptet som två separata argument. Citattecknen ser till att värdet visas som ett enda argument. Om du väljer egenskapen från mål menyn citattecknen inbegriper inte för dig. Du måste ange dessa i när du har valt egenskapen. |
Till exempel förutsätter exempelskriptet tidigare två argument för namnet på datorn och sökvägen till programmet. Om det var en del av en övervakning eller regel vars mål var en klass i Windows-dator class, datorn namn kunde hämtas från egenskapen PrincipalName. Om sökvägen till programmet har en egenskap i målklassen, kan argumenten se ut i följande exempel. Lägg märke till citattecknen runt egenskapen ApplicationPath eftersom den kan ersättas av ett värde som innehåller ett blanksteg.
$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$ "$Target/Property[Type="MyApp.MyClass"]/ApplicationPath$"
Förutsatt att du gav skriptet ett namn på MyScript.vbs, datornamnet har MyServer01, och sökvägen till programmet var C:\Program Files\Contoso\My Application, kommandoraden som körs för det här skriptet är:
MyScript.vbs MyServer01 "C:\Program Files\Contoso\My Application"
Skriptet Övervakare och regler ämnen
-
Skapa en regel som använder ett skript för att samla in prestanda eller händelsedata.
-
Skapa en Övervakare som utvärderar resultaten av ett skript för att ange dess hälsostatus.
UNIX/Linux-gränssnittet kommandot Övervakare
Skapa en Övervakare som utvärderar utdata från körningen av en UNIX/Linux-kommandot, skript eller en rad sekvens med flera kommandon (med pipeline operatörer).