メインコンテンツまでスキップ
Sumo Logic Japanese

Amazon SQS アプリケーションのログとメトリクスの収集

Amazon SQS メトリクスの収集

  1. Hosted Collector を設定します。
  2. Amazon CloudWatch メトリクス Source を設定します。
    1. Name (名前): 新しい Source に表示する名前を入力します。
    2. Description (説明): 説明 (省略可能) を入力します。
    3. Regions (リージョン)。SQS の Amazon リージョンを選択します。
    4. Namespaces (名前空間)。[AWS/SQS] を選択します。
    5. Source Category: Source Category を入力します。例: AWS/Metric/SQS
    6. Access Key and Secret Key (アクセス キーとシークレット キー)。Amazon のアクセス キーとシークレット キーを入力します。
    7. Scan Interval (スキャン間隔)。Sumo Logic が CloudWatch Source をスキャンして新しいデータがないか確認する間隔として、デフォルトの 5 分を使用するか、または別の間隔を入力します。
  3. [Save (保存)] をクリックします。

CloudTrail を使用した Amazon SQS イベントの収集

  1. Hosted Collector に AWS CloudTrail Source を追加します。
    1. Name (名前): 新しい Source に表示する名前を入力します。
    2. Description (説明): 説明 (省略可能) を入力します。
    3. S3 Region (S3 リージョン)。SQS S3 バケットの Amazon リージョンを選択します。
    4. Bucket Name (バケット名)。SQS S3 バケットの名前を正確に入力します。
    5. Path Expression (パス式)。収集する S3 オブジェクトに一致する文字列を入力します。この文字列では、ワイルドカードを 1 つ使用できます。(先頭にスラッシュを付けないでください。「Amazon のパス式」参照。)
    6. Source Category: Source Category を入力します。例: SQS_event
    7. Access Key and Secret Key (アクセス キーとシークレット キー)。Amazon のアクセス キーとシークレット キーを入力します。
    8. Scan Interval (スキャン間隔): デフォルトの 5 分を使用します。または、Sumo Logic が S3 バケットをスキャンして新しいデータがないか確認する間隔を入力します。
    9. Enable Timestamp Parsing (タイムスタンプ parse の有効化)。チェックボックスをオンにします。
    10. Time Zone (タイム ゾーン): [Ignore time zone from log file and instead use (ログ ファイルのタイムゾーンを無視して、次を使用します)] を選択して、[UTC] を選択します。
    11. Timestamp Format (タイムスタンプ形式)。[Automatically detect the format (自動的に形式を検出)] を選択します。
    12. Enable Multiline Processing (複数行の処理の有効化)。チェックボックスをオンにして [Infer Boundaries (境界を推測する)] を選択します。
  2. [Save (保存)] をクリックします。

ログ メッセージのサンプル

{
   "eventVersion":"1.04",
   "userIdentity":{
      "type":"AssumedRole",
      "principalId":"AROAINUY7K3KSGCABCDEF:bsmith",
      "arn":"arn:aws:sts::12212341717:assumed-role/TechOps-SAML_Role/kdavis",
      "accountId":"1221234221717",
      "accessKeyId":"ASIAI12345GECTHNBTQ",
      "sessionContext":{
         "Attributes":{
            "mfaAuthenticated":"false",
            "creationDate":"2017-11-03T21:04:39Z"
         },
         "sessionIssuer":{
            "type":"Role",
            "principalId":"AROAINUY7K3KSGCABCDEF",
            "arn":"arn:aws:iam::12212341717:role/TechOps-SAML_Role",
            "accountId":"122123451717",
            "userName":"TechOps-SAML_Role"
         }
      }
   },
   "eventTime":"2017-11-03T21:36:27Z",
   "eventSource":"sqs.amazonaws.com",
   "eventName":"CreateQueue",
   "awsRegion":"us-west-2",
   "sourceIPAddress":"19.174.45.8",
   "userAgent":"aws-sdk-go/1.12.8 (go1.9; darwin; amd64) APN/1.0 HashiCorp/1.0 Terraform/0.10.0-dev",
   "requestParameters":{
      "queueName":"msg_process_businessrule",
      "Attribute":{
         "ReceiveMessageWaitTimeSeconds":"20",
         "MessageRetentionPeriod":"345600",
         "MaximumMessageSize":"262144",
         "VisibilityTimeout":"3600"
      }
   },
   "responseElements":{
      "queueUrl":"https://sqs.us-west-2.amazonaws.com/12212341717/initial_msg_formatting"
   },
   "requestID":"3f9f0a8a-1234-5678-b16c-58fc1a1ee8fb",
   "eventID":"66b74ca6-1234-5678-a61e-fba42272ba91",
   "eventType":"AwsApiCall",
   "recipientAccountId":"122123451717"
}

クエリのサンプル

上位 10 人のユーザ

_sourceCategory=*cloudtrail* "\"eventsource\":\"sqs.amazonaws.com\""
| json "eventSource" nodrop
| json "userIdentity.type" as type nodrop
| json "userIdentity.arn" as arn nodrop
| json "userName" nodrop 
| json "eventName" nodrop
| where eventSource="sqs.amazonaws.com"
| parse field=arn ":assumed-role/*" as user
| if (isEmpty(userName), user, userName) as user
| count as eventCount by user
| top 10 user by eventCount

  • この記事は役に立ちましたか?