Monitorování skriptem a pravidla
Rozsah platnosti: System Center 2012 R2 Operations Manager, System Center 2012 - Operations Manager, System Center 2012 SP1 - Operations Manager
Monitorovací skripty se používají, když nelze data shromáždit pomocí jiných standardních prostředků, například čítačů událostí nebo výkonu. Skript shromažďuje data z informace na agenta a vytváří kontejner objektů s použitím MOM. ScriptAPI objekt, který je nainstalován Operations Manager agenta.
Monitorovací skripty lze zapisovat v jakékoli skriptovací jazyk, který může přistupovat MOM. ScriptAPI objekt, který je nainstalován ve všech Operations Manager agenty. Nástroj Operations console můžete vytvářet skripty v jazyce VBScript nebo JScript. Chcete-li použít Windows PowerShell skriptu, je nutné použít jiného nástroje pro vytváření obsahu, jako Vytváření Konzola nástroje System Center Operations Manager 2007 R2 nebo Autor MP.
Kontejnery objektů a dat
Monitorovací skripty posílají veškerá výstupní data jako kontejner objektů a dat tak, aby ho bylo možné vyhodnotit ve výrazu pro monitor nebo namapovat na data výkonu nebo událost pro pravidlo kolekce. Kontejner objektů je sada hodnot, která má každá název. Můžete přiřadit libovolný název, přestože je však vhodné pro použití dané hodnoty popisný název. Kontejner objektů a existuje pouze během doby platnosti pracovního postupu. Při příštím spuštění pracovního postupu, skript je spuštěn a vytvoří nový kontejner objektů s nové hodnoty.
Jeden kontejneru objektů a dat mohou mít číselné hodnoty, i když celou sadu dat nesmí překročit 4 MB. Většina skriptů bude vyžadovat pouze některé hodnoty s celkovou velikost daleko pod tento limit. Neexistuje žádný požadavek pro všechny hodnoty, který bude používán pracovního postupu.
Skripty vytvořit kontejnery objektů pomocí metody CreatePropertyBag na MOM. Objekt ScriptAPI. Pracovní postup používá hodnoty z kontejneru objektů se $Data proměnná, která používá následující syntaxe:
$Data/Property[@Name="PropertyName"]
Skript vytváření údaje o výkonu může například vytvořit kontejner objektů s hodnotami v následující tabulce. Tato tabulka zobrazuje název hodnoty vytvořený skript a odpovídající $Data proměnné, která se používá k mapování vlastnosti kontejneru dat na data výkonu.
Název hodnoty vlastnosti kontejneru |
Hodnota vzorku |
Proměnná |
---|---|---|
Název objektu |
MyObject |
$Data/Property[@Name='ObjectName']$ |
Název_čítače |
MyCounter |
$Data/Property[@Name='CounterName']$ |
InstanceName |
MyInstance |
$Data/Property[@Name='InstanceName']$ |
Hodnota |
10 |
$Data/Property[@Name='Value']$ |
Struktura skriptu
Následující kód ukazuje ukázku monitorovací skript pro ilustraci základní struktura monitorovací skript. Tento ukázkový skript má následující vlastnosti.
Přijímá argumenty pro název počítače, který je při spuštění skriptu a cestu k umístění aplikace.
Vytváří kontejner objektů s hodnotami pojmenovanými ComputerName, InstanceName a 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)
Podrobnosti o jednotlivých částí skriptu jsou zde uvedeny.
sComputerName = WScript.Arguments(0)
sApplicationPath = WScript.Arguments(1)
První dva řádky skriptu přijímat argumenty. Tyto hodnoty by být by měla být v parametru argumenty pravidla nebo monitorování při spuštění skriptu. Skript můžete použít libovolný počet argumentů, které jsou požadovány pro logiku skriptu.
Set oAPI = CreateObject("MOM.ScriptAPI")
Set oBag = oAPI.CreatePropertyBag()
Na dalších dvou řádcích vytvořit kontejner objektů. Tyto řádky budou beze změny také ve většině monitorovací skripty. Hlavním účelem zbytek skript bude pro přidání hodnot do kontejneru objektů a dat pomocí dat, která jsou shromažďovány z počítače agenta.
oBag.AddValue "ComputerName", sComputerName
oBag.AddValue "InstanceName", "MyInstance"
oBag.AddValue "Value", 1.0
Po vytvoření kontejneru objektů a dat lze do něj přidat libovolný počet hodnot. Můžete to provést pomocí AddValue metoda v objektu kontejneru vlastnost s použitím názvu položky a za jeho hodnotu. V tomto příkladu explicitní hodnoty. V skutečný monitorovací skript by další kód očekávat, který bude shromažďovat informace z počítače agenta, které mají být zahrnuty tyto hodnoty.
oAPI.Return(oBag)
Po přidání všech hodnot do kontejneru objektů a dat, je vrácena do pracovního postupu. Tento řádek je třeba zadat a bez něj bude ignorován kontejneru objektů a dat, kdy končí skriptu. Tato metoda se používá pouze v případě skript vytvoří pouze jeden kontejner objektů a. Další informace o skripty, které vrací více kontejnery a podmínky, je-li tato strategie, naleznete Cookdown část Průvodce tvorbou System Center Operations Manager 2007 R2.
Argumenty skriptu
Většina skriptů pomocí argumenty, které jsou hodnoty, které jsou odeslány na skript z příkazového řádku při spuštění skriptu. Pomocí argumentů umožňuje jediného skriptu, který se má použít pro více scénářů bez úpravy samotného skriptu.
V monitorovací skript jsou argumenty důležité, protože mohou existovat informace, které vyžaduje skript, který se bude lišit na každou agentovi, kde bude skript spuštěn. Libovolné vlastnosti cílového objektu pro monitor nebo pravidlo lze použít k hodnotě argumentem skriptu. Tato hodnota je vyřešen jednotlivě u každého agenta v době, je skript spuštěn.
Argumenty, které jsou dostupné v konzole Operations console z Parametry tlačítko. Jednotlivé argumenty by měly být odděleny mezery v pořadí, aby k nim ve skriptu. Toto je shodné s příkazového řádku, který by zadán, je-li se skript spouštěl na příkazovém řádku.
Každý argument může být explicitní hodnota nebo proměnná $Target použita hodnota vlastnosti cílového objektu. Jakékoliv proměnné $Target jsou rozpoznat při spuštění skriptu tak, aby měl skript k dispozici s hodnotami přeložit na příkazovém řádku. V proměnné $Target můžete zadat, pokud znáte správnou syntaxi. Je to snazší i když chcete-li vybrat vlastnost z cíl tlačítko, které se zobrazí všechny vlastnosti cílového objektu a jeho nadřazené položky.
Důležité |
---|
Každá proměnná $Target, která může po vyjádření obsahovat mezeru, by se měla uvádět v uvozovkách. Pokud hodnota obsahuje mezery a nemá uvozovky, poté ji se zobrazí skript jako dva samostatné argumenty. Uvozovky zajišťují, že je hodnota pohlížet jako jeden argument. Pokud vyberete vlastnost z cíl nabídky, můžete také nebude obsahovat uvozovky. Je třeba zadat tyto po provedení výběru vlastnost. |
Ukázkový skript například dřívější očekává dva argumenty pro název počítače a cesta k aplikaci. Za předpokladu, že byl součástí monitoru nebo pravidla s cílem ve třídě hostované třídou počítač se systémem Windows třídy, počítač název může být získán z vlastnosti PrincipalName. Cesta aplikace byla vlastnost v cílové třídě, argumenty, které může vypadat podobně jako v následujícím příkladu. Použití uvozovek kolem vlastnost ApplicationPath, protože může vyřešit hodnotu, která obsahuje mezery.
$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$ "$Target/Property[Type="MyApp.MyClass"]/ApplicationPath$"
Za předpokladu, že jste zadali jako název skriptu MyScript.vbs, název počítače byl MyServer01, a cesta aplikace byla C:\Program Files\Contoso\My Application, příkazového řádku, který chcete spustit pro tento skript by být:
MyScript.vbs MyServer01 "C:\Program Files\Contoso\My Application"
Skript monitory a pravidla témata
Pravidla shromažďování skriptu
Vytvoření pravidla, která používá skript ke shromáždění výkonu nebo data události.
-
Vytváření monitoru, který se vyhodnotí výsledky skript, který nastaví svůj stav.
Monitorování příkazového prostředí systému UNIX/Linux
Vytváření monitoru, který se vyhodnotí výstup provádění příkazu systému UNIX/Linux, skript nebo jednořádkové posloupnost více příkazů (s použitím kanálu operátory).