

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

# `AWSSupport-TroubleshootALB5XXErrors`
<a name="automation-awssupport-troubleshootalb5xxerrors"></a>

Il `AWSSupport-TroubleshootALB5XXErrors` runbook diagnostica e risolve gli errori HTTP 5XX su un Application Load Balancer. Analizza le metriche di Amazon CloudWatch (CloudWatch) e i log di accesso di Application Load Balancer per identificare le cause principali e fornire consigli pratici. Il runbook include le seguenti funzionalità:
+ **Analisi del modello di traffico: ** identifica gli hotspotting e le anomalie delle singole zone di disponibilità utilizzando CloudWatch metriche per rilevare la distribuzione non uniforme del traffico tra le zone di disponibilità.
+ **Diagnosi dei log di accesso: ** elabora i log di accesso di Application Load Balancer recuperando i file di log dal bucket Amazon S3 configurato per estrarre modelli di errore specifici, motivi di errore e informazioni diagnostiche dettagliate per una risoluzione granulare dei problemi.
+ **Error-specific analisi: ** fornisce una diagnosi mirata per ogni tipo di errore HTTP 5XX:
  + **HTTP 500: errori di ** autenticazione, problemi di connettività WAF e problemi relativi agli endpoint IDP.
  + **HTTP 502: problemi di connessione a ** Target, errori di funzione AWS Lambda (Lambda), errori di negoziazione TLS e scenari di cancellazione del target.
  + **HTTP 503: gruppi target vuoti e problemi di registrazione dei target. **
  + **HTTP 504: timeout di ** connessione, anomalie del tempo di risposta previsto con confronto storico delle baseline e valutazione completa della connettività di rete.
  + **Altri errori 5XX: analisi ** completa di codici di stato 5XX non comuni e casi limite che non sono coperti dalle categorie di errore standard.
+ **Approfondimento sulla connettività di rete: ** per gli errori HTTP 504, valuta le regole dei gruppi di sicurezza, gli ACL di rete e le configurazioni della tabella di routing tra Application Load Balancer e le relative destinazioni nella stessa regione e nello stesso account. AWS 
+ **Selezione adattiva dell'origine dati: ** dà la priorità all'analisi dei log di accesso quando disponibile per una diagnosi dettagliata degli errori e ricorre automaticamente alle metriche quando i log non sono disponibili o sono incompleti. CloudWatch 

**Limitazioni**  
Questo runbook presenta le seguenti limitazioni:  
**Limitazioni al controllo ** della connettività: le valutazioni della connettività di rete vengono eseguite solo per destinazioni nella stessa AWS regione e nello stesso account dell'Application Load Balancer. Cross-account o gli obiettivi locali ricevono indicazioni generali sulla connettività.
**Limiti di tempo per l'elaborazione dei log di ** accesso: l'analisi dei log di accesso è limitata a una finestra di elaborazione di 9 minuti. Se superati, l'analisi si interrompe e fornisce risultati basati sui log elaborati finora. Riduci il lasso di tempo necessario per l'analisi completa dei log.
**Requisiti di sicurezza e posizione del bucket Amazon S3: ** l'elaborazione dei log di accesso richiede che il bucket Amazon S3 soddisfi i criteri di sicurezza e localizzazione. Il runbook salta l'elaborazione dei log di accesso quando il bucket Amazon S3 è accessibile pubblicamente. Lo stato del bucket pubblico è determinato dalla policy del bucket o dalla configurazione del blocco di accesso pubblico. Il runbook salta l'elaborazione anche quando il bucket Amazon S3 non si trova nello stesso AWS account e nella stessa regione dell'Application Load Balancer. Quando questi controlli falliscono, il runbook torna automaticamente all'analisi basata su metriche. CloudWatch 
**Metriche come alternativa: ** quando i log di accesso non sono abilitati o l'elaborazione dei log fallisce o è incompleta, il runbook torna automaticamente all'analisi basata su CloudWatch metriche con informazioni diagnostiche meno granulari. La mancanza di registri di accesso potrebbe influire sulla precisione del rilevamento della causa principale.
**Dipendenza dai dati storici: il rilevamento delle anomalie nel tempo di risposta ** HTTP 504 richiede 7 giorni di dati storici per il confronto delle previsioni. I dati storici limitati potrebbero influire sulla precisione del rilevamento.

**Costi aggiuntivi**  
L'esecuzione di questo runbook richiede i parametri di Amazon CloudWatch e, quando i log di accesso sono abilitati, recupera gli oggetti da Amazon S3. Al tuo AWS account potrebbero essere applicati costi standard CloudWatch e Amazon S3 per i dati richiesti durante l'analisi. Per ulteriori informazioni sui prezzi, consulta i prezzi di [ Amazon ](https://aws.amazon.com/cloudwatch/pricing/) e CloudWatch i prezzi di [ Amazon Simple Storage Service. ](https://aws.amazon.com/s3/pricing/)

Il runbook esegue le seguenti fasi di convalida e analisi:
+ Verifica che l'Application Load Balancer specificato esista e raccoglie gli attributi dell'Application Load Balancer come il timeout di inattività e la configurazione del log di accesso.
+ Rileva l'hotspotting e le anomalie di errore di una singola zona di disponibilità utilizzando le metriche. CloudWatch 
+ Recupera ed elabora i log di accesso di Application Load Balancer dal bucket Amazon S3 configurato quando i log di accesso sono abilitati e il bucket soddisfa i requisiti di sicurezza e posizione.
+ Diagnostica ogni codice di errore HTTP 5XX (500, 502, 503, 504 e altro) utilizzando le voci del log di accesso, se disponibili, o utilizzando le metriche come riserva. CloudWatch 
+ Per gli errori HTTP 504, valuta le regole dei gruppi di sicurezza, gli ACL di rete e le configurazioni della tabella di routing tra Application Load Balancer e le relative destinazioni.
+ Consolida i risultati in un rapporto con raccomandazioni e riferimenti pertinenti.

 [Esegui questa automazione (console) ](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootALB5XXErrors) 

**Tipo di documento **

Automazione

**Proprietario**

Amazon

**Piattaforme**

/

**Autorizzazioni IAM richieste **

Il `AutomationAssumeRole` parametro richiede le seguenti azioni per utilizzare correttamente il runbook.
+ `s3:ListBucket`
+ `s3:GetObject`
+ `s3:GetBucketPolicyStatus`
+ `s3:GetBucketPublicAccessBlock`
+ `s3:ListAllMyBuckets`
+ `elasticloadbalancing:DescribeTargetGroups`
+ `elasticloadbalancing:DescribeTargetHealth`
+ `elasticloadbalancing:DescribeLoadBalancers`
+ `elasticloadbalancing:DescribeTargetGroupAttributes`
+ `elasticloadbalancing:DescribeLoadBalancerAttributes`
+ `elasticloadbalancing:DescribeListeners`
+ `elasticloadbalancing:DescribeRules`
+ `ec2:DescribeSubnets`
+ `ec2:DescribeInstances`
+ `ec2:DescribeNetworkInterfaces`
+ `ec2:DescribeSecurityGroups`
+ `ec2:DescribeNetworkAcls`
+ `ec2:DescribeRouteTables`
+ `cloudwatch:GetMetricData`
+ `cloudtrail:LookupEvents`
+ `wafv2:ListWebACLs`
+ `wafv2:ListResourcesForWebACL`
+ `lambda:GetFunctionConfiguration`

Policy IAM di esempio:

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "S3ReadAccess",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetObject",
                "s3:GetBucketPolicyStatus",
                "s3:GetBucketPublicAccessBlock",
                "s3:ListAllMyBuckets"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ELBReadAccess",
            "Effect": "Allow",
            "Action": [
                "elasticloadbalancing:DescribeTargetGroups",
                "elasticloadbalancing:DescribeTargetHealth",
                "elasticloadbalancing:DescribeLoadBalancers",
                "elasticloadbalancing:DescribeTargetGroupAttributes",
                "elasticloadbalancing:DescribeLoadBalancerAttributes",
                "elasticloadbalancing:DescribeListeners",
                "elasticloadbalancing:DescribeRules"
            ],
            "Resource": "*"
        },
        {
            "Sid": "EC2ReadAccess",
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeSubnets",
                "ec2:DescribeInstances",
                "ec2:DescribeNetworkInterfaces",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeNetworkAcls",
                "ec2:DescribeRouteTables"
            ],
            "Resource": "*"
        },
        {
            "Sid": "MonitoringReadAccess",
            "Effect": "Allow",
            "Action": [
                "cloudwatch:GetMetricData",
                "cloudtrail:LookupEvents"
            ],
            "Resource": "*"
        },
        {
            "Sid": "WAFReadAccess",
            "Effect": "Allow",
            "Action": [
                "wafv2:ListWebACLs",
                "wafv2:ListResourcesForWebACL"
            ],
            "Resource": "*"
        },
        {
            "Sid": "LambdaReadAccess",
            "Effect": "Allow",
            "Action": [
                "lambda:GetFunctionConfiguration"
            ],
            "Resource": "*"
        }
    ]
}
```

Segui questi passaggi per configurare l'automazione:

1. Apri [ AWSSupport-TroubleshootALB5XXErrors ](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootALB5XXErrors/description) in Systems Manager sotto Documenti.

1. Scegli **Esegui automazione**.

1. Per i parametri di input, inserisci quanto segue:
   + **AutomationAssumeRole (Obbligatorio): **

     L'Amazon Resource Name (ARN) del ruolo AWS Identity and Access Management (IAM) che consente a Systems Manager Automation di eseguire le azioni per tuo conto. Se non viene specificato alcun ruolo, Systems Manager Automation utilizza le autorizzazioni dell'utente che avvia questo runbook.
   + **AlBarn (obbligatorio): **

     L'ARN dell'Application Load Balancer da esaminare. Ad esempio, `arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-alb/50dc6c495c0c9188`.
   + **IssueStartTime (Obbligatorio): **

     L'ora di inizio del problema in UTC. Usa il formato di timestamp ISO 8601 (). `YYYY-MM-DDTHH:MM:SSZ` Ad esempio, `1970-01-01T00:00:00Z`.
   + **IssueEndTime (Obbligatorio): **

     L'ora di fine del problema in UTC. Usa il formato di timestamp ISO 8601 (). `YYYY-MM-DDTHH:MM:SSZ` Ad esempio, `1970-01-01T00:00:00Z`.

1. Scegli **Esegui**.

1. L'automazione viene avviata.

1. Il documento esegue i seguenti passaggi:
   + **`RunInitialChecks`**:

     Esegue i controlli iniziali sull'Application Load Balancer. I controlli iniziali includono la verifica dell'esistenza dell'Application Load Balancer, il rilevamento di hotspot e degli errori relativi a singole zone di disponibilità, la raccolta dei dettagli degli errori HTTP e il controllo della configurazione del log di accesso.
   + **`ProcessAccessLogs`**:

     Recupera i file di log di accesso di Application Load Balancer pertinenti dal bucket Amazon S3 e li elabora per identificare i motivi e i codici di errore univoci. Solo un sottoinsieme di file di log degli accessi viene elaborato per l'intervallo di tempo identificato. Se il tempo di elaborazione supera il limite di 9 minuti, i log rimanenti non vengono elaborati.
   + **`HTTP500ErrorIdentification`**:

     Identifica il motivo degli errori Balancer-generated HTTP 500 di Application Load utilizzando le CloudWatch metriche o i log di accesso analizzati, se disponibili.
   + **`HTTP502ErrorIdentification`**:

     Identifica il motivo degli errori Balancer-generated HTTP 502 di Application Load utilizzando le CloudWatch metriche o i log di accesso analizzati, se disponibili.
   + **`HTTP503ErrorIdentification`**:

     Identifica il motivo degli errori Balancer-generated HTTP 503 di Application Load utilizzando le metriche. CloudWatch 
   + **`HTTP504ErrorIdentification`**:

     Identifica il motivo degli errori Balancer-generated HTTP 504 di Application Load utilizzando le CloudWatch metriche o i log di accesso analizzati, se disponibili. Per gli errori HTTP 504, la fase valuta anche le regole dei gruppi di sicurezza, gli ACL di rete e le configurazioni delle tabelle di routing tra Application Load Balancer e le relative destinazioni.
   + **`OtherHTTPErrorIdentification`**:

     Identifica il motivo degli errori HTTP non classificati generati dall'Application Load Balancer utilizzando le CloudWatch metriche o i log di accesso analizzati, se disponibili.
   + **`GenerateReport`**:

     Genera un rapporto consolidato in base ai risultati dei passaggi precedenti, tra cui lo stato dell'hotspotting, le anomalie di una singola zona di disponibilità, le diagnosi degli errori e i consigli.

1. Dopo il completamento, consulta la ** sezione ** Output per i risultati dettagliati dell'esecuzione.

Systems Manager Automation
+ [Esegui questa automazione (console) ](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootALB5XXErrors/description)
+ [Esegui un'automazione ](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-working-executing.html)
+ [Configurazione di un'automazione ](https://docs.aws.amazon.com/systems-manager/latest/userguide/automation-setup.html)
+ [Supporta i flussi di lavoro di automazione ](https://aws.amazon.com/premiumsupport/technology/saw/)