Condividi tramite


Controllare le attività del runbook

Importante

Questa versione di Orchestrator ha raggiunto la fine del supporto. È consigliabile eseguire l'aggiornamento a Orchestrator 2022.

È possibile impostare la sequenza di operazioni nei runbook collegando le attività nel runbook Designer. Questi collegamenti sono noti come collegamenti intelligenti perché è possibile configurarli per controllare il tipo di dati passati da un'attività a un'altra. È anche possibile controllare quando il runbook completa le attività impostando la logica per quando tali operazioni vengono eseguite con cicli incorporati. Infine, è possibile usare operazioni di testo e numeriche per modificare i dati durante il passaggio tra le attività o per impostare le condizioni per l'ordine delle operazioni. Questo articolo descrive come controllare la sequenziazione e modificare i dati all'interno del runbook.

Le attività nel runbook verranno completate in base all'ordine impostato collegandole tra loro. È possibile controllare i dati che passano tra le attività usando le schede Includi ed Escludi delle proprietà del collegamento. Ad esempio, è possibile includere solo i dati da passare all'attività successiva che soddisfa un determinato criterio.

Importante

Le regole della scheda Escludi del collegamento intelligente sostituiscono le regole della scheda Includi del collegamento intelligente.

Importante

Le regole in ciascuna scheda vengono unite mediante una condizione or . È necessario che sia vera una sola condizione in una scheda perché l'intera condizione sia vera.

Il tipo di dati pubblicati da un'attività determina il tipo di criteri che è possibile impostare per controllare la sequenza di runbook. Alcune attività pubblicano dati binari e altri pubblicano dati numerici o di testo.

Se i dati pubblicati sono dati di testo, è possibile usare una delle opzioni seguenti per impostare i criteri per l'esecuzione, l'inclusione o l'esclusione.

Condizione Descrizione
contains Il testo specificato viene visualizzato in un punto nel valore dell'elemento di dati pubblicati.
non contiene Il testo specificato non viene visualizzato in un punto nel valore dell'elemento di dati pubblicati.
inizia con Il valore dell'elemento di dati pubblicati inizia con il testo specificato.
termina con Il valore dell'elemento di dati pubblicati termina con il testo specificato.
corrisponde a modello Il valore dell'elemento di dati pubblicati corrisponde all'espressione regolare specifica.
non corrisponde allo schema Il valore dell'elemento di dati pubblicati corrisponde all'espressione regolare specifica.
equals Il valore dell'elemento di dati pubblicati corrisponde esattamente al testo specificato.
non è uguale a Il valore dell'elemento di dati pubblicati non corrisponde al testo specificato.

Nota

I valori di testo non fanno distinzione tra maiuscole e minuscole.

È anche possibile impostare criteri usando espressioni regolari per eseguire la corrispondenza dei criteri.

Se i dati pubblicati sono numerici, è possibile usare uno dei seguenti per impostare i criteri per l'esecuzione, l'inclusione o l'esclusione.

Condizione Descrizione
equals Il valore dell'elemento di dati pubblicati è esattamente uguale al valore specificato.
non è uguale a Il valore dell'elemento di dati pubblicati non corrisponde al testo specificato.
è minore di Il valore dell'elemento di dati pubblicati è inferiore al valore specificato.
è maggiore di Il valore dell'elemento di dati pubblicati è superiore al valore specificato.
è minore o uguale a Il valore dell'elemento di dati pubblicati è inferiore o uguale al valore specificato.
è maggiore o uguale a Il valore dell'elemento di dati pubblicati è superiore o uguale al valore specificato.
è compreso tra Il valore dell'elemento di dati pubblicati è compreso tra due valori specificati.

Selezionare la scheda necessaria per i passaggi per aggiungere o rimuovere una condizione di collegamento intelligente:

Ripetere le attività con cicli incorporati

Utilizzando i cicli è possibile creare tentativi automatici e monitorare qualsiasi percorso di un Runbook.

È possibile creare un ciclo per qualsiasi attività in modo che sia possibile ripetere le operazioni in caso di esito negativo o testare le informazioni di output dell'attività per dati validi. È inoltre possibile utilizzare questi meccanismi per generare le condizioni di attesa nei flussi di lavoro.

Quando si configura un ciclo per un'attività, l'esecuzione continuerà con gli stessi dati di input fino a quando non viene raggiunto un criterio di ciclo di uscita desiderato. Si compilano i criteri di uscita per il ciclo in modo analogo alle configurazioni di collegamento intelligente. È possibile usare qualsiasi elemento dati pubblicato dall'attività come parte della configurazione di uscita o non uscire. I dati pubblicati comuni sono elementi di dati speciali, ad esempio Ciclo: Numero di tentativi e Durata totale, che consentono di usare le informazioni del ciclo stesso nelle condizioni di ciclo.

I cicli vengono eseguiti una sola volta per ogni parte di dati in ingresso passata all'attività. Si consideri ad esempio un runbook che usa un'attività Di database di query seguita da Accoda riga. Se l'attività Query Database ha restituito tre righe, l'attività Append Line viene eseguita tre volte. Se si dispone di un ciclo sull'attività Accoda riga , verranno eseguiti tre cicli separati. Dopo che il primo elemento dati ha eseguito un ciclo nell'attività Accoda riga , l'elemento successivo passa attraverso La riga di accodamento e viene eseguito un ciclo fino all'uscita e quindi il terzo inizia. Dopo l'elaborazione di tutti e tre gli elementi, viene eseguita l'attività successiva nel runbook.

Configurare il ciclo

  1. Fare clic con il pulsante destro del mouse su un'attività nel runbook per selezionare Ciclo. Verrà visualizzata la finestra di dialogo Proprietà ciclo .

  2. Nella scheda Generale selezionare Abilita.

  3. Nella casella Ritardo tra tentativi immettere il numero di secondi da sospendere tra ogni tentativo di esecuzione dell'attività.

Uscire e non uscire da condizioni

Le regole nella scheda Esci specificano le condizioni che determinano se il ciclo viene chiuso. Le regole nella scheda Non uscire specificano le condizioni che determinano la continuazione del ciclo.

Importante

Le regole nella scheda Non uscire sostituiscono le regole nella scheda Esci .

Le regole all'interno di ogni scheda vengono unite tramite una condizione Or . È necessario che sia vera una sola condizione in una scheda perché l'intera scheda sia vera.

Selezionare la scheda necessaria per la procedura per aggiungere o rimuovere una condizione di uscita :

Seguire questa procedura per aggiungere una condizione di uscita:

  1. Nella finestra di dialogo Proprietà ciclo selezionare la scheda Esci o Non uscire e quindi selezionare la condizione elencata nella casella selezionare Aggiungi per aggiungere una condizione.

    Importante

    Per modificare i valori che costituiscono la regola, è necessario selezionare ogni parte sottolineata della condizione di collegamento.

  2. Selezionare l'attività elencata nella condizione per aprire la finestra di dialogo Dati pubblicati .

  3. Selezionare la casella Mostra dati restituiti comuni per visualizzare le proprietà comuni a tutte le attività.

  4. Selezionare una proprietà dai dati pubblicati e quindi selezionare OK. L'espressione dei criteri viene modificata in base al tipo di dati restituito dalla proprietà.

  5. Per modificare le diverse parti dell'espressione, selezionare il testo sottolineato e selezionare o immettere un valore appropriato.

  6. Selezionare Fine.

Impostare una pianificazione per un runbook

È possibile impostare una pianificazione per controllare quando viene eseguito un runbook. Ad esempio, in alcuni casi è inappropriato eseguire alcuni runbook, ad esempio il backup di un runbook in un server principale durante l'orario di ufficio normale. È possibile creare una pianificazione che verrà eseguita in base a un intervallo complesso, ad esempio il primo e il terzo lunedì e giovedì di ogni mese, eccetto quando questi giorni sono festivi.

Le pianificazioni utilizzano l'orologio di sistema del server Runbook che esegue il runbook. In questo modo è possibile utilizzare le pianificazioni negli ambienti di macchine virtuali e continuarne l'esecuzione anche quando l'orologio di sistema viene regolato a causa del passaggio dall'ora legale all'ora solare o viceversa.

Runbook che iniziano prima di un'esecuzione non consentita fino al termine, anche se vengono ancora elaborati quando arriva il tempo proibito. Non verranno interrotte dopo l'avvio dell'elaborazione.

Importante

Le autorizzazioni di accesso per le pianificazioni possono essere modificate, ma il server runbook non applica queste autorizzazioni.

Nota

Se si pianifica l'avvio di un runbook durante un'ora ignorata quando l'orologio di sistema viene modificato in avanti di un'ora, l'ora di inizio viene ignorata e il runbook viene avviato all'ora pianificata successiva. Se si pianifica l'avvio di un runbook durante un'ora che si verifica due volte perché l'orologio di sistema viene regolato all'indietro di un'ora, il runbook viene avviato due volte.

Nota

Orchestrator non supporta lo spostamento di più pianificazioni con selezione multipla. Per spostare più di una pianificazione in un'altra cartella, è necessario spostarle singolarmente.

Selezionare la scheda necessaria per creare una pianificazione, assegnare una pianificazione a un runbook o rimuovere una pianificazione da un runbook:

Per creare una pianificazione, seguire questa procedura:

  1. Nel riquadro Connections fare clic con il pulsante destro del mouse sulla cartella Pianificazioni o su una sottocartella della cartella Pianificazioni, scegliere Nuovo e quindi selezionare Pianifica per aprire la finestra di dialogo Nuova pianificazione.

  2. Nella casella Nome della scheda Generale immettere un nome per la pianificazione.

  3. Nella casella Descrizione immettere una descrizione che descrive o spiega lo scopo della pianificazione.

  4. Selezionare la scheda Dettagli . Selezionare i giorni in cui questa pianificazione consente l'esecuzione dei runbook:

    Giorni della settimana: selezionare questa opzione e selezionare i giorni della settimana in cui questa pianificazione consente l'esecuzione dei runbook.

    Occorrenza: consente di selezionare le settimane del mese consentite dalla pianificazione per l'esecuzione dei Runbook.

    Giorni del mese: consente di selezionare i giorni del mese consentiti dalla pianificazione per l'esecuzione dei Runbook. Specificare i giorni del mese immettendo il numero del giorno. È possibile utilizzare i trattini per descrivere gli intervalli e le virgole per separare le voci. Ad esempio, la digitazione di 1,3 include il primo e il terzo giorno del mese. L'immissione da 1 a 21 include la prima fino al ventunesimo giorno del mese. È possibile combinare entrambe le opzioni per creare descrizioni complesse dei giorni del mese. Immettere tutto per specificare tutti i giorni del mese. Immettere last per specificare l'ultimo giorno del mese.

    Non è possibile usare tutti e gli ultimi come parte di un intervallo di giorni. Inoltre, se è stato immesso un intervallo compreso tra 5 e 31, questo intervallo funziona correttamente per tutti i mesi, inclusi quelli con 28, 29, 30 e 31 giorni.

  5. Selezionare Ore per aprire la finestra di dialogo Orari di pianificazione .

  6. Selezionare e trascinare per selezionare un gruppo di ore in una settimana. Il testo nella parte inferiore della finestra di dialogo mostra il periodo di tempo selezionato. Selezionare quindi una delle opzioni seguenti:

    Consentiti (blu) assegna il periodo di tempo selezionato come orario in cui è consentita l'esecuzione dei Runbook.

    Negati (bianco) assegna il periodo di tempo selezionato come orario in cui non è consentita l'esecuzione dei Runbook.

  7. Selezionare OK.

  8. Selezionare la scheda Eccezioni . Nell'elenco vengono visualizzati tutti i giorni che sono eccezioni alle regole definite nella scheda Dettagli .

  9. Selezionare Aggiungi per aprire la finestra di dialogo Data .

  10. Specificare la data e selezionare Consenti o Non consentire l'esecuzione del runbook in quel giorno e quindi selezionare OK. La voce viene visualizzata nell'elenco.

  11. Per modificare una voce Eccezione, selezionarla e quindi selezionare Modifica. Per rimuovere la voce Eccezione, selezionarla e quindi selezionare Rimuovi.

  12. Per modificare una pianificazione, fare doppio clic sulla Pianificazione.

  13. Per rimuovere una pianificazione, fare clic con il pulsante destro del mouse sulla Pianificazione, quindi selezionare Elimina.

  14. Selezionare Fine.

Modificare i dati con le funzioni

Potrebbe essere necessario modificare i dati stringa da file di testo, dati restituiti o altre origini e convertirli in un modulo utilizzabile per le attività del runbook. Inoltre, è possibile eseguire semplici operazioni aritmetiche, ad esempio il calcolo di somme e differenze e l'esecuzione di operazioni di divisione e moltiplicazione. Ad esempio, è possibile estrarre il testo da un file di testo utilizzando un'attività di Gestione del file di testo , rimuovere gli spazi all'inizio e alla fine del testo e recuperare parti specifiche del testo che si possono passare ad altre attività come elementi di dati pubblicati.

È possibile modificare i dati nel runbook inserendo una funzione. Le funzioni di modifica dei dati devono essere racchiuse tra parentesi quadre ('[' e ']'). Ad esempio:

[Upper('this will be inserted in upper case')]

Durante l'esecuzione dell'attività, il testo 'this will be inserted in uppercase' nell'esempio viene sostituito con 'THIS WILL BE INSERTED IN UPPERCASE'.

Le funzioni distinguono tra maiuscole e minuscole. Ad esempio, Upper('Text') verrà elaborato, ma non upper('Text').

La tabella seguente elenca le funzioni supportate per i runbook.

Funzione e definizione Uso Parametri Esempio
Upper - converte il testo in lettere maiuscole. Upper('Text') Text - il testo che viene convertito in lettere maiuscole. Upper('this will be converted to uppercase') restituisce 'THIS WILL BE CONVERTED TO UPPERCASE'
Lower - converte il testo in lettere minuscole Lower('Text') Text - il testo che viene convertito in lettere minuscole. Lower('This Will Be Converted To Lowercase') restituisce 'this will be converted to lowercase'
Field - restituisce il testo in una posizione specifica Field('Text', 'Delimiter', Field Number) Text - il testo che viene cercato.

Delimiter - il carattere che separa ciascun campo.

Field Number - la posizione del campo che viene restituita (a partire da 1).
Field('John;Smith; 9055552211', '; 2) restituisce 'Smith'.
Sum - restituisce la somma di un insieme di numeri. Sum(firstNumber, secondNumber, thirdNumber, ...) Number - il numero che si desidera aggiungere. È possibile inserire una serie di numeri, separati da una virgola (,). Sum(2,3,4,5) restituisce '14'
Diff - restituisce la differenza tra due numeri. Diff(Number1, Number2, <Precision>) Number1 - il numero da cui verrà sottratto.

Number2 - il numero che verrà sottratto da Number1.

Precisione <facoltativa> : numero di posizioni decimali a cui verrà arrotondato il risultato.
Diff(9, 7) restituisce '2'

Diff(9.3, 2.1, 2) restituisce '7.20'
Mult - restituisce il prodotto di un insieme di numeri. Mult(firstNumber, secondNumber, thirdNumber, ...) Number - il numero che viene moltiplicato. È possibile inserire una serie di numeri, separati da una virgola (,). Mult(2, 3, 4) restituisce '24'
Div - restituisce il quoziente tra due numeri. Div(Number1, Number2, <Precision>) Number1 - il numero che verrà diviso.

Number2 - il numero per cui verrà diviso Number1.

Precisione <facoltativa> : numero di posizioni decimali a cui verrà arrotondato il risultato.
Div(8, 4) restituisce '2'

Div(9, 2, 2) restituisce '4.50'
Instr - restituisce la posizione della prima occorrenza del testo all'interno di un altro testo. Instr ('SearchText', 'TextToFind') SearchText - il testo che viene cercato.

TextToFind - il testo che si sta cercando.
Instr('This is a string that is searched', 'string') restituisce 11
Right - restituisce un sottoinsieme del testo dal lato destro del testo completo. Right('Text', Length) Text - il testo completo.

Length - il numero di caratteri dal lato destro che verrà restituito.
Right('Take from the right', 9) restituisce 'the right'
Left - restituisce un sottoinsieme del testo dal lato sinistro del testo completo. Left('Text', Length) Text - il testo completo.

Length - il numero di caratteri dal lato sinistro che verrà restituito.
Left('Take from the left', 4) restituisce 'Take'
Mid - restituisce un sottoinsieme del testo dal centro del testo completo. Mid('Text', Start, Length) Text - il testo completo.

Start - la posizione iniziale nel testo in cui si desidera iniziare a restituire i caratteri.

Length - il numero di caratteri a partire dalla posizione iniziale che verrà restituito.
Mid('Take from the middle', 5, 4) restituisce 'from'
LTrim - elimina gli spazi iniziali dal testo. LTrim('Text') Text - il testo da cui vengono eliminati gli spazi iniziali. LTrim(' Rimuove solo gli spazi iniziali. ') restituisce 'Rimuovi solo gli spazi iniziali. '
RTrim - elimina gli spazi finali dal testo. RTrim('Text') Text - il testo da cui vengono eliminati gli spazi finali. RTrim(' Rimuove solo gli spazi finali. ') restituisce ' Rimuovi solo gli spazi finali'.
Trim - elimina gli spazi iniziali e finali dal testo. Trim('Text') Text - il testo che viene eliminato. Trim(' Rimuovi spazi iniziali e finali. ') restituisce 'Rimuovi spazi iniziali e finali'.
Len - restituisce la lunghezza del testo. Len('Text') Text - il testo che viene misurato. Len('Measure this text') restituisce 17

Nota

Le funzioni distinguono tra maiuscole e minuscole. Ad esempio, Upper('Text') verrà elaborato, ma non upper('Text').

Passaggi successivi

Per leggere una procedura guidata sulla creazione di un runbook di esempio, vedere Creazione e test di un runbook di esempio.