Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
GitHub Actions と Datadog でコードベースの定点観測
Search
ryo
October 31, 2023
Technology
7
2k
GitHub Actions と Datadog でコードベースの定点観測
2023/10/31 フロントえんどう
ryo
October 31, 2023
Tweet
Share
More Decks by ryo
See All by ryo
Raycast AI APIを使ってちょっと便利な拡張機能を作ってみた / created-a-handy-extension-using-the-raycast-ai-api
kawamataryo
0
370
ts-morphのパフォーマンス改善Tips
kawamataryo
0
30
webpack to Rspack
kawamataryo
0
40
個人開発駆動学習 / personal development driven learning
kawamataryo
1
210
GitHub Trending Bot, Sky Follower Bridge の紹介
kawamataryo
0
390
[Minecraft × ChatGPT] マイクラで作りたいものを伝えると魔法のように作ってくれるコマンドを作る
kawamataryo
0
2.3k
Resumable な JavaScript フレームワーク Qwik を学ぶ / qwik-resumable
kawamataryo
0
3.4k
JSからTSへ移行した Vue.jsプロダクトの型チェックを 漸進的に強化する/ reinforcing the type
kawamataryo
0
3.3k
Webで動画解析 〜Google Meetの挙手とリアルの挙手を連動させるChrome拡張作った話〜 / sync-raise-hand
kawamataryo
0
240
Other Decks in Technology
See All in Technology
持続可能なドキュメント運用のリアル: 1年間の成果とこれから
akitok_
1
230
Notion x ポストモーテムで広げる組織の学び / Notion x Postmortem
isaoshimizu
1
120
Goの組織でバックエンドTypeScriptを採用してどうだったか / How was adopting backend TypeScript in a Golang company
kaminashi
12
8.7k
Рекомендации с нуля: как мы в Lamoda превратили главную страницу в ключевую точку входа для персонализированного шоппинга. Данил Комаров, Data Scientist, Lamoda Tech
lamodatech
0
810
CodePipelineのアクション統合から学ぶAWS CDKの抽象化技術 / codepipeline-actions-cdk-abstraction
gotok365
5
310
Making a MIDI controller device with PicoRuby/R2P2 (RubyKaigi 2025 LT)
risgk
1
330
Porting PicoRuby to Another Microcontroller: ESP32
yuuu
4
480
AIコーディングの最前線 〜活用のコツと課題〜
pharma_x_tech
4
2.7k
ここはMCPの夜明けまえ
nwiizo
32
12k
Bazel for Ruby (RubyKaigi 2025)
p0deje
0
130
コードや知識を組み込む / Incorporating Codes and Knowledge
ks91
PRO
0
130
クォータ監視、AWS Organizations環境でも楽勝です✌️
iwamot
PRO
1
350
Featured
See All Featured
Bash Introduction
62gerente
611
210k
Statistics for Hackers
jakevdp
798
220k
The Cost Of JavaScript in 2023
addyosmani
49
7.7k
Reflections from 52 weeks, 52 projects
jeffersonlam
349
20k
Making Projects Easy
brettharned
116
6.1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
5
570
Code Review Best Practice
trishagee
67
18k
Typedesign – Prime Four
hannesfritz
41
2.6k
Docker and Python
trallard
44
3.3k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Transcript
GitHub Actions + Datadogで コードベースの定点観測 2023/10/31 BARフロントえんどう @KawamataRyo
エンジニア@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!