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
1.7k
GitHub Actions と Datadog でコードベースの定点観測
2023/10/31 フロントえんどう
ryo
October 31, 2023
Tweet
Share
More Decks by ryo
See All by ryo
個人開発駆動学習 / personal development driven learning
kawamataryo
1
100
GitHub Trending Bot, Sky Follower Bridge の紹介
kawamataryo
0
180
[Minecraft × ChatGPT] マイクラで作りたいものを伝えると魔法のように作ってくれるコマンドを作る
kawamataryo
0
1.9k
Resumable な JavaScript フレームワーク Qwik を学ぶ / qwik-resumable
kawamataryo
0
3.2k
JSからTSへ移行した Vue.jsプロダクトの型チェックを 漸進的に強化する/ reinforcing the type
kawamataryo
0
3.1k
Webで動画解析 〜Google Meetの挙手とリアルの挙手を連動させるChrome拡張作った話〜 / sync-raise-hand
kawamataryo
0
120
suppress-ts-errors を使って TypeScriptの型チェックを漸進的に強化する / Introducing-suppress-ts-errors
kawamataryo
2
470
Python の dotted path をコピーするVS Code 拡張を作ってみた / I made a copy python path.
kawamataryo
0
300
OSS活動ことはじめ / begin oss activities
kawamataryo
7
5.2k
Other Decks in Technology
See All in Technology
「できる!」を増やすGitHub Copilot活用法 / How to use GitHub Copilot to expand your possibilities
sansan_randd
2
270
日本が誇るイタリアのダンスミュージック!? ユーロビートって何??
minorun365
PRO
2
270
今さら聞けないシリーズ - はじめてのPython
taka_aki
0
100
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
5
38k
データベース05: SQL(2/3) 結合質問
trycycle
0
120
Playing Tetris with Cognitive Load @ Codemotion, May 2024
mfpais
PRO
0
120
エムスリーQAチーム紹介資料 / Introduction of M3 QA Team
m3_engineering
1
350
大規模言語モデル (LLM)における低精度数値表現
pfn
PRO
3
910
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
9
38k
Deno Queue を使って OGP画像の遅延作成をやってみる
toranoana
1
120
生成AI活用推進の為にやったこと/やらなかったこと
ktc_wada
0
240
My road to OSEE Part1
yunolay
0
140
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
165
13k
The Invisible Side of Design
smashingmag
294
49k
Clear Off the Table
cherdarchuk
86
310k
Creatively Recalculating Your Daily Design Routine
revolveconf
211
11k
[RailsConf 2023] Rails as a piece of cake
palkan
30
4.1k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
41
4.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
275
13k
Optimizing for Happiness
mojombo
371
69k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
2
150
Facilitating Awesome Meetings
lara
43
5.6k
Mobile First: as difficult as doing things right
swwweet
217
8.6k
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!