

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Integrazione AWS DevOps Agente con Amazon EventBridge
<a name="configuring-integrations-and-knowledge-integrating-devops-agent-into-event-driven-applications-using-amazon-eventbridge-index"></a>

Puoi integrare AWS DevOps Agent con le tue applicazioni basate sugli eventi utilizzando gli eventi che si verificano durante i cicli di vita delle indagini e delle mitigazioni. AWS DevOps L'agente invia eventi ad Amazon EventBridge quando lo stato di un'indagine o di una mitigazione cambia. È quindi possibile creare EventBridge regole che agiscano in base a questi eventi.

Ad esempio, puoi creare regole che eseguono le seguenti azioni:
+ Richiama una funzione AWS Lambda per elaborare i risultati dell'indagine al termine di un'indagine.
+ Invia una notifica Amazon SNS quando un'indagine fallisce o scade.
+ Aggiorna un sistema di ticketing quando viene creata una nuova indagine.
+ Avvia un flusso di lavoro AWS Step Functions al termine di un'azione di mitigazione.

## Come sono i percorsi EventBridge AWS DevOps Eventi per agenti
<a name="how-eventbridge-routes-aws-devops-agent-events"></a>

AWS DevOps L'agente invia gli eventi al bus di eventi EventBridge predefinito. EventBridge quindi valuta gli eventi rispetto alle regole create dall'utente. Quando un evento corrisponde al modello di eventi di una regola, EventBridge invia l'evento alle destinazioni specificate.

Il diagramma seguente mostra come EventBridge instrada gli eventi AWS DevOps dell'agente.

![Amazon EventBridge instrada gli eventi dall' AWS origine tramite regole a destinazioni come AWS i servizi.](https://docs.aws.amazon.com/it_it/devopsagent/latest/userguide/images/eventbridge-integration-how-it-works.png)


1. AWS DevOps L'agente invia un evento al bus degli eventi EventBridge predefinito quando lo stato del ciclo di vita di un'indagine o di una mitigazione cambia.

1. EventBridge valuta l'evento rispetto alle regole che hai creato.

1. Se l'evento corrisponde al modello di evento di una regola, EventBridge invia l'evento alle destinazioni specificate nella regola.

## AWS DevOps Eventi relativi agli agenti
<a name="aws-devops-agent-events"></a>

AWS DevOps L'agente invia i seguenti eventi a EventBridge. Tutti gli eventi utilizzano la fonte`aws.aidevops`.

AWS DevOps L'agente emette questi eventi per le indagini, inclusa la fase di mitigazione di un'indagine. Altri tipi di attività degli agenti, come le valutazioni di prevenzione degli incidenti e le chiamate personalizzate agli agenti, non generano questi eventi.

Il `time` campo di ogni evento è l'ora dell'ultimo aggiornamento dell'indagine o della mitigazione, non l'ora in cui l'evento è stato ricevuto. EventBridge Un campo senza valore viene omesso `detail` anziché impostato su. `null`

### Eventi di indagine supportati
<a name="supported-investigation-events"></a>


| detail-type (tipo di dettaglio) | Description | 
| --- | --- | 
| Investigation Created | È stata creata un'indagine nello spazio degli agenti. | 
| Investigation Priority Updated | La priorità di un'indagine è stata modificata. | 
| Investigation In Progress | Un'indagine ha avviato un'analisi attiva. | 
| Investigation Completed | Un'indagine si è conclusa con successo con risultati. | 
| Investigation Failed | L'indagine ha rilevato un errore e non è stata completata. | 
| Investigation Timed Out | Un'indagine ha superato la durata massima consentita. | 
| Investigation Cancelled | Un'indagine è stata annullata prima del completamento. | 
| Investigation Pending Triage | Un'indagine è in attesa di valutazione prima dell'inizio dell'analisi attiva. | 
| Investigation Linked | Un'indagine era collegata a un incidente o a un ticket correlato. | 
| Investigation Skipped | Un'indagine è stata ignorata perché rispondeva ai criteri di ignoramento definiti in una competenza. L'evento non include il motivo per cui l'indagine è stata ignorata. | 

### Eventi di mitigazione supportati
<a name="supported-mitigation-events"></a>


| detail-type (tipo di dettaglio) | Description | 
| --- | --- | 
| Mitigation In Progress | È iniziata un'azione di mitigazione. | 
| Mitigation Completed | Un'azione di mitigazione è stata completata con successo. | 
| Mitigation Failed | Un'azione di mitigazione ha rilevato un errore e non è stata completata. | 
| Mitigation Timed Out | Un'azione di mitigazione ha superato la durata massima consentita. | 
| Mitigation Cancelled | Un'azione di mitigazione è stata annullata prima del completamento. | 

Per descrizioni dettagliate dei campi ed esempi di eventi, vedere. [AWS DevOps Riferimento dettagliato sugli eventi degli agenti](integrating-devops-agent-into-event-driven-applications-using-amazon-eventbridge-devops-agent-events-detail-reference.md)

## Creazione di modelli di eventi che corrispondano AWS DevOps Eventi per agenti
<a name="creating-event-patterns-that-match-aws-devops-agent-events"></a>

EventBridge le regole utilizzano modelli di eventi per selezionare gli eventi e indirizzarli agli obiettivi. Un pattern di eventi corrisponde alla struttura degli eventi che gestisce. È possibile creare modelli di eventi per filtrare gli eventi AWS DevOps dell'agente in base ai campi degli eventi.

Gli esempi seguenti mostrano i modelli di eventi per i casi d'uso più comuni.

**Corrisponde a tutti gli eventi AWS DevOps dell'agente **

Il seguente schema di eventi corrisponde a tutti gli eventi di AWS DevOps Agent.

```
{
  "source": ["aws.aidevops"]
}
```

**Abbina solo gli eventi di indagine **

Il seguente schema di eventi utilizza una corrispondenza del prefisso per selezionare solo gli eventi del ciclo di vita dell'indagine.

```
{
  "source": ["aws.aidevops"],
  "detail-type": [{"prefix": "Investigation"}]
}
```

**Abbina solo gli eventi di completamento e di fallimento **

Il seguente schema di eventi corrisponde agli eventi relativi alle indagini e alle mitigazioni completate o non riuscite.

```
{
  "source": ["aws.aidevops"],
  "detail-type": [
    "Investigation Completed",
    "Investigation Failed",
    "Mitigation Completed",
    "Mitigation Failed"
  ]
}
```

**Abbina gli eventi per uno spazio di agenti specifico **

Il seguente schema di eventi corrisponde agli eventi provenienti da uno spazio agente specifico.

```
{
  "source": ["aws.aidevops"],
  "detail": {
    "metadata": {
      "agent_space_id": ["your-agent-space-id"]
    }
  }
}
```

Per ulteriori informazioni sui modelli di eventi, consulta [ Amazon EventBridge event pattern ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html) nella * Amazon EventBridge User Guide*.

## Recupero di un riepilogo dell'indagine o della mitigazione
<a name="retrieving-an-investigation-or-mitigation-summary"></a>

Un `Completed` evento identifica il riepilogo prodotto dall'agente, ma non contiene il testo di riepilogo. Il riepilogo viene archiviato come record del diario. Per leggerlo, chiama l'[ListJournalRecords](https://docs.aws.amazon.com/devopsagent/latest/APIReference/API_ListJournalRecords.html)operazione con i valori presi dall'evento.


| Valore dell'evento | Parametro ListJournalRecords `` | 
| --- | --- | 
| detail.metadata.agent\_space\_id | agentSpaceId (obbligatorio) | 
| detail.metadata.execution\_id | executionId (obbligatorio) | 
| Non nel caso | recordType— da utilizzare investigation\_summary\_md per un riepilogo dell'indagine o mitigation\_summary\_md per un riepilogo della mitigazione | 

`ListJournalRecords`restituisce un elenco di [ JournalRecord ](https://docs.aws.amazon.com/devopsagent/latest/APIReference/API_JournalRecord.html) oggetti. Un'esecuzione può avere più di un record di riepilogo dello stesso tipo. Seleziona il record che `recordId` corrisponde`detail.data.summary_record_id`, quindi leggilo`content`. AWS DevOps L'agente non ha alcuna operazione che restituisca un singolo record del diario per ID.

Nota quanto segue prima di procedere con`summary_record_id`:
+ Il campo è presente solo quando è stato scritto un record di riepilogo per l'esecuzione. Un `Completed` evento senza di esso significa che non è disponibile alcun riepilogo per tale esecuzione, pertanto è necessario gestirne l'assenza.
+ `Failed`e `Timed Out` gli `Cancelled` eventi non lo includono mai.
+ Per recuperare il riepilogo, è necessaria l'`aidevops:ListJournalRecords`autorizzazione nell'account che gestisce il consumatore dell'evento.

Per ulteriori informazioni sulle autorizzazioni, consultare [DevOps Autorizzazioni IAM dell'agente](aws-devops-agent-security-devops-agent-iam-permissions.md).

**Recupera un riepilogo con la CLI AWS **

Il comando seguente elenca i record di riepilogo dell'indagine per un'esecuzione:

```
aws devops-agent list-journal-records \
  --agent-space-id e5f6g7h8-9012-34ab-cdef-example00000 \
  --execution-id b2c3d4e5-6789-01ab-cdef-example22222 \
  --record-type investigation_summary_md
```

**Elabora un'indagine completata in AWS Lambda **

La seguente funzione Python mostra un modo in cui un target di regole può gestire questi eventi. È un esempio, non un'implementazione obbligatoria. EventBridge supporta altri tipi di target e il target decide cosa fare con un evento. Questo esempio legge il riepilogo di un'indagine completata e ignora un evento che non contiene alcun riepilogo:

```
import boto3

devops_agent = boto3.client("devops-agent")

INVESTIGATION_SUMMARY = "investigation_summary_md"
MITIGATION_SUMMARY = "mitigation_summary_md"


def lambda_handler(event, context):
    detail = event["detail"]
    metadata = detail["metadata"]
    data = detail["data"]

    summary_record_id = data.get("summary_record_id")
    if not summary_record_id:
        # A completed task does not always produce a summary.
        return {"summary": None}

    record_type = (
        MITIGATION_SUMMARY
        if event["detail-type"].startswith("Mitigation")
        else INVESTIGATION_SUMMARY
    )

    paginator = devops_agent.get_paginator("list_journal_records")
    pages = paginator.paginate(
        agentSpaceId=metadata["agent_space_id"],
        executionId=metadata["execution_id"],
        recordType=record_type,
    )

    for page in pages:
        for record in page["records"]:
            if record["recordId"] == summary_record_id:
                return {"summary": record["content"]}

    return {"summary": None}
```

`detail-type`Usalo per decidere quale tipo di record richiedere. Sia gli eventi di indagine che quelli di mitigazione vengono riportati `data.task_type` come`INVESTIGATION`, quindi `task_type` non li distingue.

## Autorizzazioni Amazon EventBridge
<a name="amazon-eventbridge-permissions"></a>

AWS DevOps L'agente non richiede autorizzazioni aggiuntive per la distribuzione degli eventi. EventBridge Gli eventi vengono inviati automaticamente al bus degli eventi predefinito.

A seconda degli obiettivi configurati per le EventBridge regole, potrebbe essere necessario aggiungere autorizzazioni specifiche. Per ulteriori informazioni sulle autorizzazioni richieste per gli obiettivi, consulta [ Using resource-based policy for Amazon EventBridge ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-use-resource-based.html) nella Amazon User Guide. * EventBridge *

## Risorse aggiuntive EventBridge
<a name="additional-eventbridge-resources"></a>

Per ulteriori informazioni sui EventBridge concetti e sulla configurazione, consulta i seguenti argomenti nella * Amazon EventBridge User Guide*:
+ [EventBridge autobus per eventi ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-bus.html)
+ [EventBridge eventi ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events.html)
+ [EventBridge modelli di eventi ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html)
+ [EventBridge regole ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-rules.html)
+ [EventBridge obiettivi ](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-targets.html)