서버 프레임워크 없음: Configurando Alarms do CloudWatch

Monitorar e alertar são aspectos essenciais para qualquer sistema de software em produão.Uma soluão de monitoramento eficaz agrega dados em Uma variedade de métricas e os apresenta de maneira legível e amigável.Um painel de monitoramentoútil pode permitir que vocêresponda rapidamente a perguntas sobre estatísticas de alto nível,como“quantos usuários se inscreveram em nosso aplicativo hoje”ou“quantas invocaçes do Lambda resultaram em erros naúltima hora”.Do outro lado da moeda,um bom sistema de alerta permitiráque vocêresponda a mudanças nessas métricas,talvez notificando um engenheiro de plantão de que algo deu errado.
No ambiente rápido de desenvolvimento doServerless Framework,nossa ferramenta preferida para aplicativos NoAWS LambdacomAPI Gateway,éfácil esquecer a construço de uma soluço robusta de monitoramento ou alerta.Felizmente、tambémérelatimente simples de fazer、graçasávasta gama de métricas disponíveis por padrão noAWS CloudWatch.

메트리카스 구름시계


Um bom convento de métricas forma a base de qualquer sistema de monitoramento ou alerta.O CloudWatch expõe métricas de uma ampla gama de serviços da AWS,incluindo aqueles comumente usados​​em um aplicativo serverless,como API Gateway,Lambda,Cognito e DynamoDB.Vocêpode 실험 várias representa es das mé tricas dispon iveis no console do CloudWatch.관찰que vocèn ão precisa fazer nada para que essas métricas fluam para o CloudWatch.A AWS cuida de tudo para vocè.


O 콘솔 AWS CloudWatch que representa graficamente uma métrica do API 게이트웨이
마치 métricas podem ser visualizadas de várias maneiras, incluindo grá ficos conforme mostrado na captura de tela acima, e essas visualiza öes podem ser adicionadas aos pain é is do CloudWatch paraum monitoramento r á pido e certeiro와 같다.entanto, isso requer que vocêesteja fisicamente observando a tela para detectar quaisquer poss íveis anomalias.Deve haver uma maneira melhor!

CloudWatch 경고


경보 세인트 메카니모는pelo CloudWatchparaconstruirumsistema de alerta automatizado에 노출되었다.Eles podem ser configurados para responderás mudanças em qualquer uma das métricas que exploramos anteriormente,notificando um tópico doSNSsobre a mudança.Os tópicos do SNSão flexíveis e permitem uma variedade de responstas automáticas,como o enviro de um e-mail para um endereço spec fico e manipuladors personalidos desenvolvidos no AWS Lambda.
CloudFormation tem um bom suporte para CloudWatch,portanto,épossível escrever sua infraestrutura de sistema de alerta como código na seço“recursos personalidos”de um projeto Serverless Framework.O 예시 a seguir configura um alarme CloudWatchque Dispenar á quando qualquer n úmero de erros 5xx,porumest á gio Esc ífico do API 게이트웨이를 검사하는 데 사용됩니다.
Resources:

  ApiGatewayAlarm5xx:
    Type: AWS::CloudWatch::Alarm
    Properties:
      AlarmDescription: Erros 5xx detectados no API Gateway
      Namespace: AWS/ApiGateway
      MetricName: 5XXError
      Statistic: Sum
      Threshold: 0
      ComparisonOperator: GreaterThanThreshold
      EvaluationPeriods: 1
      Period: 60
      Dimensions:
        - Name: ApiName
          Value:
            Fn::Join:
              - "-"
              -
                - Ref: ApiGatewayStage
                - ${self:service}
        - Name: Stage
          Value:
            Ref: ApiGatewayStage

Algumas das propriedades importantes aqui podem ser explicadas da seguinte forma:
  • Namespace-o 네임스페이스 de servi ço AWS cuja métrica vocêdeseja alertar.Os 이름 공간 dispon iveisestão listados na documentação.
  • MetricName-특별한 métrica Specífica que vocêdeseja alertar.Geralmente,eles estão listados em algum lugar da documentaão do serviço em questão.Por Examplo,o API Gateway oslista aqui.
  • propriedadesStatistic,ThresholdeComparisonOperatordefinemuma mudan ça no estado da métrica que acionar áo alarme.Neste caso,o alarme irádiffer se a métrica5XXErrorexceder um total de0em um período,Period,de60segudos(valor definido em segudos).
    A propriedadeDimensionsrestringe efetivamente o alarme A um subcontracunto de métricas disponíveis.Neste Examplo,o alarme sódifferápara um estágio Escífico de um API Gateway Escífico.Se vocêtiver vários estágios ou APIs implantados em umaúnica conta,seráimportant garantir que seus alarms sejam specificos o suficiente para não dispenir falsos positives.

    Adicionar a ões aos 경고


    Com a configuraço de exemplo acima,temos um alarme CloudWatch configurado e ele faráa transiço entre os estados conforme o valor da métrica subpacente mudar.Para tornar este alarme uma parteútil de nossa estratégia de monitoramento e alerta,precisamos adicionar uma aço a ele.
    Em um aplicativo serverless,éprovávelque a aço seja sempre uma notificaço para um tópico SNS.Outras aões incluem determinadas aões EC2 e Auto Scaling que estão fora do escopo deste artigo.Como o próprio alarme CloudWatch,um tópico SNS pode ser Codecodicado no CloudFormation:
    Resources:
    
      TopicCloudwatchAlarm:
        Type: AWS::SNS::Topic
        Properties:
          TopicName: ${self:service}-${self:custom.stage}-topic-cloudwatch-alarm
    
    
    Umt ó pico SNS precisa de uma'assinatura'(구독)Os tó picos SNS são capazes de enviar 전자메일은 사용자에게 자동으로 발송됩니다.Podemos adicionar uma“assinatura”no CloudFormation também.Neste exemplo,a propriedadeTopicArnfaz referencia ao recursoTopicCloudwatchAlarmdefinido acima por meio da funãoRef:
    Resources:
    
      TopicCloudwatchAlarmSubscription:
        Type: AWS::SNS::Subscription
        Properties:
          Endpoint: [email protected]
          Protocol: email
          TopicArn:
            Ref: TopicCloudwatchAlarm
    
    
    Com esses recursos implantados na AWS,qualquer mensagem publicada no novo tópico SNS seráenviada para o endereço de e-mail specificado pela assinatura SNS.Resta apenas conectarmos o alarme CloudWatch ao tópico SNS.A propriedadeAlarmActionsno recurso de alarme CloudWatch leva o ARN do
    토피코 SNS.Adicione o seguinte ao Examplo original para conectar tudo:
      AlarmActions:
        - Ref: TopicCloudwatchAlarm
    
    
    Sófalta acionar o alarme e verificar sua caixa de entrada!

    UM 이메일 enviado em resposta a Umalarme CloudWatch

    프로시모스 파소스


    O alarme que vimos neste artigo mal arranha a superfície do queépossível com O CloudWatch.Vocêpode criar alarms que levam muitas métricas em consideraçao mesmo tempo.Vocêpode criar alarms para avisálo quando um recurso da AWS estácustando mais dinheiro do que Vocêgostaria.Vocêpode atéconfigurar Alarms com base na“Detectèo de anomalias”,onde o CloudWatch analisarádados de métricas anteriores para criar um modelo de valores esperados e alertar sobre desvios dessa linha de base.Como acontece com a maioria dos serviços da AWS,adocumentaçãodoCloudWatchútil e definitivamente recomendada para leitura se vocêquiser saber mais sobre esses alarmes mais avançados.

    Créditos 회사


  • ,escrito originalmente por.
  • 좋은 웹페이지 즐겨찾기