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

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

DynamoDB からログとメトリクスを収集して Sumo に取り込む手順です。

Amazon DynamoDB のメトリクスの収集 

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

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

  1. Hosted Collector に AWS CloudTrail Source を追加します。
    1. Name (名前): 新しい Source に表示する名前を入力します。
    2. Description (説明): 説明 (省略可能) を入力します。
    3. S3 Region (S3 リージョン)。DynamoDB S3 バケットの Amazon リージョンを選択します。
    4. Bucket Name (バケット名)。DynamoDB S3 バケットの名前を正確に入力します。
    5. Path Expression (パス式)。収集する S3 オブジェクトに一致する文字列を入力します。この文字列では、ワイルドカードを 1 つ使用できます。(先頭にスラッシュを付けないでください。「Amazon のパス式」参照。)
    6. Source Category: dynamodb_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.05",
  "userIdentity":{
     "type":"IAMUser",
     "principalId":"AIDAIBF5TU7HNYUE7V676",
     "arn":"arn:aws:iam::568388783903:user/ankit",
     "accountId":"568388783903",
     "accessKeyId":"ASIAI3Q5RU4FIZFHFJZA",
     "userName":"ankit",
     "sessionContext":{
        "attributes":{
           "mfaAuthenticated":"false",
           "creationDate":"2017-10-10T23:01:45+0000"
        }
     },
     "invokedBy":"signin.amazonaws.com"
  },
  "eventTime":"2017-10-10T23:01:45+0000",
  "eventSource":"dynamodb.amazonaws.com",
  "eventName":"DescribeTable",
  "awsRegion":"us-east-1",
  "sourceIPAddress":"38.99.50.98",
  "userAgent":"signin.amazonaws.com",
  "requestParameters":{
     "tableName":"users3"
  },
  "responseElements":null,
  "requestID":"AIFQQ1I27ASKDSAQ4L9L4DTQPVVV4KQNSO5AEMVJF66Q9ASUAAJG",
  "eventID":"f2bec08c-a56a-4f04-be92-0cac7aaabe9b",
  "eventType":"AwsApiCall",
  "apiVersion":"2012-08-10",
  "recipientAccountId":"568388783903"
}

クエリのサンプル

イベントのカウント 

_sourceCategory=dynamodb/cloudtrail "dynamodb.amazonaws.com"
| json "eventName" as event_name
| json field=_raw "awsRegion" as region
| json field=_raw "userIdentity.userName" as user
| count by event_name

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