2023/10/31 フロントえんどう
GitHub Actions + Datadogでコードベースの定点観測2023/10/31 BARフロントえんどう@KawamataRyo
View Slide
エンジニア@Lapras.inc元消防士2児の父(育休1年取得中)懸垂, 個人開発@KawamataRyo
今日話すこと
GitHub ActionsとDatadogでプロダクトのコードベースを定点観測したらいろいろ良かった話
コードベースの定点観測とは?
コードベースの状況を時系列データとして計測し、ダッシュボードで可視化すること
どんなものを観測していた?
① リファクタリングの進捗状況
② 依存ライブラリのバージョン追従状況
なぜ作った?
今の進捗をわかりやすく可視化したい時系列で変化を追いたい面白そう
どういう仕組み?
GitHub Actionsで計測スクリプトを定期実行
なぜDatadog?
新たにDBを作る必要がなくて楽時系列データを簡単に可視化できる
計測スクリプトの実装は?
スクリプトの実装例①(メトリクス取得)※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。
スクリプトの実装例①(メトリクス取得)※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。zx経由でnpm-check-updatesを実行して結果をパース。メトリクスを取得。
スクリプトの実装例②(Datadogへ送信)※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。
スクリプトの実装例②(Datadogへ送信)※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。依存ライブラリのメトリクスを取得。
スクリプトの実装例②(Datadogへ送信)※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。Datadogに時系列データとして送信
GitHub Actionsの実装例※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。
GitHub Actionsの実装例※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。1日1回 1時(UTC)に定期実行
GitHub Actionsの実装例※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。対象のプロダクトのコードを取得
GitHub Actionsの実装例※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。計測スクリプトを実行して結果をDatadogに送信
やってみてどうだった?
チーム内外で進捗を把握できるようになった状況悪化に早めに気づけるようになったライブラリ更新に対するモチベーションに繋がった
所感
GitHub Actions + Datadog便利コードベースの定点観測面白い色々応用ができるかも
Happy Hacking!