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
Change Tracking でデプロイを記録してパフォーマンスへの影響を分析しやすくしよう
Search
TVer Inc.
PRO
May 13, 2024
Technology
1
250
Change Tracking でデプロイを記録してパフォーマンスへの影響を分析しやすくしよう
TVer Inc.
PRO
May 13, 2024
Tweet
Share
More Decks by TVer Inc.
See All by TVer Inc.
TVer iOSチームの共通認識の作り方 - Findy Job LT iOSアプリ開発の裏側 開発組織が向き合う課題とこれから
techtver
PRO
0
970
20240710_HR SUCCESS SUMMIT 2024_テーマセッション「エンジニア採用2.0」登壇資料(株式会社TVer_香坂)
techtver
PRO
0
72
採用応募者の個人情報保護の取扱いについて_株式会社TVer
techtver
PRO
0
490
月間4.5億回再生を超える大規模サービス TVer iOSアプリのリアーキテクチャ戦略 - iOSDC2024
techtver
PRO
1
12k
成長し続けるTVerサービスを支える オブザーバビリティとカスタマーサポート
techtver
PRO
5
5.6k
採用人事の立場で行う採用広報・技術広報の裏側 〜TVerがエンジニア採用を本格化するために継続し続けたこと〜
techtver
PRO
2
740
株式会社TVer 会社紹介資料
techtver
PRO
9
87k
採用人事の立場から、採用広報の立ち上げや技術広報の促進をしている話
techtver
PRO
0
1.2k
バックエンドで頑張るSEO/OGP対策
techtver
PRO
0
2.2k
Other Decks in Technology
See All in Technology
ソフトウェア エンジニアとしての 姿勢と心構え
recruitengineers
PRO
10
3.6k
ドキュメントはAIの味方!スタートアップのアジャイルを加速するADR
kawauso
3
420
イオン店舗一覧ページのパフォーマンスチューニング事例 / Performance tuning example for AEON store list page
aeonpeople
2
330
夢の印税生活 / Life on Royalties
tmtms
0
290
[CVPR2025論文読み会] Linguistics-aware Masked Image Modelingfor Self-supervised Scene Text Recognition
s_aiueo32
0
210
そのコンポーネント、サーバー?クライアント?App Router開発のモヤモヤを可視化する補助輪
makotot
4
710
Postman MCP 関連機能アップデート / Postman MCP feature updates
yokawasa
1
170
kintone開発チームの紹介
cybozuinsideout
PRO
0
73k
AIエージェントの開発に必須な「コンテキスト・エンジニアリング」とは何か──プロンプト・エンジニアリングとの違いを手がかりに考える
masayamoriofficial
0
430
LLMエージェント時代に適応した開発フロー
hiragram
1
430
知られざるprops命名の慣習 アクション編
uhyo
11
2.7k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
30k
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Statistics for Hackers
jakevdp
799
220k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Writing Fast Ruby
sferik
628
62k
Transcript
Change Tracking でデプロイを記録して パフォーマンスへの影響を分析しやすくしよう New Relic User Group Vol.9 株式会社TVer
髙品純大
Speaker • 名前 ◦ 髙品純大 • 仕事 ◦ TVer 広告関連システムの
開発, 構築, 運用 • 職種 ◦ インフラエンジニア・SRE Neovim 好き
お話すること • Change Tracking という便利な機能の紹介 • Change Tracking の開始方法
Change Tracking とは? • アプリケーションのデプロイ(変更)を New Relic に記録する機能 ◦ APM,
Browser, Mobile で利用可能 • メリット ◦ デプロイとパフォーマンスの変化に関連があるか分かりやすい ▪ デプロイ前後の速度, スループット, エラーの変化 ◦ 影響を与えたデプロイをすぐに特定できる
こんなときどうしますか? • Web transactions time の メトリクスがおかしい • 関連が疑われるイベントの 有無と内容を確認する
◦ デプロイ? ◦ 基盤の問題? ◦ 外部要因? APM の Web transactions time
Change Tracking あり • デプロイの記録とメトリクスを同時に確認 できるので、2つの事象に関係があるか 分析しやすい • Web transactions
time を悪化させた 可能性がある変更内容を特定しやすい メトリクスとデプロイの記録を同時に 確認することができる
Change Tracking なし • メトリクスから読み取れるのは、 Web transactions time が遅くなった という事実だけ
• デプロイが原因かもしれないし、 そうではないかもしれない メトリクスのみ
Change Tracking はなぜ便利なのか なにかおかしいメトリクスを分析するときの思考 1. 原因となりそうなイベントを複数思い浮かべる 2. イベントの有無と内容を調べ、原因を特定していく Change Tracking
はこの思考において 2 の効率を高めてくれるから便利
Change Tracking 開始方法 • CI / CD パイプラインの中に New Relic
へデータを送信する処理を 追加する • 公式の GitHub Action, Jenkins Plugin がある • お好きな言語でスクリプトを 書いてもOK New Relic の公式 GitHub Action
GitHub Action アプリケーションのバージョンを取得 する newrelic/deployment-marker-action に必要な情報を渡す GitHub Actions workflow workflowに10行程度追記するだけ
使用開始するハードルが低い
シェルスクリプト NerdGraph API Explorer で curl コマンドを生成できる NerdGraph API Explorer
の画面 生成されたコマンドを参考に シェルスクリプトを作成する 参考ブログ https://techblog.tver.co.jp/entr y/takashina/tver-advent-calen dar-2023-newrelic-change-tra cking
まとめ • Change Tracking はアプリケーションのパフォーマンス分析、調査の 効率を高める ◦ デプロイの記録とメトリクスを重ねて見ることで、 パフォーマンスへの影響が理解しやすくなる •
簡単に使い始めることができる ◦ New Relic に変更情報を送信する方法は複数用意されているので、 CI /CD ツールと組み合わせやすい