Udostępnij za pośrednictwem


Skrypt monitory i reguły

 

Dotyczy: System Center 2012 R2 Operations Manager, System Center 2012 - Operations Manager, System Center 2012 SP1 - Operations Manager

Skrypty monitorowania są używane, gdy żądanych danych nie można zgromadzić za pomocą innych środków standardowych, takich jak licznik zdarzeń lub wydajności. Skrypt zbiera dane z informacji w agencie i tworzy zbiór właściwości przy użyciu MOM. Obiekt ScriptAPI, że jest zainstalowany z Operations Manager agenta.

Skrypty monitorowania można pisać w dowolnym języku skryptów, które mogą uzyskiwać dostęp do MOM. Obiekt ScriptAPI, który jest zainstalowany na wszystkich Operations Manager agentów. Konsoli operacje służy do tworzenia skryptów w języku VBScript lub JScript. Aby użyć Windows PowerShell skryptu, musisz użyć innego narzędzia redakcyjnego, takich jak Tworzenie konsoli programu System Center Operations Manager 2007 R2 lub Informacje o autorze MP.

Zbiory właściwości

Skrypty monitorowania wysyłają wszelkie dane wyjściowe jako właściwość torba tak, aby jego obliczanego w wyrażeniu monitora lub mapowane na dane wydajności lub zdarzenie dla reguła zbierania danych. Zbiór właściwości to zbiór wartości, że każda ma nazwę. Można przypisać dowolną nazwę, jednak jest najlepiej jest używać nazwy opisowej określonej wartości. Zbiór właściwości istnieje tylko w czasie trwania przepływu pracy. Podczas następnego, która uruchamia przepływ pracy, skrypt jest uruchamiany i tworzy nowy pakiet właściwości z nowej wartości.

Jednego zbioru właściwości może mieć wszelkie wartości liczbowe, mimo że cały zestaw danych nie może być dłuższe niż 4 MB. Większość skrypty będzie wymagać tylko niektóre wartości z całkowity rozmiar daleko poniżej tego limitu. Nie jest wymagana dla wszystkich wartości, który będzie używany przez przepływ pracy.

Skrypty tworzyć zbiory właściwości przy użyciu metody CreatePropertyBag na MOM. Obiekt ScriptAPI. Przepływ pracy używa wartości ze zbioru właściwości ze zmienną $Data, który używa następującej składni:

$Data/Property[@Name="PropertyName"]

Tworzenie danych wydajności skryptu może na przykład utworzyć zbiór właściwości z wartościami w poniższej tabeli. Ta tabela zawiera nazwę wartości utworzony przez skrypt, a odpowiednie zmiennej $Data, która może być używany do mapowania danych kolejki właściwości do danych wydajności.

Nazwa wartości zbioru właściwości

Przykładowa wartość

Zmienna

Nazwa obiektu

MyObject

$Data/Property[@Name='ObjectName']$

CounterName

Mójlicznik

$Data/Property[@Name='CounterName']$

Nazwa_wystąpienia

MyInstance

$Data/Property[@Name='InstanceName']$

Wartość

10

$Data/Property[@Name='Value']$

Struktura skryptu

Poniższy kod Pokazuje przykładowy skrypt w celu przedstawienia podstawowa struktura skrypt monitorowania monitorowania. Ten przykładowy skrypt ma następujące właściwości.

  • Akceptuje argumenty dla nazwy komputera, na którym działa skrypt i ścieżka lokalizacji aplikacji.

  • Tworzy zbiór właściwości zawierający wartości o nazwie ComputerName InstanceName i 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)

Szczegóły dotyczące każdej sekcji skrypt opisano w tym miejscu.

sComputerName = WScript.Arguments(0) 
sApplicationPath = WScript.Arguments(1)

Pierwsze dwa wiersze skryptu akceptuje argumenty. Te wartości oczekiwano, że można w parametrze argumenty zasady lub monitora skrypt wykonywany. Skrypt można użyć dowolnej liczby argumentów, które są wymagane dla logiki skryptu.

Set oAPI = CreateObject("MOM.ScriptAPI")
Set oBag = oAPI.CreatePropertyBag()

Następne dwa wiersze utworzyć zbiór właściwości. Te wiersze również pozostanie niezmieniona w większości skrypty monitorowania. Głównym celem pozostałych skryptu będzie można dodać wartości do zbioru właściwości przy użyciu danych zbieranych na komputerze agenta.

oBag.AddValue "ComputerName", sComputerName
oBag.AddValue "InstanceName", "MyInstance"
oBag.AddValue "Value", 1.0

Po utworzeniu zbioru właściwości dowolną liczbę wartości można dodać do niego. W tym z AddValue metody w obiekcie zbioru właściwości przy użyciu nazwy elementu i jego wartość. W tym przykładzie zastosowano wartości jawną. W rzeczywistych skrypcie monitorowania dodatkowy kod oczekuje się, który może zbierać informacje z komputera agenta do uwzględnienia w tych wartości.

oAPI.Return(oBag)

Po dodaniu wszystkich wartości do zbioru właściwości, jest zwracana w przepływ pracy. Ten wiersz jest wymagana, a bez tego zbioru właściwości zostanie usunięty po zakończeniu skryptu. Ta metoda jest używana tylko w przypadku, gdy skrypt tworzy zbiór jednej właściwości. Aby uzyskać więcej informacji na temat skryptów, które zwracają wiele zbiory właściwości i warunków, gdy jest używane tej strategii odwoływać się do Cookdown sekcję Przewodnik przygotowania programu System Center Operations Manager 2007 R2.

Argumenty skryptu

Większość skrypty użycia argumentów, które są wartości, które są wysyłane do skryptu w wierszu polecenia, gdy skrypt jest uruchamiany. Za pomocą argumentów umożliwia pojedynczy skrypt ma być używany dla wielu scenariuszy bez modyfikowania samego skryptu.

W skrypcie monitorowania argumenty są krytyczne, ponieważ może być informacje wymagające skrypt, który będzie się różniła dla każdego agenta, gdy skrypt jest uruchamiany. Dowolnej właściwości obiektu docelowego monitora lub reguły można uzyskać wartość argumentu skryptu. Ta wartość rozwiązania osobno dla każdego agenta w chwili uruchomienia skryptu.

Argumenty są dostępne w konsoli operacje z Parametry przycisku. Oddzielne argumenty powinny być rozdzielone spacjami w kolejności, że są one używane w skrypcie. Jest to identyczne z wierszem polecenia udostępnianym, jeśli skrypt został uruchomiony w wierszu polecenia.

Każdy argument może być wartością jawną albo zmienną $Target, aby użyć wartości właściwości w obiekcie docelowym. Wszelkie zmienne $Target są rozwiązywane w chwili uruchomienia skryptu, dzięki czemu skrypt otrzymuje rozwiązane wartości w wierszu polecenia. Można wpisać w zmiennej $Target, jeśli znasz poprawnej składni. Mimo że łatwiej jest wybierz właściwość z cel przycisk, która spowoduje wyświetlenie listy wszystkich właściwości obiektu docelowego i jego elementów nadrzędnych.

System_CAPS_importantWażne

Dowolna wartość $Target, która może zostać rozwiązana do wartości zawierającej spację, powinna zostać ujęta w znaki cudzysłowu. Jeśli wartość zawiera spację i nie ma znaków cudzysłowu, następnie go będą widoczne przez skrypt jako dwa oddzielne argumenty. Znaki cudzysłowu zapewniają, że wartość jest wyświetlona jako jeden argument. Jeśli wybierzesz właściwość z cel menu, nie będzie zawierać znaki cudzysłowu dla Ciebie. Należy wpisać je w po wybraniu właściwości.

Na przykład wcześniejszy skrypt przykładowy oczekuje dwóch argumentów dla nazwy komputera i ścieżka aplikacji. Zakładając, że było to częścią monitora lub reguły, której elementem docelowym jest klasa udostępniana przez komputer z systemem Windows klasy komputera można pobrać nazwy z właściwości PrincipalName. Jeśli ścieżka aplikacji była właściwością klasy docelowej, argumenty mogą wyglądać podobnie jak w poniższym przykładzie. Uwaga znaki cudzysłowu wokół właściwości ApplicationPath, ponieważ może ona zostać rozwiązana do wartości zawierającej spację.

$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$ "$Target/Property[Type="MyApp.MyClass"]/ApplicationPath$"

Zakładając, że udostępniła nazwę skryptu MyScript.vbs, nazwa komputera jest MyServer01, i ścieżka aplikacji była C:\Program Files\Contoso\My Application, wiersz polecenia, który będzie można uruchomić ten skrypt powinien mieć:

MyScript.vbs MyServer01 "C:\Program Files\Contoso\My Application"

Tematy reguły i monitory skryptu