JAWS-UG CLI専門支部 CloudWatch Logs入門 オンライン参加
いくつか間(ハンズオンも、感想書いてる日も)があきましたが、先日CloudWatch Logsのハンズオンに参加させてもらいました。
Lambda使ってると、裏でたまってくので、ちゃんと把握しておきたいなと思い。
※遅れての参加だったので、冒頭の概念説明を聞けなくて、片手落ちな説明あるかもしれません。。
#163R CloudWatch Logs入門
構造としては、Logs の中に ロググループ。
ロググループの中に、ログストリームとあります。
CloudWatch Logs を扱うときは、収集・ログ書込み か 取得・ログ読込み なのかの視点で考えると理解しやすいとの話。
- 収集・ログ書込み
- 細やかに扱うので、ログストリームに対して操作
- 逆に、ロググループに対しての操作はできない
- 取得・ログ読込み
- 大きなわくで、ざっくり扱うので、ロググループに対して操作
- こちらは、逆にログストリームに対しての操作不可
なるほど、なんとなく友達になれそうな設計。
ハンズオン
今回実施したのは、こんな概要です (資料の当日バージョンより抜粋)。
- 3.1, 3.3 : 矢印がログストリームまでいってるのがポイント (書込み)
- 3.2, 3.4 : 矢印がロググループまでくっついてるのがポイント (読込み)
ドキュメントと範囲
公式ドキュメントは 160ページと、(他に比較して)少ない方とのこと。
現在 CloudWatch LogsをサポートするAWSサービスも、公式ドキュメントにあるので、参照しておくと設計に便利(現在20程度がリストされてる)。
CloudWatch Logs ポイント
保持期間を設定しよう
ロググループに設定される保持期間 (Retantion) は、デフォルトだと 失効しない(Never Expire) なので、用途に応じて設定しておきましょう。
長期保存?1年前との比較でOK?作ってみただけなら7日間。など
サブコマンドとオプションの組み合わせに注意
次のような違いがあるので、結果のソート順を意識しておく。
get-log-events + --limit オプション
新しいものから取得される
$ aws logs get-log-events --log-group-name ${LOGS_GROUP_NAME} --log-stream-name ${LOGS_STREAM_NAME} --limit ${LOGS_EVENT_MAX_ITEMS}
filter-log-events + --max-items オプション
古いものから取得される
$ aws logs filter-log-events --log-group-name ${LOGS_GROUP_NAME} --max-items ${LOGS_EVENT_MAX_ITEMS}
<<
その他
一週間ぐらいたったけど、内容覚えててよかったぁ。
毎月開催いただけるハンズオン、感謝です!