As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
AWSSupport-TroubleshootAPIGatewayHttpErrors
Descrição
O AWSSupport-TroubleshootAPIGatewayHttpErrorsrunbook ajuda a solucionar erros 5XX/4XX ao invocar uma API REST implantada do Amazon API Gateway analisando registros de execução de and/or acesso e analisando erros para fornecer etapas de remediação por meio de artigos e documentação do re:POST. AWS
Importante
Esse runbook tem as seguintes limitações:
O registro deve estar ativado. Consulte Configurar o registro de CloudWatch APIs da Amazon usando o console do API Gateway.
Os registros devem ter sido habilitados antes da ocorrência do (s) erro (s). A captura e análise de registros não podem ser feitas retrospectivamente.
Erros cobertos: 500, 502, 503, 504, 401, 403, 429.
Somente REST APIs é suportado. WebSocket e HTTP (v2) não são cobertos por este runbook.
Importante
O uso desse runbook pode gerar cobranças adicionais em sua AWS conta pelos Amazon CloudWatch Logs capturados pela sua API REST e pelos CloudWatch Logs Insights usados na análise. Consulte os CloudWatch preços da Amazonaws:deletestack etapa falhar, acesse o CloudFormation console para excluir manualmente a pilha. O nome da pilha criada por esse runbook começa com AWSSupport-TroubleshootAPIGatewayHttpErrors. Para obter informações sobre como excluir CloudFormation pilhas, consulte Excluindo uma pilha no Guia do usuário. AWS CloudFormation
Como funciona?
O runbook executa as seguintes etapas de validação e análise:
Valida se a API REST especificada existe e se você tem as permissões necessárias.
Valida se o estágio especificado existe na API.
Valida se o caminho do recurso especificado existe na API.
Valida se o método HTTP especificado existe para o recurso.
Analisa os CloudWatch registros para os parâmetros e o intervalo de tempo especificados para identificar erros e fornecer recomendações de remediação.
Executar esta automação (console)
Tipo de documento
Automação
Proprietário
Amazon
Plataformas
/
Permissões obrigatórias do IAM
O parâmetro AutomationAssumeRole requer as seguintes ações para usar o runbook com êxito.
apigateway:GETlogs:CreateLogGrouplogs:CreateLogStreamlogs:DescribeLogGroupslogs:DescribeLogStreamslogs:PutLogEventslogs:StartQuerylogs:GetQueryResults
Exemplo de política do IAM:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "apigateway:GET", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:PutLogEvents", "logs:StartQuery", "logs:GetQueryResults" ], "Resource": "*" } ] }
Instruções
Siga estas etapas para configurar a automação:
-
Navegue até
AWSSupport-TroubleshootAPIGatewayHttpErrorsem Systems Manager em Documentos. -
Selecione Execute automation (Executar automação).
-
Para os parâmetros de entrada, insira o seguinte:
-
AutomationAssumeRole (Opcional):
-
Descrição: (Opcional) O Amazon Resource Name (ARN) da função AWS Identity and Access Management (IAM) que permite que o SSM Automation execute as ações em seu nome. Se nenhuma função for especificada, o SSM Automation usa as permissões do usuário que inicia esse runbook.
-
Tipo:
AWS::IAM::Role::Arn
-
-
RestApiId (Obrigatório):
Descrição: (Obrigatório) O ID da API que requer solução de problemas. Deve ser uma sequência alfanumérica de 10 caracteres.
Tipo:
String-
Allowed-pattern:
^[a-zA-Z0-9]{10}$
-
StageName (Obrigatório):
Descrição: (Obrigatório) O nome do estágio implantado. Deve ter de 1 a 128 caracteres contendo letras, números, sublinhados ou hífens.
Tipo:
String-
Allowed-pattern:
^[a-zA-Z0-9_\\-]{1,128}$
-
ResourcePath (Opcional):
Descrição: (Opcional) O caminho do recurso para o qual o método está configurado. Exemplos:
/,/store/items,/{resource}.Tipo:
StringPadrão:
/
-
HttpMethod (Opcional):
Descrição: (Opcional) O método para o caminho do recurso configurado.
Tipo:
String-
Valores permitidos:
[ANY, DELETE, HEAD, OPTIONS, GET, POST, PUT, PATCH] Padrão:
GET
-
StartTime (Opcional):
Descrição: (Opcional) A data e a hora de início da consulta dos CloudWatch registros. Formato:
yyyy-MM-ddTHH:mm:ssno fuso horário UTC. Se não for especificado, o padrão é 3 dias antes da hora atual.Tipo:
String-
Allowed-pattern:
^$|^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(2[0-3]|[01][0-9]):[0-5][0-9]:[0-5][0-9]$ -
Padrão:
""
-
EndTime (Opcional):
Descrição: (Opcional) A data e a hora de término da consulta dos CloudWatch registros. Formato:
yyyy-MM-ddTHH:mm:ssno fuso horário UTC. Se não for especificado, o padrão é a hora atual.Tipo:
String-
Allowed-pattern:
^$|^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])T(2[0-3]|[01][0-9]):[0-5][0-9]:[0-5][0-9]$ -
Padrão:
""
-
AccessLogs (Opcional):
Descrição: (Opcional) Se os registros de acesso devem ser analisados.
Tipo:
Boolean-
Valores permitidos:
[true, false] Padrão:
false
-
RequestId (Opcional):
Descrição: (Opcional) O ID da solicitação em que o erro foi observado. Deve ser um formato UUID válido.
Tipo:
String-
Allowed-pattern:
^$|^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ Padrão:
""
-
-
Selecione Executar.
-
A automação é iniciada.
-
O bucket realiza as seguintes etapas:
-
CheckApiExists:
Valida se a API REST fornecida existe e se você tem as permissões necessárias para acessá-la.
-
CheckStageExists:
Valida se o nome artístico fornecido existe na API fornecida e recupera as informações do grupo de registros de acesso.
-
CheckResourceExists:
Valida se o caminho do recurso fornecido existe na API e recupera o ID do recurso.
-
CheckMethodExists:
Valida se o método HTTP fornecido existe para o recurso especificado.
-
AnalyseLogs:
Pesquisa registros usando os parâmetros fornecidos e retorna recomendações com base nos erros encontrados. Essa etapa analisa os registros de execução e acesso (se habilitado) para identificar erros 4XX e 5XX e fornece orientações específicas de remediação.
-
-
Após a conclusão, revise a seção Saídas para obter os resultados detalhados da execução, incluindo análises de erros e recomendações de remediação.
Referências
Automação do Systems Manager