サマリ
- 社内イベント楽しい! Datadog Tシャツもらった!
- profilerがすごい!あるリクエスト中のCPU使用率を関数単位で見れるぞ!
- トレースクエリの検索機能もすごい!AからBに対するリクエストという検索ができるぞ!
- Datadogのロゴのかわいいワンちゃんは bits という名前だぞ!これだけでも覚えて帰ってくれ!

あいさつ
こんにちは。freee申告・所得税の開発をしています。新卒二年目のsuzakiです。 所得税というと定額減税とか103万の壁とかのヤツですね。
自分は愛知県に住んでいるので普段は中部オフィスに出社しています。 24新卒の中で中部オフィスで勤務しているのは自分だけなので、大崎オフィスにいる同期に会えるイベントには飛びつきます。
さて、4/21(月)にDatadog CTFという社内イベントがありました。 Datadog様に直接来ていただきDatadogについて教えていただける場です。すごい!
私たちは普段の業務で様々なログを収集しモニタリングしており、その中でもDatadogはよく使うツールです。 普段使っているサービスの中の人とお話できるだけでもワクワクしますね。

Datadogはどんな時に使うか
- 特定の通信でエラーが出てそうなので調査
弊社ではエラーロギング専用のBugSnagというサービスも使っていますが、Datadogを使ったエラー調査もします。 フロントエンド・バックエンド・データベースなどのリソース間の通信の内容がわかるので、通信の詳細からバグを発見したりします。

- 毎日異常がないかグラフでチェック
DatadogではCPU使用率やエラー数、DB負荷などをグラフで表示できます。新規機能をリリースした直後にエラーが出始めたら何かバグが潜んでいたとわかりますし、DBの負荷が跳ね上がったら実装の問題があると判断できます。日々の安定稼働のためにメトリクスの確認は欠かせません。

どんなイベントだったのか
社内SREさんが企画・運営をしてくださり、Datadog様に監修していただく形で開催されました。
地方にいる自分も大崎に行けるとのことで大喜びで参加しました。
イベントはCTF(Capture The Flag)形式で進められ、与えられた問題に回答して点数を競いました。 与えられた時間は約3時間で、その間ログの海の中に潜ります。
参加者は僕を含めて24人でした。今回なんと点数が高かった上位数人に景品が出ました。景品があるとやる気になりますよね。

点数が常にスクリーンに出て「OOが一気に追い上げてきた!」「もうOO点なの!?早い!」みたいな盛り上がりもありました。
Datadog イベントで学んだこと
- profilerっていうスゲエ機能がある
1つの通信をする時、プログラム上では多くの処理を走らせます。例えばデータベースからデータを取得したり、そのデータを加工してレスポンスとしてフロントに渡したり、そのレスポンスをレンダリングして表示したり。
もしその中で1つの処理がとても非効率な実装になっていて時間がかかるとしたら?
当然処理の合計時間が大きくなります。
しかし多くの処理を通るもので一体どこに非効率な実装があるかわかりません。そんな時に使える機能を教えてもらいました。

それがprofilerです。それぞれの通信の詳細を関数レベルで確認できます。意味がわかりません。謎技術です。
処理時間が長い通信がある → profilerを見る → 重い処理をしてる場所がわかる → 改善する → 品質UP!という流れがすぐにできます。本当にすごい。
- トレースクエリでより高度な検索ができる
サービスの数が増えてサービスが連携するサービスが増えると、ログを見ても「どのサービスに対する通信だろう...」となってしまいます。 サービスAからサービスBに対する通信だけ見たい!という要望に応えるのがトレースクエリです。

例えばトレースクエリでは「フロントエンドがバックエンドに出したリクエスト」といった検索できます。 ここの通信間ではどんなデータが送られているのだろうか。と、気になった時に実際のデータをサクッと見られるのは嬉しいですね。
他にも「特定のバックエンドが特定のデータベースに出したリクエスト数」が予想の100倍、1000倍もあればN+1問題が発生していると推測できたりします。便利ですね!
というわけでDatadogイベントは楽しかったです
企画・運営してくださった社内SREチームの皆様(yamaさん、kamenekoさん、ryuさん)と監修していただいたDatadog様、ありがとうございます。
筆者のsuzakiは地方勤務なので普段会わない同期に会うだけでもめちゃめちゃ楽しかったです。
そんな私は景品でDatadog Tシャツを貰いました!びっくりするほど生地が良くて普段着として使いたいレベルです。
というわけで、楽しいイベントでした。こういう社内イベントは業務に活かせる点も大きいのでドンドン参加したいですね!

