journagu

awsのObservability Workshopをやってみた

目次

概要

GW どこにもいけないので退屈していたところ、ネットサーフィンをしててこんな記事が目に入った。

AWS の監視系サービスが一気に学べる公式ワークショップに新コンテンツが追加されたのでやってみた

AWS がなんかワークショップを公開してるらしい。しかも 3〜4 時間くらいで可観測性について一通りさらえるとか。 僕は監視プラットフォームチームにいるけど現場でトレーシングをどう活用してるのか実感が湧いてなかったのでやってみることにした。

講師もおらず資料だけなので得られることは多くはなさそうだけど、これを機にクラウド(AWS)環境下での可観測性についてどう実現しているのか覗いてみようと思う。

参考にしたワークショップはこちら。

https://observability.workshop.aws/ja/

気になったところ

トレーシング(X-Ray)

AWS X-Ray

どのコンポーネントとの通信でレイテンシが悪化しているのか(原因特定)にトレーシングが利用できる

時間帯別ではレイテンシが速い/遅いが区別できないため、時間による影響ではない → 各コンポーネントのレスポンスタイムを見てみると S3 から特定条件の画像データを GET するときに時間がかかってそう → レスポンスが速い山と遅い山の 2 つあり、リクエストの半分近くが遅い山にあるのでここが原因というアタリがつく

ワークショップでは大体こんなストーリーだったと思う。

aws-observavility-ws-xray

アタリがついたので実際にワークショップ用アプリのコードを見てたらそれっぽい箇所も見つけた

エンドポイントの監視(Synthetics)

外形監視っぽく利用者がいない状況(深夜など)でも外からエンドポイントを叩いて異常がないかを見れる。

エンドポイントの可用性やレンテンシの記録をしてくれて、ui テストのときは適宜スクリーンショットが保存できるようになってる。 資料では ui のテストと api エンドポイントのテスト 2 通りがあって ui と api でエンドポイント名が微妙に違うところでハマった。。

ログ・メトリクス(CloudWatch - ログ、メトリクス)

普段利用してるプロダクトとの差分について見てた。 それぞれの良いところや惜しいところが発見できて楽しかった。

よくわからなかったこと

Contributor Insights が薄すぎてどういう用途で使うのかなど全然わからなかった。

その他雑感

AWS っていうまとまりの中で提供される監視サービスは連携がスムーズなので使ってて気持ちいい。 ただ、AWS 慣れしてないため一つ一つの操作に時間がかかってしまったことと、多分現場で講師が解説してくれるところを調べる必要があったので 3〜4 時間ではとても終わらなかった。(スペシャリストからのインプットは効率的だなぁ。。)

慣れてない中、ワークショップ環境の削除スクリプトがうまく動かず各種設定を手で削除して回ったのが大変だった。 しかも削除忘れがあったようで、次の日起きたら 1,500 円くらい請求がキテタ…会社の勉強費用補助制度使わせてもらおう。

今回はじめる動機になった記事には Prometheus、Grafana の項目が追加されましたイェイイェイって感じだったけど、ワークショップ環境を東京リージョンで作った傍ら、AMP, AMG は東京リージョンで利用できなかったので面倒くさくなって投げた。 今度適当にインスタンス建てて触ってみたい。

こういう監視やテストとかのプラクティスをインプットするときに、実際に稼働していて利用ユーザがいる適当なアプリケーションがほしくなるけど、手持ちが無くて辛い経験を何度か味わっているので手持ちを増やしたいなぁ〜。

おしまい(¦3[___]