Rilevare i file aggiornati con un'attività watcher
Automazione di Azure usa le attività watcher per rilevare gli eventi e le azioni di trigger con runbook PowerShell. Le attività Watcher sono composte da due parti: watcher e azione. Un runbook watcher viene eseguito a un intervallo definito nell'attività watcher e restituisce i dati a un'azione runbook.
Nota
Le attività watcher non sono supportate in Microsoft Azure gestito da 21Vianet.
Importante
A partire da maggio 2020, l'uso di App per la logica di Azure è il modo consigliato e supportato per monitorare gli eventi, pianificare attività ricorrenti e attivare azioni. Vedere Pianificare ed eseguire attività, processi e flussi di lavoro automatizzati ricorrenti con le app per la logica di Azure.
Questo articolo illustra come creare un'attività watcher da monitorare quando viene aggiunto un nuovo file a una directory. Scopri come:
- Importare un runbook watcher
- Creare una variabile di automazione
- Creare un runbook azione
- Creare un'attività watcher
- Attivare un watcher
- Esaminare i risultati
Prerequisiti
Per completare questo articolo, sono necessari gli elementi seguenti:
- Abbonamento di Azure. Se non si ha ancora una sottoscrizione, è possibile attivare i vantaggi dell'abbonamento a MSDN oppure iscriversi per ottenere un account gratuito.
- Account di automazione per contenere i runbook watcher e azione e l'attività watcher.
- Un ruolo di lavoro ibrido per runbook dove viene eseguita l'attività watcher.
- Runbook PowerShell. I runbook del flusso di lavoro PowerShell e i runbook grafici non sono supportati dalle attività watcher.
Importare un runbook watcher
Questo articolo usa un runbook watcher denominato Runbook Watcher che cerca nuovi file in una directory per cercare nuovi file in una directory. Il runbook watcher recupera la data e l'ora dell'ultima scrittura nota nei file di una cartella e cerca qualsiasi file che risulti più recente di quel limite.
È possibile importare questo runbook nell'account di Automazione dal portale seguendo questa procedura.
- Accedi al portale di Azure.
- Cercare e selezionare Account di Automazione.
- Nella pagina Account di automazione selezionare il nome dell'account di Automazione dall'elenco.
- Nel riquadro sinistro selezionare Raccolta runbook in Automazione processi.
- Assicurarsi che GitHub sia selezionato nell'elenco a discesa Origine .
- Cercare runbook Watcher.
- Selezionare Runbook Watcher che cerca nuovi file in una directory e selezionare Importa nella pagina dei dettagli.
- Assegnare un nome al runbook e facoltativamente una descrizione e fare clic su OK per importare il runbook nell'account di Automazione. Verrà visualizzato un messaggio Di importazione riuscito in un riquadro in alto a destra della finestra.
- Il runbook importato viene visualizzato nell'elenco sotto il nome assegnato quando si seleziona Runbook nel riquadro a sinistra.
- Fare clic sul runbook e nella pagina dei dettagli del runbook selezionare Modifica e quindi fare clic su Pubblica. Al prompt, selezionare Sì per pubblicare il runbook.
È anche possibile scaricare il runbook dall'organizzazione GitHub Automazione di Azure.
- Passare alla pagina dell'organizzazione di GitHub Automazione di Azure per Watch-NewFile.ps1.
- Per scaricare il runbook da GitHub, selezionare Codice sul lato destro della pagina e quindi selezionare Scarica ZIP per scaricare l'intero codice in un file ZIP.
- Estrarre il contenuto e importare il runbook.
Creare una variabile di automazione
Una variabile di automazione viene usata per archiviare i timestamp letti e archiviati dal runbook precedente da ogni file.
Selezionare Variabili in Risorse condivise e fare clic su + Aggiungi variabile.
Immettere Watch-NewFileTimestamp come nome.
Selezionare DateTime per il tipo. L'impostazione predefinita sarà la data e l'ora correnti.
Fare clic su Crea per creare la variabile di automazione.
Creare un runbook azione
Un runbook azione viene usato in un'attività watcher per agire sui dati passati da un runbook watcher. È necessario importare un runbook di azioni predefinito, sia dal portale di Azure dell'organizzazione gitHub Automazione di Azure.
È possibile importare questo runbook nell'account di Automazione dal portale di Azure:
- Accedi al portale di Azure.
- Cercare e selezionare Account di Automazione.
- Nella pagina Account di automazione selezionare il nome dell'account di Automazione dall'elenco.
- Nel riquadro sinistro selezionare Raccolta runbook in Automazione processi.
- Assicurarsi che GitHub sia selezionato nell'elenco a discesa Origine .
- Cercare Azione watcher e selezionare Watcher action that processes events triggered by a watcher runbook (Azione watcher che elabora eventi attivati da un runbook watcher), quindi fare clic su Importa.
- Facoltativamente, modificare il nome del runbook nella pagina di importazione e quindi fare clic su OK per importare il runbook. Verrà visualizzato un messaggio Di importazione riuscita nel riquadro di notifica in alto a destra del browser.
- Passare alla pagina Account di Automazione e fare clic su Runbook a sinistra. Il nuovo runbook deve essere elencato sotto il nome assegnato nel passaggio precedente. Fare clic sul runbook e nella pagina dei dettagli del runbook selezionare Modifica e quindi fare clic su Pubblica. Al prompt, selezionare Sì per pubblicare il runbook.
Per creare un runbook azione scaricandolo dall'organizzazione GitHub Automazione di Azure:
- Passare alla pagina Automazione di Azure organizzazione GitHub per Process-NewFile.ps1.
- Per scaricare il runbook da GitHub, selezionare Codice sul lato destro della pagina e quindi selezionare Scarica ZIP per scaricare l'intero codice in un file ZIP.
- Estrarre il contenuto e importare il runbook.
Creare un'attività watcher
In questo passaggio si configura l'attività watcher che fa riferimento ai runbook watcher e azione definiti nelle sezioni precedenti.
Passare all'account di automazione e selezionare Attività watcher sotto Automazione processi.
Selezionare la pagina Attività watcher e fare clic su + Aggiungi un'attività watcher.
Immettere WatchMyFolder nel campo Nome.
Selezionare Configura watcher e scegliere il runbook Watch-NewFile.
Per i parametri inserire i valori seguenti:
- FOLDERPATH: una cartella nel ruolo di lavoro ibrido per runbook in cui verranno creati nuovi file, ad esempio d:\examplefiles.
- EXTENSION: estensione per la configurazione. Lasciare vuoto per elaborare tutte le estensioni di file.
- RECURSE: operazione ricorsiva. Lasciare questo valore come impostazione predefinita.
- RUN SETTINGS: impostazioni per l'esecuzione del runbook. Selezionare il ruolo di lavoro ibrido.
Fare clic su OK e quindi su Seleziona per tornare alla pagina del watcher.
Selezionare Configura azione e scegliere il runbook Process-NewFile.
Per i parametri inserire i valori seguenti:
- EVENTDATA: dati dell'evento. Lasciare vuoto. I dati vengono passati dal runbook watcher.
- Impostazioni esecuzione test: impostazioni per l'esecuzione del runbook. Lasciare questo campo impostato su Azure in quanto questo runbook viene eseguito in Automazione di Azure.
Fare clic su OK e quindi su Seleziona per tornare alla pagina del watcher.
Fare clic su OK per creare l'attività watcher.
Attivare un watcher
È necessario eseguire un test come descritto di seguito per assicurarsi che l'attività watcher funzioni come previsto.
- Passare al ruolo di lavoro ibrido per runbook.
- Aprire PowerShell e creare un file di test nella cartella.
New-Item -Name ExampleFile1.txt
L'esempio seguente illustra l'output previsto.
Directory: D:\examplefiles
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 12/11/2017 9:05 PM 0 ExampleFile1.txt
Esaminare i risultati
Passare all'account di automazione e selezionare Attività watcher sotto Automazione processi.
Selezionare l'attività watcher WatchMyFolder.
Fare clic su Visualizza flussi watcher in Flussi per vedere che il watcher ha trovato il nuovo file e ha avviato il runbook azione.
Per visualizzare i processi del runbook azione, fare clic su Visualizza processi dell'azione watcher. È possibile selezionare ogni processo per visualizzarne i dettagli.
L'esempio seguente illustra l'output previsto quando viene trovato il nuovo file:
Message is Process new file...
Passed in data is @{FileName=D:\examplefiles\ExampleFile1.txt; Length=0}
Passaggi successivi
Per altre informazioni sulla creazione di un runbook personalizzato, vedere Creare un runbook di PowerShell.