ハンズオン(簡易版): S3基礎 通知

7. CloudWatch Logsログイベントの取得 (ログフィルター: /aws/lambda/handson-cli-s3-function)

目的

CloudWatch Logsロググループ"/aws/lambda/handson-cli-s3-function"からログフィルターを利用してログイベントを取得します。

パラメータの指定

作業に必要なパラメータを変数に格納をします。

0. リージョンの指定

リージョンを指定します。

環境変数の設定

export AWS_DEFAULT_REGION='ap-northeast-1'

1. CloudWatch Logsロググループ名

CloudWatch Logsロググループ名を指定します。

変数の設定:

LOGS_GROUP_NAME='/aws/lambda/handson-cli-s3-function'

2. ログイベント数

取得するログイベント数を指定します。

変数の設定:

LOGS_EVENT_MAX_ITEMS='7'

各変数に正しいパラメータ値が格納されていることを確認します。

変数の確認:

cat << END

  # 0. AWS_DEFAULT_REGION:"ap-northeast-1"
       AWS_DEFAULT_REGION="${AWS_DEFAULT_REGION}"

  # 1. LOGS_GROUP_NAME:"/aws/lambda/handson-cli-s3-function"
       LOGS_GROUP_NAME="${LOGS_GROUP_NAME}"
  # 2. LOGS_EVENT_MAX_ITEMS:"7"
       LOGS_EVENT_MAX_ITEMS="${LOGS_EVENT_MAX_ITEMS}"

END

手順

ログフィルターを利用してCloudWatch Logsログイベントを取得します。

変数の確認:

cat << END

  # LOGS_GROUP_NAME:"/aws/lambda/handson-cli-s3-function"
    LOGS_GROUP_NAME="${LOGS_GROUP_NAME}"
  # LOGS_EVENT_MAX_ITEMS:"7"
    LOGS_EVENT_MAX_ITEMS="${LOGS_EVENT_MAX_ITEMS}"

END

コマンド:

aws logs filter-log-events \
  --log-group-name ${LOGS_GROUP_NAME} \
  --max-items ${LOGS_EVENT_MAX_ITEMS}

結果(例):

{
  "events": [
    {
        "logStreamName": "2020/06/29/[$LATEST]bb97f6d418d64bc9b02f812f912b807c",
        "timestamp": 1593396605634,
        "message": "START RequestId: b3e49dbe-ab9f-476f-b145-8e1b072c161a Version: $LATEST\n",
        "ingestionTime": 1593396614659,
        "eventId": "35533931702447418360052161361955978351723175912478408704"
    },
    {
        "logStreamName": "2020/06/29/[$LATEST]bb97f6d418d64bc9b02f812f912b807c",
        "timestamp": 1593396605635,
        "message": "## ENVIRONMENT VARIABLES\n",
        "ingestionTime": 1593396614659,
        "eventId": "35533931702469719105250691985097514069995824273984389121"
    },
    {
        "logStreamName": "2020/06/29/[$LATEST]bb97f6d418d64bc9b02f812f912b807c",
        "timestamp": 1593396605635,
        "message": "environ({'PATH': '/var/lang/bin:/usr/local/bin:/usr/bin/:/bin:/opt/bin', 'LD_LIBRARY_PATH': '/var/lang/lib:/lib64:/usr/lib64:/var/runtime:/var/runtime/lib:/var/task:/var/task/lib:/opt/lib', 'LANG': 'en_US.UTF-8', 'TZ': ':UTC', 'LAMBDA_TASK_ROOT': '/var/task', 'LAMBDA_RUNTIME_DIR': '/var/runtime', 'AWS_REGION': 'ap-northeast-1', 'AWS_DEFAULT_REGION': 'ap-northeast-1', 'AWS_LAMBDA_LOG_GROUP_NAME': '/aws/lambda/handson-cli-lambda-function', 'AWS_LAMBDA_LOG_STREAM_NAME': '2020/06/29/[$LATEST]bb97f6d418d64bc9b02f812f912b807c', 'AWS_LAMBDA_FUNCTION_NAME': 'handson-cli-lambda-function', 'AWS_LAMBDA_FUNCTION_MEMORY_SIZE': '128', 'AWS_LAMBDA_FUNCTION_VERSION': '$LATEST', '_AWS_XRAY_DAEMON_ADDRESS': '169.254.79.2', '_AWS_XRAY_DAEMON_PORT': '2000', 'AWS_XRAY_DAEMON_ADDRESS': '169.254.79.2:2000', 'AWS_XRAY_CONTEXT_MISSING': 'LOG_ERROR', 'AWS_EXECUTION_ENV': 'AWS_Lambda_python3.8', '_HANDLER': 'handson-cli-lambda-function.lambda_handler', 'AWS_ACCESS_KEY_ID': 'ASIAVG7QTSKLRGR2JC4R', 'AWS_SECRET_ACCESS_KEY': '+lpE3FT3I2Abe5fNEFdSznEE/rqmtA2rb8C+gsML', 'AWS_SESSION_TOKEN': 'IQoJb3JpZ2luX2VjEHIaDmFwLW5vcnRoZWFzdC0xIkcwRQIgBsxMcgDF1hgVClTFIgBZyWNj6XGOrlJmoOAcVtprHrgCIQCf5ot4oXrgPwL76grsoDxyjoZk9aI5dGbmkdDZpuWsfSrjAQj7//////////8BEAAaDDM1ODU5NzQ5NzQ5NSIMlHkML+jQ59AILWMZKrcBD6JeE/uxBI2VBcjair0qX/76HZcb4SKSmrV01hc0zzI0xmCoAVbfa4jT73qtcaNsOJB37XCN8SpUfhAGQs218woM86iJklk5x2BKwn0hy34kdmH8E01xDt1/Lcm9IfIFaodjbvbWzgxkq2keywfAPeXV+hojG/9oY5h0TiJdzkJt4zarWjEKu4MIE5a8QVxsH8z2fzCGpbF29yr5yh/3mtbW0NBZiUFiEerzBqBN9YE9XAw80EbKMP2a5fcFOuAB7X8uJ+KYPfFzTe4+jBen9uuUl3RWltpxSuKFDvw27Ov1WJnn7ZrIXQM+/BoaeKBpFLtTc3ikdykaIyed3Vq+WFaK1hl5us/H7vA5h/QPwYlt3tskRMumRShZ/9mKseB2CkndSI11WYB6HIppI2b0Q10qkamubyzpEyHpg9SvCZvv4peW84uH0glfVZ+AQs08euZoJp02MS8l2WUYrPuxbWNVxK2CGRfUUe5Q0TZsySWUCVwcw4II2JqI8u5uyBzbX609Cs+Ui6Sw1DDxhUIr8t94TI/eHxW3HKJ6Y2wtjz4=', 'PYTHONPATH': '/var/runtime', '_X_AMZN_TRACE_ID': 'Root=1-5ef94d7d-d51fa166d3519ac21ced2bb2;Parent=32796e12172574b3;Sampled=0'})\n",
        "ingestionTime": 1593396614659,
        "eventId": "35533931702469719105250691985097514069995824273984389122"
    },
    {
        "logStreamName": "2020/06/29/[$LATEST]bb97f6d418d64bc9b02f812f912b807c",
        "timestamp": 1593396605635,
        "message": "## EVENT\n",
        "ingestionTime": 1593396614659,
        "eventId": "35533931702469719105250691985097514069995824273984389123"
    },
    {
        "logStreamName": "2020/06/29/[$LATEST]bb97f6d418d64bc9b02f812f912b807c",
        "timestamp": 1593396605635,
        "message": "{}\n",
        "ingestionTime": 1593396614659,
        "eventId": "35533931702469719105250691985097514069995824273984389124"
    },
    {
        "logStreamName": "2020/06/29/[$LATEST]bb97f6d418d64bc9b02f812f912b807c",
        "timestamp": 1593396605636,
        "message": "END RequestId: b3e49dbe-ab9f-476f-b145-8e1b072c161a\n",
        "ingestionTime": 1593396614659,
        "eventId": "35533931702492019850449222608239049788268472635490369541"
    },
    {
        "logStreamName": "2020/06/29/[$LATEST]bb97f6d418d64bc9b02f812f912b807c",
        "timestamp": 1593396605636,
        "message": "REPORT RequestId: b3e49dbe-ab9f-476f-b145-8e1b072c161a\tDuration: 1.28 ms\tBilled Duration: 100 ms\tMemory Size: 128 MB\tMax Memory Used: 50 MB\tInit Duration: 111.31 ms\t\n",
        "ingestionTime": 1593396614659,
        "eventId": "35533931702492019850449222608239049788268472635490369542"
    }
  ],
  "searchedLogStreams": [
    {
        "logStreamName": "2020/06/29/[$LATEST]bb97f6d418d64bc9b02f812f912b807c",
        "searchedCompletely": true
    }
  ]
}