Śledzenie zaktualizowanych plików za pomocą zadania obserwatora

Usługa Azure Automation używa zadania obserwatora do wyszukiwania zdarzeń i akcji wyzwalania za pomocą elementów Runbook programu PowerShell. Zadanie obserwatora zawiera dwie części, obserwatora i akcję. Element Runbook obserwatora jest uruchamiany w interwale zdefiniowanym w zadaniu obserwatora i generuje dane do elementu Runbook akcji.

Uwaga

Zadania obserwatora nie są obsługiwane na platformie Microsoft Azure obsługiwanej przez firmę 21Vianet.

Ważne

Począwszy od maja 2020 r. korzystanie z usługi Azure Logic Apps jest zalecanym i obsługiwanym sposobem monitorowania zdarzeń, planowania cyklicznych zadań i akcji wyzwalacza. Zobacz Planowanie i uruchamianie cyklicznych zautomatyzowanych zadań, procesów i przepływów pracy za pomocą usługi Azure Logic Apps.

W tym artykule opisano proces tworzenia zadania obserwatora do monitorowania, gdy nowy plik zostanie dodany do katalogu. Dowiedz się, jak odbywa się:

  • Importowanie elementu Runbook obserwatora
  • Tworzenie zmiennej automatyzacji
  • Tworzenie elementu Runbook akcji
  • Tworzenie zadania obserwatora
  • Wyzwalanie obserwatora
  • Sprawdzanie danych wyjściowych

Wymagania wstępne

Aby ukończyć ten artykuł, wymagane są następujące elementy:

  • Subskrypcja platformy Azure. Jeśli nie masz subskrypcji, możesz aktywować korzyści dla subskrybentów MSDN lub utworzyć bezpłatne konto.
  • Konto usługi Automation do przechowywania elementów Runbook obserwatora i akcji oraz zadania obserwatora.
  • Hybrydowy proces roboczy elementu Runbook, w którym jest uruchamiane zadanie obserwatora.
  • Elementy Runbook programu PowerShell. Elementy Runbook przepływu pracy programu PowerShell i graficzne elementy Runbook nie są obsługiwane przez zadania obserwatora.

Importowanie elementu Runbook obserwatora

W tym artykule użyto elementu Runbook obserwatora o nazwie Runbook watcher, który wyszukuje nowe pliki w katalogu , aby wyszukać nowe pliki w katalogu. Element Runbook obserwatora pobiera ostatni znany czas zapisu do plików w folderze i analizuje wszystkie pliki nowsze niż ten znak wodny.

Ten element Runbook można zaimportować do konta usługi Automation z portalu, wykonując następujące kroki.

  1. Zaloguj się w witrynie Azure Portal.
  2. Wyszukaj i wybierz pozycję Konta usługi Automation.
  3. Na stronie Konta usługi Automation wybierz nazwę konta usługi Automation z listy.
  4. W okienku po lewej stronie wybierz pozycję Galeria elementów Runbook w obszarze Automatyzacja procesów.
  5. Upewnij się, że na liście rozwijanej Źródło wybrano pozycję GitHub.
  6. Wyszukaj element Runbook watcher.
  7. Wybierz element Runbook watcher, który szuka nowych plików w katalogu, a następnie wybierz pozycję Importuj na stronie szczegółów.
  8. Nadaj elementowi Runbook nazwę i opcjonalnie opis, a następnie kliknij przycisk OK , aby zaimportować element Runbook na konto usługi Automation. W okienku w prawym górnym rogu okna powinien zostać wyświetlony komunikat Import successful (Importowanie zakończone powodzeniem ).
  9. Zaimportowany element Runbook zostanie wyświetlony na liście pod nazwą nadaną podczas wybierania elementów Runbook w okienku po lewej stronie.
  10. Kliknij element Runbook, a następnie na stronie szczegółów elementu Runbook wybierz pozycję Edytuj , a następnie kliknij pozycję Publikuj. Po wyświetleniu monitu kliknij przycisk Tak , aby opublikować element Runbook.

Element Runbook można również pobrać z organizacji usługi Azure Automation GitHub.

  1. Przejdź do strony organizacji usługi Azure Automation GitHub dla pozycji Watch-NewFile.ps1.
  2. Aby pobrać element Runbook z usługi GitHub, wybierz pozycję Kod po prawej stronie, a następnie wybierz pozycję Pobierz plik ZIP , aby pobrać cały kod w pliku zip.
  3. Wyodrębnij zawartość i zaimportuj element Runbook.

Tworzenie zmiennej automatyzacji

Zmienna automatyzacji służy do przechowywania sygnatur czasowych, które poprzedni element Runbook odczytuje i przechowuje z każdego pliku.

  1. Wybierz pozycję Zmienne w obszarze Udostępnione zasoby i kliknij pozycję + Dodaj zmienną.

  2. Wprowadź nazwę Watch-NewFileTimestamp .

  3. Wybierz wartość DateTime dla typu. Wartość domyślna to bieżąca data i godzina.

    Screenshot of creating a new variable blade.

  4. Kliknij przycisk Utwórz , aby utworzyć zmienną automatyzacji.

Tworzenie elementu Runbook akcji

Element Runbook akcji jest używany w zadaniu obserwatora do działania na danych przekazanych do niego z elementu Runbook obserwatora. Musisz zaimportować wstępnie zdefiniowany element runbook akcji z witryny Azure Portal z organizacji usługi Azure Automation GitHub.

Ten element Runbook można zaimportować do konta usługi Automation w witrynie Azure Portal:

  1. Zaloguj się w witrynie Azure Portal.
  2. Wyszukaj i wybierz pozycję Konta usługi Automation.
  3. Na stronie Konta usługi Automation wybierz nazwę konta usługi Automation z listy.
  4. W okienku po lewej stronie wybierz pozycję Galeria elementów Runbook w obszarze Automatyzacja procesów.
  5. Upewnij się, że na liście rozwijanej Źródło wybrano pozycję GitHub.
  6. Wyszukaj akcję Obserwatora, wybierz akcję obserwatora, która przetwarza zdarzenia wyzwalane przez element Runbook obserwatora, a następnie kliknij przycisk Importuj.
  7. Opcjonalnie zmień nazwę elementu Runbook na stronie importu, a następnie kliknij przycisk OK , aby zaimportować element Runbook. W okienku powiadomień w prawym górnym rogu przeglądarki powinien zostać wyświetlony komunikat Import successful (Importowanie pomyślnego importu).
  8. Przejdź do strony Konto usługi Automation i kliknij pozycję Elementy Runbook po lewej stronie. Nowy element Runbook powinien być wymieniony pod nazwą nadaną w poprzednim kroku. Kliknij element Runbook, a następnie na stronie szczegółów elementu Runbook wybierz pozycję Edytuj , a następnie kliknij pozycję Publikuj. Po wyświetleniu monitu kliknij przycisk Tak , aby opublikować element Runbook.

Aby utworzyć element Runbook akcji, pobierając go z organizacji usługi Azure Automation GitHub:

  1. Przejdź do strony organizacji usługi Azure Automation w usłudze GitHub w obszarze Process-NewFile.ps1.
  2. Aby pobrać element Runbook z usługi GitHub, wybierz pozycję Kod po prawej stronie, a następnie wybierz pozycję Pobierz plik ZIP , aby pobrać cały kod w pliku zip.
  3. Wyodrębnij zawartość i zaimportuj element Runbook.

Tworzenie zadania obserwatora

W tym kroku skonfigurujesz zadanie obserwatora odwołujące się do obserwatora i elementów Runbook akcji zdefiniowanych w poprzednich sekcjach.

  1. Przejdź do konta usługi Automation i wybierz pozycję Zadania obserwatora w obszarze Automatyzacja procesów.

  2. Wybierz stronę Zadania obserwatora i kliknij pozycję + Dodaj zadanie obserwatora.

  3. Wprowadź nazwę WatchMyFolder .

  4. Wybierz pozycję Konfiguruj obserwatora i wybierz element Runbook Watch-NewFile .

  5. Wprowadź następujące wartości parametrów:

    • FOLDERPATH — folder w hybrydowym procesie roboczym elementu Runbook, w którym tworzone są nowe pliki, na przykład d:\examplefiles.
    • EXTENSION — rozszerzenie konfiguracji. Pozostaw pole puste, aby przetworzyć wszystkie rozszerzenia plików.
    • RECURSE — operacja rekursywna. Pozostaw tę wartość jako domyślną.
    • USTAWIENIA URUCHAMIANIA — ustawienie uruchamiania elementu Runbook. Wybierz hybrydowy proces roboczy.
  6. Kliknij przycisk OK, a następnie wybierz, aby powrócić do strony Obserwator.

  7. Wybierz pozycję Konfiguruj akcję i wybierz element Runbook Process-NewFile .

  8. Wprowadź następujące wartości parametrów:

    • EVENTDATA — dane zdarzenia. Pozostaw to pole puste. Dane są przekazywane z elementu Runbook obserwatora.
    • Uruchom Ustawienia — ustawienie uruchamiania elementu Runbook. Pozostaw jako platformę Azure, ponieważ ten element Runbook działa w usłudze Azure Automation.
  9. Kliknij przycisk OK, a następnie wybierz, aby powrócić do strony Obserwator.

  10. Kliknij przycisk OK , aby utworzyć zadanie obserwatora.

    Screenshot of configuring watcher action in the Azure portal.

Wyzwalanie obserwatora

Aby upewnić się, że zadanie obserwatora działa zgodnie z oczekiwaniami, należy uruchomić test zgodnie z poniższym opisem.

  1. Zdalnie do hybrydowego procesu roboczego elementu Runbook.
  2. Otwórz program PowerShell i utwórz plik testowy w folderze .
New-Item -Name ExampleFile1.txt

W poniższym przykładzie przedstawiono oczekiwane dane wyjściowe.

    Directory: D:\examplefiles


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----       12/11/2017   9:05 PM              0 ExampleFile1.txt

Sprawdzanie danych wyjściowych

  1. Przejdź do konta usługi Automation i wybierz pozycję Zadania obserwatora w obszarze Automatyzacja procesów.

  2. Wybierz zadanie obserwatora WatchMyFolder.

  3. Kliknij pozycję Wyświetl strumienie obserwatora w obszarze Strumienie, aby zobaczyć, że obserwator znalazł nowy plik i uruchomił element Runbook akcji.

  4. Aby wyświetlić zadania elementu Runbook akcji, kliknij pozycję Wyświetl zadania akcji obserwatora. Każde zadanie można wybrać, aby wyświetlić szczegóły zadania.

    Screenshot of a watcher action jobs from the Azure portal.

Oczekiwane dane wyjściowe po znalezieniu nowego pliku można zobaczyć w poniższym przykładzie:

Message is Process new file...

Passed in data is @{FileName=D:\examplefiles\ExampleFile1.txt; Length=0}

Następne kroki

Aby dowiedzieć się więcej na temat tworzenia własnego elementu Runbook, zobacz Tworzenie elementu Runbook programu PowerShell.