$30 off During Our Annual Pro Sale. View Details »

GitHub Actions と Datadog でコードベースの定点観測

ryo
October 31, 2023

GitHub Actions と Datadog でコードベースの定点観測

2023/10/31 フロントえんどう

ryo

October 31, 2023
Tweet

More Decks by ryo

Other Decks in Technology

Transcript

  1. GitHub Actions + Datadogで
    コードベースの定点観測
    2023/10/31 BARフロントえんどう
    @KawamataRyo

    View Slide

  2. エンジニア@Lapras.inc
    元消防士
    2児の父(育休1年取得中)
    懸垂, 個人開発
    @KawamataRyo

    View Slide

  3. 今日話すこと

    View Slide

  4. GitHub ActionsとDatadogで
    プロダクトのコードベースを定点観測したら
    いろいろ良かった話

    View Slide

  5. コードベースの定点観測とは?

    View Slide

  6. コードベースの状況を時系列データとして計測し、
    ダッシュボードで可視化すること

    View Slide

  7. どんなものを観測していた?

    View Slide

  8. ① リファクタリングの進捗状況

    View Slide

  9. ① リファクタリングの進捗状況

    View Slide

  10. ② 依存ライブラリのバージョン追従状況

    View Slide

  11. ② 依存ライブラリのバージョン追従状況

    View Slide

  12. なぜ作った?

    View Slide

  13. 今の進捗をわかりやすく可視化したい
    時系列で変化を追いたい
    面白そう

    View Slide

  14. どういう仕組み?

    View Slide

  15. GitHub Actionsで計測スクリプトを定期実行

    View Slide

  16. なぜDatadog?

    View Slide

  17. 新たにDBを作る必要がなくて楽
    時系列データを簡単に可視化できる

    View Slide

  18. 計測スクリプトの実装は?

    View Slide

  19. スクリプトの実装例①(メトリクス取得)
    ※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。

    View Slide

  20. スクリプトの実装例①(メトリクス取得)
    ※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。
    zx経由でnpm-check-updatesを実行して結果をパース。
    メトリクスを取得。

    View Slide

  21. スクリプトの実装例②(Datadogへ送信)
    ※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。

    View Slide

  22. スクリプトの実装例②(Datadogへ送信)
    ※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。
    依存ライブラリのメトリクスを取得。

    View Slide

  23. スクリプトの実装例②(Datadogへ送信)
    ※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。
    Datadogに時系列データとして送信

    View Slide

  24. GitHub Actionsの実装例
    ※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。

    View Slide

  25. GitHub Actionsの実装例
    ※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。
    1日1回 1時(UTC)に定期実行

    View Slide

  26. GitHub Actionsの実装例
    ※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。
    対象のプロダクトのコードを取得

    View Slide

  27. GitHub Actionsの実装例
    ※ スライドに乗せるためコードを省略しています。参考程度にご覧ください。
    計測スクリプトを実行して結果をDatadogに送信

    View Slide

  28. やってみてどうだった?

    View Slide

  29. チーム内外で進捗を把握できるようになった
    状況悪化に早めに気づけるようになった
    ライブラリ更新に対するモチベーションに繋がった

    View Slide

  30. 所感

    View Slide

  31. GitHub Actions + Datadog便利
    コードベースの定点観測面白い
    色々応用ができるかも

    View Slide

  32. Happy Hacking!

    View Slide