Come posso creare un gruppo di log di CloudWatch da utilizzare come destinazione per una regola EventBridge?

Ultimo aggiornamento: 04/05/2022

Voglio aggiungere un gruppo di log di Amazon CloudWatch come destinazione a una regola di Amazon EventBridge. In che modo posso farlo?

Breve descrizione

Quando si crea una regola EventBridge, è necessario specificare la destinazione in cui vengono inviati gli eventi corrispondenti alla regola. Per un elenco delle destinazioni disponibili per EventBridge, consulta Destinazioni disponibili nella console EventBridge. Una delle destinazioni che puoi aggiungere alla regola EventBridge è un gruppo di log di CloudWatch.

Risoluzione

Nota: se ricevi messaggi di errore durante l'esecuzione dei comandi AWS Command Line Interface (AWS CLI), assicurati di utilizzare la versione più recente di AWS CLI.

Completa le seguenti operazioni per configurare un gruppo di log di CloudWatch da utilizzare come destinazione per una regola EventBridge:

1.    Apri la console EventBridge e scegli la regione in cui desideri creare la regola.

2.    Scegli Crea regola, quindi inserisci tutte le informazioni su quella regola, ad esempio il modello di evento o i dettagli della pianificazione.

3.    Nella pagina Seleziona destinazione, scegli CloudWatch come destinazione.

Nota: per aggiungere un gruppo di log di CloudWatch come destinazione, è possibile:

Assicurati che il gruppo di log utilizzato come destinazione per la regola EventBridge inizi con /aws/events. Se quando crei una regola, crei un nuovo gruppo di log utilizzando la console, EventBridge crea automaticamente il gruppo di log per tuo conto. Se desideri aggiungere un gruppo di log esistente, tieni presente che nell'elenco a discesa vengono visualizzati solo i gruppi di log che iniziano con /aws/events.

4.    Per consegnare i dati dell'evento al gruppo di log di destinazione, EventBridge ha bisogno dell'autorizzazione per accedere al gruppo di log di destinazione. Utilizza questa autorizzazione per creare flussi di log e inviare eventi a tali flussi. Per i gruppi di log di CloudWatch, per accedere al gruppo di log EventBridge utilizza una policy basata sulle risorse.

Se utilizzi la console per aggiungere gruppi di log a una regola EventBridge, la policy basata sulle risorse per il tuo gruppo di log viene aggiornata automaticamente. Tuttavia, se utilizzi AWS SDK/API/CDK/CLI, allora dovrai aggiornare manualmente la policy basata sulle risorse del gruppo di log. Questo documento di policy di esempio mostra le autorizzazioni che è necessario definire nella policy basata sulle risorse del gruppo di log:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "TrustEventsToStoreLogEvent",
      "Effect": "Allow",
      "Principal": {
        "Service": [
          "events.amazonaws.com"
        ]
      },
      "Action": [
        "logs:CreateLogStream",
        "logs:PutLogEvents"
      ],
      "Resource": "arn:aws:logs:us-east-1:<your-account-id>:log-group:/aws/events/*:*"
    }
  ]
}

Non è possibile configurare la policy basate sulle risorse di un gruppo di log utilizzando la console. Per aggiungere queste autorizzazioni a una policy basata sulle risorse, utilizza la chiamata API PutResourcePolicy. Quindi, utilizza il comando describe-resource-policies per verificare che la policy sia stata applicata correttamente.

Nota: il limite attuale è di 10 policy per regione, per account. Se raggiungi questo limite, elimina eventuali policy inutilizzate o combina più policy tra loro.

5.    Il servizio EventBridge utilizza il comando PutRule della CLI per creare le regole. Utilizza quindi l'API PutTargets o il comando put-targets della CLI per aggiungere le destinazioni a una regola EventBridge. Pertanto, quando utilizzi AWS SDK, CDK o CLI, per aggiungere il gruppo di log alla tua regola EventBridge dovrai utilizzare l'API PutTargets o il comando put-targets della CLI.


Questo articolo è stato utile?


Hai bisogno di supporto tecnico o per la fatturazione?