Por que meu canário do Amazon CloudWatch parou de funcionar?

2 minuto de leitura
0

Eu criei um canário no Amazon CloudWatch usando o AWS CloudFormation ou a AWS Command Line Interface (AWS CLI). Quero saber por que o canário para de funcionar automaticamente após um período de tempo.

Resolução

**Observação:**Se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solucionar erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.

Se o canário do Amazon CloudWatch parar de funcionar, verifique o valor DurationInSeconds definido durante a criação do canário. Esse valor especifica por quanto tempo o canário continua fazendo execuções regulares de acordo com o cronograma no valor Expression. O período de tempo é em segundos. Se você especificar 0, o canário continuará funcionando até você parar o canário. Se você não definir o valor DurationInSeconds, o valor padrão será definido como 0.

Para verificar o valor do parâmetro DurationInSeconds do seu canário, execute a API GetCanary do CloudWatch Synthetics:

aws synthetics  get-canary --name [canary_name]

Na saída, verifique o valor DurationInSeconds:

{    
     "Canary": {
        "Id": "a1495b85-1c60-4f29-92c1-540f62fa34e3",
        "Name": "canary_name",
        "Code": {
            "SourceLocationArn": "arn:aws:lambda:eu-west-1:YourAccount:layer:cwsyn-canary_name-a1495b85-1c60-4f29-92c1-540f62fa34e3:1",
            "Handler": "CanaryFunction.handler"
        },
        "ExecutionRoleArn": "arn:aws:iam::YourAccount:role/CanaryRoleName",
        "Schedule": {
            "Expression": "rate(2 minutes)",
            "DurationInSeconds": 360
        },
        "RunConfig": {
            "TimeoutInSeconds": 120
        },
        "SuccessRetentionPeriodInDays": 31,
        "FailureRetentionPeriodInDays": 31,
        "Status": {
            "State": "READY"
        },
        "Timeline": {
            "Created": 1594481063.96,
            "LastModified": 1594481063.96
        },
        "ArtifactS3Location": "S3_Bucket_for_artifacts",
        "EngineArn": "arn:aws:lambda:eu-west-1:YourAccount:function:cwsyn-canary_name-a1495b85-1c60-4f29-92c1-540f62fa34e3:1",
        "RuntimeVersion": "syn-1.0",
        "Tags": {}
    }
}

**Observação:**Na saída anterior, DurationInSeconds não é igual a 0.

Se o valor DurationInSeconds não corresponde à duração pretendida, execute a API UpdateCanary do Amazon CloudWatch Synthetics:

aws synthetics  update-canary --name canary_cli --schedule Expression="rate(2 minutes)",DurationInSeconds=0

**Observação:**Para que o canário seja executado continuamente, escreva a expressão de agendamento com DurationInSeconds definido como 0.

Para verificar suas alterações, use a AWS CLI para executar o comando get-canary:

aws synthetics  get-canary --name [canary_name]

{
    "Canary": {
        "Id": "a1495b85-1c60-4f29-92c1-540f62fa34e3",
        "Name": "canary_name",
        "Code": {
            "SourceLocationArn": "arn:aws:lambda:eu-west-1:YourAccount:layer:cwsyn-canary_name-a1495b85-1c60-4f29-92c1-540f62fa34e3:1",
            "Handler": "CanaryFunction.handler"
        },
        "ExecutionRoleArn": "arn:aws:iam::YourAccount:role/CanaryRoleName",
        "Schedule": {
            "Expression": "rate(2 minutes)",
            "DurationInSeconds": 0
        },
        "RunConfig": {
            "TimeoutInSeconds": 120
        },
        "SuccessRetentionPeriodInDays": 31,
        "FailureRetentionPeriodInDays": 31,
        "Status": {
            "State": "READY"
        },
        "Timeline": {
            "Created": 1594481063.96,
            "LastModified": 1594481063.96
        },
        "ArtifactS3Location": "S3_Bucket_for_artifacts",
        "EngineArn": "arn:aws:lambda:eu-west-1:YourAccount:function:cwsyn-canary_name-a1495b85-1c60-4f29-92c1-540f62fa34e3:1",
        "RuntimeVersion": "syn-1.0",
        "Tags": {}
    }
}

Na saída, confirme se o valor DurationInSeconds é 0.

AWS OFICIAL
AWS OFICIALAtualizada há 10 meses