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à.
Registrazione dell'esecuzione per le API REST
La registrazione dell'esecuzione registra le azioni intraprese da API Gateway per elaborare una richiesta API. I dati registrati includono errori, tracce di esecuzione, valori o payload dei parametri di richiesta e risposta, dati utilizzati dagli autorizzatori Lambda, se sono necessarie le chiavi API e se i piani di utilizzo sono abilitati. Gateway API oscura le intestazioni di autorizzazione, i valori delle chiavi API e parametri di richiesta sensibili simili dai dati registrati nei log.
Per migliorare il livello di sicurezza, è consigliabile utilizzare la registrazione nei log dell’esecuzione a livello di ERROR o INFO. Potrebbe essere necessario eseguire questa operazione per rispettare vari framework di conformità. Per ulteriori informazioni, consultare Amazon API Gateway controls nella Guida per l’utente di AWS Security Hub .
Registrazione standard delle esecuzioni
Quando abiliti la registrazione delle esecuzioni su uno stage, API Gateway crea e gestisce automaticamente un gruppo di CloudWatch log Logs. Il gruppo di log è denominatoAPI-Gateway-Execution-Logs_{rest-api-id}/{stage_name}. All'interno di ciascun gruppo di log, i log sono suddivisi in flussi di log ordinati in base all'ora dell'ultimo evento.
Con registrazione di esecuzione standard:
-
Gli eventi di registro vengono troncati a 1 KB.
-
API Gateway gestisce il nome del gruppo di log. Non puoi scegliere il nome del gruppo di log o inviare i log direttamente ad Amazon S3 o Firehose.
Per abilitare la registrazione di esecuzione standard, imposta loggingLevel on your stage su o. ERROR INFO Non è richiesta alcuna configurazione aggiuntiva.
Permissions
Per abilitare CloudWatch i log, devi concedere ad API Gateway l'autorizzazione per leggere e scrivere CloudWatch i log del tuo account. La policy AmazonAPIGatewayPushToCloudWatchLogs gestita dispone di tutte le autorizzazioni richieste.
Crea un ruolo IAM con apigateway.amazonaws.com entità attendibile, allega la policy precedente e imposta l'ARN del ruolo IAM sulla WatchRoleArn proprietà cloud del tuo account. https://docs.aws.amazon.com/apigateway/latest/api/API_GetAccount.html È necessario impostare questa proprietà separatamente per ogni AWS regione in cui si desidera abilitare i log. CloudWatch
Nota
API Gateway chiama Servizio di token di sicurezza AWS per assumere il ruolo IAM, quindi assicurati che AWS STS sia abilitato per la regione. Per ulteriori informazioni, consulta Gestire AWS STS in una AWS regione.
Abilita la registrazione delle esecuzioni (console)
Prima di iniziare, implementa l'API in una fase e configura un ARN del ruolo CloudWatch Logs appropriato per il tuo account.
Accedi alla console API Gateway all'indirizzo. https://console.aws.amazon.com/apigateway
-
Nel pannello di navigazione principale, scegli Impostazioni, quindi in Registrazione seleziona Modifica.
-
Per il ruolo di CloudWatch registro ARN, inserisci l'ARN di un ruolo IAM con le autorizzazioni appropriate. È necessario eseguire questa operazione una volta per ogni utente Account AWS che crea API utilizzando API Gateway.
-
Nel pannello di navigazione principale, scegli le API, scegli la tua API REST e quindi scegli Stages.
-
Scegli una fase, quindi nella sezione Log and tracing, scegli Modifica.
-
Seleziona un livello di registrazione dal menu a discesa CloudWatch Logs:
-
Disattivato: API Gateway non registra le richieste per questa fase.
-
Solo errori: API Gateway registra solo gli errori.
-
Errori e registri informativi: API Gateway registra tutti gli eventi.
-
-
(Facoltativo) Seleziona Data tracing per registrare i dati completi di richieste e risposte. Ciò può comportare la registrazione di dati sensibili.
Nota
Si consiglia di non utilizzare Tracciamento dei dati per le API di produzione.
-
(Facoltativo) Seleziona Metriche dettagliate per attivare le metriche dettagliate CloudWatch . Per ulteriori informazioni, consulta Monitora l'esecuzione delle API REST con i CloudWatch parametri di Amazon.
-
Scegli Salva modifiche.
Non è necessario ridistribuire l'API quando si aggiornano le impostazioni della fase.
Abilita la registrazione delle esecuzioni (CloudFormation)
Utilizzate la MethodSettings proprietà sulla risorsa dello stage per abilitare la registrazione delle esecuzioni.
TestStage: Type: AWS::ApiGateway::Stage Properties: StageName: test RestApiId: !Ref MyAPI DeploymentId: !Ref Deployment MethodSettings: - ResourcePath: "/*" HttpMethod: "*" LoggingLevel: INFO
Per abilitare CloudWatch i log, devi concedere ad API Gateway l'autorizzazione per leggere e scrivere CloudWatch i log del tuo account. Per ulteriori informazioni, consulta Associate account with IAM role nella Guida per l'utente di AWS CloudFormation .
CloudWatch Distribuzione dei log di esecuzione da Amazon Logs
La distribuzione di Amazon CloudWatch Logs fornisce un percorso alternativo per i log di esecuzione. Invece di scrivere su un gruppo di Gateway-managed log API, configuri una consegna che invia i log di esecuzione alle destinazioni che possiedi e controlli.
Con la distribuzione di Amazon CloudWatch Logs:
-
Gli eventi di registro possono pesare fino a 1 MB e consentono di acquisire dati più completi su richieste e risposte. I payload che superano 1 MB vengono comunque troncati.
-
Scegli la destinazione: i tuoi gruppi di CloudWatch log Logs, bucket Amazon S3 o stream Firehose.
-
Puoi inviare i log a più destinazioni contemporaneamente.
-
Sei tu a controllare la configurazione del gruppo di log, inclusa la denominazione e la conservazione.
Importante
CloudWatch La consegna dei log sostituisce la registrazione di esecuzione standard. Quando si configura una distribuzione, API Gateway interrompe la scrittura nel gruppo di log gestito automaticamente. Non è possibile utilizzare entrambi i percorsi contemporaneamente per la stessa fase.
Quando crei una consegna, API Gateway indirizza i log di esecuzione alle destinazioni configurate anziché al gruppo di log gestito automaticamente. Quando si elimina una consegna, i log di esecuzione riprendono automaticamente il flusso verso il gruppo di log gestito automaticamente. Non sono necessarie modifiche alla configurazione di API Gateway oltre al prerequisito di impostazione loggingLevel su o. ERROR INFO
Nota
La consegna dei log è la soluzione migliore. In rari casi, alcuni eventi di registro potrebbero non essere consegnati.
avvertimento
Prima di abilitare la distribuzione dei log, aggiorna eventuali dashboard, allarmi o filtri di abbonamento che fanno riferimento al gruppo di log gestito automaticamente (). API-Gateway-Execution-Logs_{rest-api-id}/{stage_name} Una volta che la consegna è attiva, quel gruppo di log non riceve più nuovi eventi.
La tabella seguente confronta la registrazione di esecuzione standard con la distribuzione di Amazon CloudWatch Logs.
| Registrazione di esecuzione standard | Consegna di Amazon CloudWatch Logs | |
|---|---|---|
| Dimensione massima degli eventi di registro | 1 KB | 1 MB |
| Destinazioni | CloudWatch Log (gruppo di log gestito) | CloudWatch Logs, Amazon S3, Firehose (risorse proprie) |
| Diverse destinazioni | No | Sì |
| Nome del gruppo di log | Risolto da API Gateway | Scegli tu |
| Configurazione | Automatico quando la registrazione è abilitata | Richiede la creazione di una consegna Amazon CloudWatch Logs |
| Prerequisito | Impostato loggingLevel su ERROR o INFO |
Impostato loggingLevel su ERROR o INFO |
Nota
Se si imposta su loggingLevel OFF dopo aver configurato una consegna, non viene generato o consegnato alcun registro di esecuzione. Le destinazioni di consegna rimangono configurate ma non ricevono dati.
Per creare una spedizione, consultaCrea una distribuzione di log per i log di esecuzione dell'API REST.