処理の実行
イベント開始時刻のタイムスタンプを取得します。
変数の設定:
LOGS_EVENT_TIME_START=$( \
cat ${FILE_LOGS_EVENT_UNIXTIME_START} \
) \
&& echo ${LOGS_EVENT_TIME_START}
結果(例):
ログフィルターを利用してCloudWatch Logsログイベントを取得します。
変数の確認:
cat << END
# LOGS_GROUP_NAME:"/aws/lambda/handson-cli-lambda-basic-layer-function"
LOGS_GROUP_NAME="${LOGS_GROUP_NAME}"
# LOGS_EVENT_MAX_ITEMS:"4"
LOGS_EVENT_MAX_ITEMS="${LOGS_EVENT_MAX_ITEMS}"
# LOGS_EVENT_TIME_START:"16xxxxxxxx"
LOGS_EVENT_TIME_START="${LOGS_EVENT_TIME_START}"
END
コマンド:
aws logs filter-log-events \
--log-group-name ${LOGS_GROUP_NAME} \
--max-items ${LOGS_EVENT_MAX_ITEMS} \
--start-time ${LOGS_EVENT_TIME_START}000 \
--query 'events'
結果(例):
[
{
"ingestionTime": 1613559935157,
"ingestionTime": 16xxxxxxxxxxx,
"timestamp": 1613559926070,
"message": "START RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx Version: $LATEST\n",
"eventId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"logStreamName": "2021/02/17/[$LATEST]xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
},
{
"ingestionTime": 1613559935157,
"timestamp": 1613559926076,
"message": "body: Hello from layer\n",
"eventId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"logStreamName": "2021/02/17/[$LATEST]xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
},
{
"ingestionTime": 1613559935157,
"timestamp": 1613559926076,
"message": "END RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n",
"eventId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"logStreamName": "2021/02/17/[$LATEST]xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
},
{
"ingestionTime": 1613559935157,
"timestamp": 1613559926076,
"message": "REPORT RequestId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\tDuration: 5.55 ms\tBilled Duration: 6 ms\tMemory Size: 128 MB\tMax Memory Used: 52 MB\tInit Duration: 139.42 ms\t\n",
"eventId": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"logStreamName": "2021/02/17/[$LATEST]xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
]
完了確認
「CloudWatch Logsロググループ"/aws/lambda/handson-cli-lambda-basic-layer-function"にログイベントが存在する。」ことを確認します。