---
url: https://docs.ogmabox.com/it/app/workflows.md
description: >-
  Crea flussi di lavoro riutilizzabili di Ogma per elaborazione passiva, azioni
  attive e conversione dei dati.
---

# Flussi di lavoro {#workflows}

I flussi di lavoro sono pipeline di automazione riutilizzabili che elaborano il traffico acquisito, eseguono passaggi attivi o trasformano dati senza richiedere la scrittura di script autonomi.

## Tipi di flussi di lavoro {#workflow-types}

| Tipo | Attivato da | Uso comune |
|------|-------------|------------|
| Passivo | Nuovo traffico acquisito | Segnalare pattern interessanti, etichettare richieste e creare automaticamente rilievi di sicurezza. |
| Attivo | Esecuzione manuale | Inviare richieste di verifica successive, concatenare azioni ed eseguire test con più passaggi. |
| Converti | Dati di prova, azioni di conversione o Trova e sostituisci | Trasformare testo o byte, ad esempio formattare JavaScript o normalizzare JSON. |

I flussi passivi vengono eseguiti continuamente in background. I flussi attivi vengono eseguiti su richiesta su un insieme selezionato di richieste.

## Area di lavoro del flusso {#the-workflow-canvas}

Apri **Flussi di lavoro** e seleziona un flusso per aprirne l'area di lavoro.

* I nodi appaiono nel pannello centrale. Ogni nodo ha porte di input e output tipizzate.
* Collega una porta di output a una porta di input facendo clic e trascinando tra le due.
* Fai clic su un nodo per aprire il suo pannello di configurazione a destra.
* La barra degli strumenti in alto contiene i controlli di esecuzione, attivazione/disattivazione e importazione/esportazione.

## Tipi di nodi {#node-types}

| Nodo | Descrizione |
|------|-------------|
| Inizio / Fine | Nodi di ingresso e uscita adatti al tipo di flusso passivo, attivo o di conversione. |
| Condizioni | Se / Altrimenti, Se / Altrimenti JS, Corrispondenza HTTPQL, Corrispondenza ambito, Stringa contiene e Corrispondenza regex. |
| Codifica | Codifica/decodifica Base64, URL, Hex e HTML. |
| Formattazione e hash | Minimizza/Formatta JSON, MD5, SHA-1 e SHA-256. |
| Operazioni di testo | Rimuovi spazi iniziali e finali, Unisci, Dividi, Trova e sostituisci, Trasformazione JQ ed Estrazione Grep. |
| JavaScript | Logica personalizzata tramite l'SDK dei flussi di lavoro; può leggere traffico, operare sui file e creare rilievi di sicurezza. |
| Integrazione | Registra, Webhook, Richiama flusso di lavoro, Invia richiesta e Regola di ricerca e sostituzione. |

Usa la tavolozza dei nodi per consultare le porte e la configurazione effettive. Fai clic su una connessione per lavorare su quel collegamento anziché eliminare un nodo per ricollegare il grafo. Salva con **Salva** o **Ctrl+S** (Command+S su macOS).

## Condivisione e ambito {#sharing-and-scope}

I flussi di lavoro vengono condivisi tra i progetti dello stesso spazio di lavoro per impostazione predefinita. Attiva **Specifico del progetto** per mantenere una definizione nel suo progetto. Le definizioni condivise non implicano che il traffico, i risultati o le note di ogni progetto diventino condivisi. Esporta/importa il JSON del flusso quando passi a un altro spazio di lavoro o installazione.

## Test prima dell'uso sul traffico reale {#testing-before-live-use}

I flussi passivi e attivi hanno una sezione **Test HTTP** con dati di prova di URL, Richiesta grezza e Risposta grezza. Attiva il flusso, compila quei campi e fai clic su **Testa flusso di lavoro**. Il test salva le modifiche prima dell'esecuzione. I valori di prova vengono conservati per ogni flusso quando esci dalla pagina e vi torni.

Un flusso di conversione ha invece **Dati di prova** e output. Inizia con un input piccolo e rappresentativo, poi testa una risorsa di dimensione realistica. I dati di prova non rendono innocui nodi JavaScript arbitrari o nodi Invia richiesta: il codice del flusso può comunque eseguire le azioni configurate.

### JavaScript e file {#javascript-and-files}

Il JavaScript dei flussi di lavoro supporta l'SDK di Ogma e importazioni compatibili di `fs`/`path`. Usa `sdk.fs.readFile`, `writeFile`, `appendFile`, `exists`, `readDir`, `mkdir` e `unlink` per le operazioni sui file, e `sdk.path` per percorsi adatti alla piattaforma. Sono utilità di Ogma, non l'intera libreria standard di Node.js.

Per un esportatore di risorse, leggi `response.getBody().toText()`, scegli una destinazione con `sdk.path.join`, crea la sua directory padre e controlla `sdk.fs.exists` se non vuoi sovrascrivere un file esistente. Esamina i percorsi del filesystem prima dell'esecuzione: le utilità del filesystem dei flussi vengono eseguite sull'host di Ogma, a differenza di `sdk.fs` di un plugin, limitato alla sua directory privata. Consulta l'[SDK dei plugin](../plugins/README.md#sdk-fs) per quel diverso ambiente di esecuzione.

## Importare un flusso di lavoro {#importing-a-workflow}

1. Fai clic su **Importa** nella barra degli strumenti di Flussi di lavoro.
2. Seleziona un file JSON di flusso di lavoro.
3. Il flusso si apre nell'area di lavoro. Verifica la configurazione dei nodi prima di attivarlo.
4. Salva il flusso.

I file JSON dei flussi esportati possono essere condivisi tra installazioni di Ogma o conservati nel controllo di versione.

## Eseguire un flusso sulla cronologia acquisita {#running-a-workflow-on-captured-history}

I flussi attivi possono essere rieseguiti sulle richieste acquisite in precedenza.

1. Apri il flusso.
2. Fai clic su **Esegui sulla cronologia**.
3. Nel dialogo di scansione della cronologia, inserisci un filtro HTTPQL facoltativo per limitare le richieste elaborate dal flusso.
4. Fai clic su **Esegui**.

Esamina il conteggio delle corrispondenze e avvia l'attività. L'avanzamento e gli errori appaiono nell'attività di scansione e, quando la registrazione è attiva, nella sua cronologia delle esecuzioni. I flussi passivi offrono **Scansiona cronologia** e **Riesegui sulla richiesta** per l'elaborazione retrospettiva.

Per poche risorse interessanti, seleziona una o più righe di Cronologia HTTP, fai clic con il pulsante destro, scegli **Invia a Flusso di lavoro** e seleziona un flusso attivo abilitato. Questo gli fornisce le voci selezionate senza modificarne la definizione né elaborare l'intera cronologia.

Il pulsante **Assistenza IA** accanto all'input del filtro della scansione della cronologia genera un'espressione HTTPQL da una descrizione in linguaggio naturale.

## Esecuzioni e risultati dei flussi {#workflow-runs-and-results}

Attiva **Attiva registrazione** nella configurazione del flusso quando servono dettagli dell'esecuzione. Si applica ai flussi passivi, attivi e di conversione, comprese le conversioni di Trova e sostituisci. Quando è disattiva, l'elaborazione continua ma non aggiunge registri delle esecuzioni/passaggi; riattivala e ripeti un test per diagnosticare un problema.

* Fai clic su un'esecuzione per vedere l'output dei passaggi per ogni nodo.
* I nodi che hanno prodotto errori vengono evidenziati.
* I rilievi di sicurezza creati durante l'esecuzione appaiono nella vista [Risultati](./findings.md).
* Le variabili estratte durante l'esecuzione sono visibili nel pannello dei dettagli del passaggio.

**Cancella tutto** rimuove la cronologia delle esecuzioni memorizzata del flusso selezionato. Scarica i registri prima di cancellarli se devi conservare prove di debug. La registrazione può memorizzare output grandi, come interi corpi di script, quindi lasciala disattiva per conversioni ad alto volume, salvo necessità.

## Attivare un flusso passivo {#enabling-a-passive-workflow}

1. Apri il flusso.
2. Verifica che la configurazione dell'area di lavoro sia completa (nessuna porta obbligatoria scollegata).
3. Attiva **Attiva** nella barra degli strumenti.

I flussi passivi attivati elaborano automaticamente il nuovo traffico. Disattiva un flusso per metterlo in pausa senza eliminarlo.

## Pagine correlate {#related-pages}

* [Risultati](./findings.md)
* [Ambiente](./environment.md)
* [HTTPQL e StreamQL](../reference/httpql.md)
