

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à.

# Monitoraggio degli eventi SES tramite Amazon EventBridge
<a name="monitoring-eventbridge"></a>

EventBridge è un servizio serverless che utilizza gli eventi per connettere tra loro i componenti delle applicazioni, semplificando la creazione di applicazioni scalabili basate sugli eventi. L'architettura basata sugli eventi è uno stile di creazione di sistemi software ad accoppiamento debole che interagiscono emettendo e rispondendo agli eventi. Gli eventi sono messaggi in formato JSON che rappresentano tipicamente una modifica in una risorsa o ambiente, o altri eventi di gestione. 

Alcune funzionalità di SES genereranno e invieranno gli eventi definiti durante la creazione di una destinazione di eventi sul EventBridge bus eventi predefinito. Un router di eventi è un router che riceve eventi e li invia a nessuna o a più destinazioni o *target*. Le regole associate al router di eventi valutano gli eventi man mano che arrivano. Ogni regola verifica se un evento corrisponde allo schema della regola. Se l'evento corrisponde, EventBridge invia l'evento ai target specificati.

SES invia eventi a EventBridge quando una funzionalità subisce un cambio di stato o un aggiornamento dello stato. È possibile utilizzare EventBridge le regole per indirizzare gli eventi verso obiettivi definiti. Questi eventi verranno recapitati sulla base del miglior tentativo e potrebbero essere recapitati non in ordine.

**Topics**
+ [Eventi SES](#supported-events)
+ [Riferimento allo schema degli eventi SES](#eventbridge-events)
+ [Utilizzo EventBridge con eventi SES](#eventbridge-enable-event-notifications)
+ [Risorse aggiuntive EventBridge](#eventbridge-additonal-resources)

## Eventi SES
<a name="supported-events"></a>

I seguenti eventi vengono generati dalle funzionalità SES e inviati al bus di eventi predefinito in EventBridge. Per ulteriori informazioni, compresi i dati di dettaglio per ogni tipo di evento, vedere[Riferimento allo schema degli eventi SES](#eventbridge-events).


**Eventi per consulenti di Virtual Deliverability Manager**  

| Tipo di evento | Description | 
| --- | --- | 
|  Stato del suggerimento dell'advisor Aperto  |  Un evento viene generato ogni volta che viene aperto un nuovo suggerimento nell'advisor Gestore virtuale della deliverability delle email.  | 
|  Stato del suggerimento dell'advisor Risolto  |  Un evento viene generato ogni volta che viene risolto un suggerimento nell'advisor Gestore virtuale della deliverability delle email.  | 


**Eventi di invio di e-mail SES**  

| Tipo di evento | Description | 
| --- | --- | 
|  Email respinta  |  Un *hard bounce* che indica che il server di posta del destinatario ha rifiutato definitivamente l'e-mail. (Le *e-mail non recapitate* sono incluse solo quando SES non riesce a inviare l’e-mail dopo tentativi ripetuti per un determinato periodo di tempo).  | 
|  E-mail cliccata  |  Il destinatario ha fatto clic su uno o più link nell'e-mail.  | 
|  Reclamo via e-mail ricevuto  |  L'e-mail è stata recapitata correttamente al server di posta del destinatario, ma il destinatario l'ha contrassegnata come spam.  | 
|  Consegna di e-mail  |  SES ha inviato correttamente l'e-mail al server di posta del destinatario.  | 
|  Consegna e-mail ritardata  |  Non è stato possibile recapitare l'e-mail al server di posta del destinatario a causa di un problema temporaneo. I ritardi di consegna possono verificarsi, ad esempio quando la casella di posta in arrivo del destinatario è piena o quando nel server di ricezione della posta elettronica si verifica un problema transitorio.  | 
|  Email aperta  |  Il destinatario ha ricevuto il messaggio e lo ha aperto nel proprio client di posta elettronica.  | 
|  Email rifiutata  |  SES ha accettato l'e-mail, ma ha stabilito che conteneva un virus e non ha cercato di recapitarla al server di posta del destinatario.  | 
|  Rendering delle e-mail non riuscito  |  L'e-mail non è stata inviata a causa di un problema di rendering del modello. Questo tipo di evento può verificarsi se i dati del modello mancano o se non vi è corrispondenza tra i parametri e i dati del modello. Questo tipo di evento si verifica solo quando invii un'e-mail basata su modello utilizzando le operazioni API [https://docs.aws.amazon.com/ses/latest/APIReference/API_SendTemplatedEmail.html](https://docs.aws.amazon.com/ses/latest/APIReference/API_SendTemplatedEmail.html) o [https://docs.aws.amazon.com/ses/latest/APIReference/API_SendBulkTemplatedEmail.html](https://docs.aws.amazon.com/ses/latest/APIReference/API_SendBulkTemplatedEmail.html).  | 
|  Email inviata  |  La richiesta di invio ha avuto esito positivo e SES tenterà di recapitare il messaggio al server di posta del destinatario. Se viene utilizzata l'eliminazione globale o a livello di account, SES la conteggia comunque come invio, ma la consegna viene eliminata.  | 
|  Email sottoscritta  |  L'e-mail è stata recapitata correttamente, ma il destinatario ha aggiornato le preferenze di abbonamento facendo clic sull'`List-Unsubscribe`intestazione dell'e-mail o sul `Unsubscribe` collegamento a piè di pagina.  | 

## Riferimento allo schema degli eventi SES
<a name="eventbridge-events"></a>

Tutti gli eventi generati dai AWS servizi dispongono di un set comune di campi contenenti metadati relativi all'evento, ad esempio il AWS servizio che è all'origine dell'evento, l'ora in cui l'evento è stato generato, l'account e la regione in cui si è svolto l'evento e altri. Per le definizioni di questi campi generali, consultate il [riferimento alla struttura degli eventi](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events-structure.html) nella *Guida per l'EventBridge utente*. 

Inoltre, ogni evento ha un campo `detail` che contiene dati specifici per quel particolare evento. Il riferimento seguente definisce i campi di dettaglio per i vari eventi SES.

Quando si utilizza EventBridge per selezionare e gestire gli eventi SES, è utile tenere presente quanto segue:
+ Il campo `source` per tutti gli eventi SES è impostato su `aws.ses`.
+ Il campo `detail-type` specifica il tipo di evento. Consulta la tabella dei tipi di evento in[Eventi SES](#supported-events).
+ Il campo `detail` contiene i dati specifici di quel particolare evento.

  Per alcuni tipi di eventi, come quelli per Virtual Deliverability Manager, il campo di dettaglio è una stringa di dati piuttosto semplicistica che viene popolata da un insieme finito di valori statici. Al contrario, il campo di dettaglio per gli eventi di invio di e-mail è più complesso in quanto può essere costituito da molti sottocampi di dettaglio che sono una combinazione di valori statici e dinamici come il timestamp di quando è stata inviata un'e-mail, l'indirizzo del destinatario e molti altri attributi di posta elettronica.

**Topics**
+ [Schema dello stato dell'advisor Gestore virtuale della deliverability delle email](#schema-resource-status-event-vdm)
+ [Schema di stato dell'invio di e-mail SES](#schema-resource-status-event-email-sending)

### Schema dello stato dell'advisor Gestore virtuale della deliverability delle email
<a name="schema-resource-status-event-vdm"></a>

Il seguente riferimento allo schema definisce i campi specifici degli eventi di stato del consulente di Virtual Deliverability Manager. 

*Le definizioni per i campi generali che compaiono in tutti gli schemi di eventi (come`version`, `id``account`, e altri) sono disponibili nel [riferimento alla struttura degli eventi](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events-structure.html) nella Guida per l'EventBridge utente.* I campi `source` e `detail-type` sono inclusi nel riferimento seguente perché contengono valori specifici di SES per gli eventi SES.

`source`  
Identifica il servizio che ha generato l’evento. Per gli eventi SES, questo valore è `aws.ses`.

`detail-type`  
Identifica il tipo di evento.  
I valori di questo campo sono elencati nella tabella degli *eventi del consulente di Virtual Deliverability Manager* in. [Eventi SES](#supported-events)

`detail`  
Un oggetto JSON contenente informazioni sull’evento. Il servizio che genera l’evento determina il contenuto di questo campo.  
I valori per questo campo possono essere:  
+ `DKIM verification is not enabled.`
+ `DKIM verification has failed.`
+ `DKIM signing key length is below 2048 bits.`
+ `DMARC configuration was not found.`
+ `DMARC configuration could not be parsed.`
+ `DKIM record was not found.`
+ `DKIM record is not aligned.`
+ `MAIL FROM record is not aligned.`
+ `SPF record was not found.`
+ `SPF record for Amazon SES was not found.`
+ `SPF all qualifier is missing.`
+ `An SPF configuration issue was found.`
+ `BIMI record not found or configured without default selector.`
+ `BIMI has malformed TXT record.`

**Example Esempio: evento di stato dell'advisor Gestore virtuale della deliverability delle email**  <a name="schema-resource-status-event-vdm.example"></a>
Di seguito è riportato un esempio di evento di stato dell'advisor Gestore virtuale della deliverability delle email per il tipo di evento `Advisor Recommendation Status Open`. Il valore dell'evento di dettaglio in questo esempio è`SPF record was not found.`.  

```
{
 "version": "0",
  "id": "abcd9999-ef33-0123-90ab-abcdef666666",
  "detail-type": "Advisor Recommendation Status Open",
  "source": "aws.ses",
  "account": "012345678901",
  "time": "2023-11-15T17:00:59Z",
  "region": "us-east-1",
  "resources": [
    "arn:aws:ses:us-east-1:012345678901:identity/vdm.events-publishing.cajun.syster-games.example.com"
  ],
  "detail": { "version": "1.0.0", "data": "SPF record was not found." }
}
```

### Schema di stato dell'invio di e-mail SES
<a name="schema-resource-status-event-email-sending"></a>

Il seguente riferimento allo schema definisce i campi specifici degli eventi di stato dell'invio di e-mail SES.

Le definizioni per i campi generali che compaiono in tutti gli schemi di eventi (come`version`, `id``account`, e altri) sono disponibili nel [riferimento alla struttura degli eventi](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events-structure.html) nella *Guida per l'EventBridge utente*. I campi `source` e `detail-type` sono inclusi nel riferimento seguente perché contengono valori specifici di SES per gli eventi SES.

`source`  
Identifica il servizio che ha generato l’evento. Per gli eventi SES, questo valore è `aws.ses`.

`detail-type`  
Identifica il tipo di evento.  
I valori di questo campo sono elencati nella tabella degli *eventi di invio e-mail di SES* in[Eventi SES](#supported-events).

`detail`  
Un oggetto JSON contenente informazioni sull’evento. Il servizio che genera l’evento determina il contenuto di questo campo.  
Tutti i valori possibili per questo campo non possono essere elencati qui perché sono composti da valori statici e dinamici generati da ogni e-mail univoca inviata in un dato momento. Tuttavia, viene fornito un esempio per darti un'idea del tipo di dati che questo campo può contenere. *È possibile trovare dati di dettaglio di esempio per tutti i tipi di eventi di invio di e-mail utilizzando la EventBridge Sandbox, vedi[Specificate un evento di esempio in EventBridge](#event-pattern-sandbox-sample).*  
Un esempio di dati di dettaglio generati per l'evento `Email Rendering Failed` di invio e-mail SES:  

```
...,
  "detail": {
    "eventType": "Rendering Failure",
    "mail": {
      "timestamp": "2018-01-22T18:43:06.197Z",
      "source": "sender@example.com",
      "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/sender@example.com",
      "sendingAccountId": "123456789012",
      "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
      "destination": ["recipient@example.com"],
      "headersTruncated": false,
      "tags": {
        "ses:configuration-set": ["ConfigSet"]
      }
    },
    "failure": {
      "errorMessage": "Attribute 'attributeName' is not present in the rendering data.",
      "templateName": "MyTemplate"
    }
  }
```

**Example Esempio: evento sullo stato dell'invio di e-mail**  <a name="schema-resource-status-event-email-sending.example"></a>
Di seguito è riportato un esempio dell'evento completo sullo stato dell'invio di e-mail per il tipo di evento`Email Rendering Failed`. Il valore dell'evento di dettaglio in questo esempio è una combinazione di valori statici e dinamici basati sull'evento di invio e-mail per un'e-mail specifica.  

```
{
  "version": "0",
  "id": "12a18625-3328-fafd-2809-a5e16004f112",
  "detail-type": "Email Rendering Failed",
  "source": "aws.ses",
  "account": "123456789012",
  "time": "2023-07-17T16:48:05Z",
  "region": "us-east-1",
  "resources": ["arn:aws:ses:us-east-1:123456789012:identity/example.com"],
  "detail": {
    "eventType": "Rendering Failure",
    "mail": {
      "timestamp": "2018-01-22T18:43:06.197Z",
      "source": "sender@example.com",
      "sourceArn": "arn:aws:ses:us-east-1:123456789012:identity/sender@example.com",
      "sendingAccountId": "123456789012",
      "messageId": "EXAMPLE7c191be45-e9aedb9a-02f9-4d12-a87d-dd0099a07f8a-000000",
      "destination": ["recipient@example.com"],
      "headersTruncated": false,
      "tags": {
        "ses:configuration-set": ["ConfigSet"]
      }
    },
    "failure": {
      "errorMessage": "Attribute 'attributeName' is not present in the rendering data.",
      "templateName": "MyTemplate"
    }
  }
}
```

## Utilizzo EventBridge con eventi SES
<a name="eventbridge-enable-event-notifications"></a>

Per impostazione predefinita, SES invia gli eventi al bus eventi EventBridge predefinito. È possibile creare regole sul bus degli eventi predefinito per identificare eventi specifici EventBridge da inviare a uno o più obiettivi specifici. Ogni regola contiene uno *schema di eventi* che EventBridge viene utilizzato per abbinare gli eventi man mano che arrivano sul bus degli eventi. Se un evento corrisponde allo schema di eventi per una determinata regola, EventBridge invia l'evento al target specificato nella regola.

Nel EventBridge, la definizione di un modello di evento fa in genere parte del processo più ampio di creazione di una nuova regola o di modifica di una regola esistente. Per informazioni su come creare EventBridge regole, consulta [Creazione di EventBridge regole Amazon che reagiscono agli eventi](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-create-rule.html) nella *Guida per l'EventBridge utente*.

Utilizzando la funzionalità Sandbox in EventBridge, puoi definire rapidamente un pattern di eventi e utilizzare un evento di esempio per confermare che il pattern corrisponda agli eventi desiderati, senza dover prima creare o modificare una regola. *Per istruzioni dettagliate sull'uso della Sandbox, consulta [Testare un pattern di eventi utilizzando la EventBridge Sandbox](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-pattern-sandbox.html) nella Guida per l'EventBridge utente.*

### Specificate un evento di esempio SES nella Sandbox EventBridge
<a name="event-pattern-sandbox-sample"></a>

È possibile scegliere eventi SES di esempio al fine di testare i modelli di eventi che si stanno creando.

**Per specificare un evento di esempio SES nella EventBridge Sandbox**

1. Apri la EventBridge console Amazon all'indirizzo [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Nel riquadro di navigazione, scegli **Risorse per gli sviluppatori**, quindi seleziona **Sandbox** e nella pagina **Sandbox** scegli la scheda **Modello di eventi**.

1. Per **Event source**, scegli **AWS eventi o eventi EventBridge partner**.

1. Nella sezione **Evento di esempio**, per **Tipo evento di esempio**, seleziona **Eventi AWS **. 

1. Per **Eventi di esempio**, scorri verso il basso fino a **SES** e seleziona l'evento SES desiderato.

   EventBridge visualizza un evento di esempio, insieme a tutti i relativi dati di dettaglio, per il tipo di evento.

   È quindi possibile utilizzare questo evento per testare il modello di evento creato nella sezione **Schema** di eventi o utilizzarlo come base per creare eventi di esempio personalizzati per il test dei pattern descritti nella sezione seguente.

### Creazione e test di modelli di eventi SES
<a name="event-pattern-sandbox"></a>

Dopo aver selezionato un evento di esempio, come spiegato nella sezione precedente, potete creare un modello di evento e utilizzare l'evento di esempio per assicurarvi che corrisponda agli eventi desiderati.

**Per creare e testare un pattern di eventi che corrisponda agli eventi SES nella EventBridge Sandbox**

1. Apri la EventBridge console Amazon all'indirizzo [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Nel riquadro di navigazione, scegli **Risorse per gli sviluppatori**, quindi seleziona **Sandbox** e nella pagina **Sandbox** scegli la scheda **Modello di eventi**.

1. Per **Event source**, scegli **AWS eventi o eventi EventBridge partner** e seleziona l'evento di esempio che desideri testare come spiegato nella sezione precedente.

1. Scorri verso il basso fino a **Metodo di creazione** e scegli **Usa modulo modello**.

1. Nella sezione **Modello di eventi**, per **Origine evento** scegli **Servizi AWS **. 

1. In **AWS servizio**, seleziona **SES**. 

1. Per **Tipo di evento** seleziona il tipo di evento SES di cui desideri eseguire la corrispondenza.

   EventBridge visualizza lo schema di eventi minimo, composto da `source` e `detail-type` campi, che corrisponde all'evento SES selezionato.

   Nei due esempi, il primo schema di eventi corrisponde a tutti `Advisor Recommendation Status Resolved` gli eventi e nel secondo a tutti gli `Email Bounced` eventi:

   ```
   {
     "source": ["aws.ses"],
     "detail-type": ["Advisor Recommendation Status Resolved"]
   }
   ```

   ```
   {
     "source": ["aws.ses"],
     "detail-type": ["Email Bounced"]
   }
   ```

1. Per apportare modifiche al pattern di eventi, seleziona **Modifica pattern** e apporta le modifiche nell'editor JSON.

   È anche possibile effettuare corrispondenze con i valori presenti in uno o più campi dei dati dettagliati. Ciò include la specifica di valori multipli possibili per un valore di campo.

   Nell'esempio seguente, il campo di dettaglio è stato aggiunto al modello di evento minimo generato con il valore del `data` campo specificato per trovare tutti gli eventi del consulente di Virtual Deliverability Manager con lo stesso valore di dettaglio: `DKIM record was not found`

   ```
   {
     "source": ["aws.ses"],
     "detail-type": ["Advisor Recommendation Status Resolved"],
     "detail": {
       "data": ["DKIM record was not found."]
     }
   }
   ```

   In questo esempio, i sottocampi di dettaglio sono stati aggiunti al rapporto sugli eventi generati da tutte le e-mail inviate da *noreply@example.com* il 5 agosto *2024* che sono state respinte. [(La corrispondenza dei prefissi viene utilizzata qui come parte del filtraggio dei contenuti.](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns-content-based-filtering.html) ):

   ```
   {
     "source": ["aws.ses"],
     "detail-type": ["Email Bounced"],
     "detail": {
       "mail": {
         "timestamp": [{
           "prefix": "2024-08-05"
         }],
         "source": ["noreply@example.com"]
       }
     }
   }
   ```

   È importante leggere [i pattern di eventi](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html) nella *Guida per l'EventBridge utente*: spiega che il valore del modello di evento che inserisci nell'editor JSON deve essere racchiuso tra parentesi quadre `[...]` perché è considerato un array. Vengono inoltre fornite queste e altre informazioni su come costruire modelli di eventi avanzati.

1. Per verificare se il modello di evento corrisponde all'evento di esempio specificato nel riquadro di **eventi di esempio** precedente, seleziona **Test pattern**. Se corrisponde, verrà visualizzato un banner verde nella parte inferiore dell'editor JSON, *«L'evento di esempio corrisponde al modello di evento*».

1. **Per risolvere gli errori dopo aver selezionato Test pattern:**
   + Se sono presenti errori relativi a JSON, il messaggio indicherà il motivo, ad esempio *«Il modello di evento non è valido. Motivo: «dati» deve essere un oggetto o una matrice alla riga: 5, colonna: 14"*. Per ovviare a ciò, racchiudi il valore sulla riga 5 tra parentesi quadre. `[...]`
   + Se c'è una discrepanza tra i valori dell'*evento Sample* e il *pattern dell'evento*, il messaggio sarà *«L'evento di esempio non corrisponde al pattern dell'evento*». Ciò significa che uno o più valori che vuoi testare sono diversi dai valori di esempio generati dal generatore di *eventi Sample*. Per ovviare a questo problema, procedi con i passaggi rimanenti.

1. Per modificare i valori di esempio nell'*evento Sample* in modo da testare correttamente il *modello di evento*, nel riquadro **Sample event**, seleziona **Copia** nell'editor JSON.

1. Seleziona il pulsante di opzione accanto al **tipo di evento **Enter my own** for Sample** sopra l'editor.

1. Incolla l'evento di esempio nell'editor JSON e, per qualsiasi campo che utilizzi nel modello di evento, sostituisci il valore dello stesso campo in modo che corrisponda al valore specificato nel modello di evento.

1. Scorri verso il basso fino al riquadro Event pattern e seleziona nuovamente **Test pattern**. Se tutti i valori sono stati inseriti correttamente e corrispondono, verrà visualizzato un banner verde nella parte inferiore dell'editor JSON, *«L'evento di esempio corrisponde al modello di evento*».

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

Consulta i seguenti argomenti nella [https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) per ulteriori informazioni su come utilizzare EventBridge per elaborare e gestire gli eventi.
+ Per informazioni dettagliate su come funzionano i bus di eventi, consulta [Amazon EventBridge Event Bus](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-bus.html).
+ Per informazioni sulla struttura degli eventi, consulta la sezione [Eventi](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-events.html)
+ Per informazioni sulla creazione di modelli di eventi EventBridge da utilizzare per abbinare gli eventi alle regole, consulta [Event](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html) pattern
+ [Per informazioni sulla creazione di regole per specificare quali eventi vengono EventBridge elaborati, consulta Regole](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-rules.html)
+ [Per informazioni su come specificare a quali servizi o altre destinazioni EventBridge inviano gli eventi corrispondenti, consulta Target](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-targets.html)