代码之家  ›  专栏  ›  技术社区  ›  Ishu Gupta

未在AWS CloudWatch警报生成的消息中获取SQS主题的完整信息

  •  1
  • Ishu Gupta  · 技术社区  · 9 年前

    我已经配置了CloudTrail事件上的警报。警报的度量是当它在日志中找到实例终止的信息时触发警报。该信息向SNS主题发送消息,SNS主题反过来调用SQS。

    到目前为止,一切都在运转。然而,当我阅读SQS时,我只能看到警报的信息,但我想获得被终止的实例的详细信息。例如,下面是我看到的:

    {
      "Type" : "Notification",
      "MessageId" : "1744f315-1042-5248-99a8-bd637aac7da4",
      "TopicArn" : "arn:aws:sns:us-east-1:873150696559:chefterm",
      "Subject" : "ALARM: \"terminatedchefnodes\" in US - N. Virginia",
      "Message" : "{\"AlarmName\":\"terminatedchefnodes\",\"AlarmDescription\":\"terminatedchefnodes\",\"AWSAccountId\":\"873150696559\",\"NewStateValue\":\"ALARM\",\"NewStateReason\":\"Threshold Crossed: 1 datapoint (1.0) was greater than the threshold (0.0).\",\"StateChangeTime\":\"2015-09-18T19:40:30.459+0000\",\"Region\":\"US - N. Virginia\",\"OldStateValue\":\"INSUFFICIENT_DATA\",\"Trigger\":{\"MetricName\":\"TestChefMetric\",\"Namespace\":\"CloudTrailMetrics\",\"Statistic\":\"AVERAGE\",\"Unit\":null,\"Dimensions\":[],\"Period\":900,\"EvaluationPeriods\":1,\"ComparisonOperator\":\"GreaterThanThreshold\",\"Threshold\":0.0}}",
      "Timestamp" : "2015-09-18T19:40:30.506Z",
      "SignatureVersion" : "1",
      "Signature" : "XpE8xR8S8sZPW0Yp642c2lpfiqP9qpXg1w8HCiD4YyWLRyHaQSR5RfSBk7yANJOtApw2nIUGRgpWzBE0j5RkfW4cvRrEcRLudAqO2N5QhCJfjvl48/AxWh1qmDiyrHmr0sTpSTg4zPbMQUs7nDRrW1QwQ6cqy04PTNJuZfBNfAXBlJNCkmeyJ8+klq6edmDijMy6M4D8kAUQ+trmTqTO29/jvT0+yOtBWBIOwiRDHxRfNIJ2vOWz8mjvyU43YDYZD1AG3hDBuSbs7li/8jkY7arsK2R5mDBhYI+o/w8D/W7qdBOGJlby1umVHX4mLQBwuOdLmSxN0P34cG9feuqdlg==",
      "SigningCertURL" : "https://sns.us-east-1.amazonaws.com/SimpleNotificationService-bb750dd426d95ee9390147a5624348ee.pem",
      "UnsubscribeURL" : "https://sns.us-east-1.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-1:873150696559:chefterm:467b007c-bb58-4ad6-b05b-ccd159c0515d"
    }
    

    但我希望看到CloudTrail日志中的实例id信息: CloudTrail logs

    1 回复  |  直到 9 年前
        1
  •  1
  •   John Rotenstein    9 年前

    AWS CloudTrail大约每5分钟向您的Amazon S3存储桶提供一次日志文件。然后,这些文件的传递可以用来“触发”一些代码,以检查是否发生了某个活动。运行这段代码的一个好方法是 AWS Lambda公司 .

    基本流程为:

    1. AWS CloudTrail在Amazon S3中创建日志文件
    2. 这会触发对AWS Lambda的调用,其中包含可以确定事件是否感兴趣的自定义代码
    3. 自定义代码可以向Amazon SNS发送发布消息,后者可以通过电子邮件、HTTP等发送消息

    Workflow to trigger a notification from CloudTrail

    以下两篇文章描述了这种设置: