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
月間動画再生数2億回を支える TVerのオブザーバビリティ
Search
TVer Inc.
PRO
March 11, 2022
Technology
3
1.2k
月間動画再生数2億回を支える TVerのオブザーバビリティ
2022/03/11
Observability Conference 2022
イベントURL :
https://event.cloudnativedays.jp/o11y2022
TVer Inc.
PRO
March 11, 2022
Tweet
Share
More Decks by TVer Inc.
See All by TVer Inc.
株式会社TVer 会社紹介資料
techtver
PRO
9
100k
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
3
1.8k
Feature Flagを定義から削除まで 安全に行うために考えたこと
techtver
PRO
0
520
4100万ユーザーを支えるTVer iOSアプリ開発 〜0人から始まったチームのAI活用による挑戦〜
techtver
PRO
1
2.4k
TVer iOSチームの共通認識の作り方 - Findy Job LT iOSアプリ開発の裏側 開発組織が向き合う課題とこれから
techtver
PRO
0
1.1k
20240710_HR SUCCESS SUMMIT 2024_テーマセッション「エンジニア採用2.0」登壇資料(株式会社TVer_香坂)
techtver
PRO
0
110
採用応募者の個人情報保護の取扱いについて_株式会社TVer
techtver
PRO
0
630
月間4.5億回再生を超える大規模サービス TVer iOSアプリのリアーキテクチャ戦略 - iOSDC2024
techtver
PRO
2
13k
成長し続けるTVerサービスを支える オブザーバビリティとカスタマーサポート
techtver
PRO
5
5.8k
Other Decks in Technology
See All in Technology
ハッカソンから社内プロダクトへ AIエージェント ko☆shi 開発で学んだ4つの重要要素
leveragestech
0
240
AI駆動開発ライフサイクル(AI-DLC)の始め方
ryansbcho79
0
200
MariaDB Connector/C のcaching_sha2_passwordプラグインの仕様について
boro1234
0
1k
マイクロサービスへの5年間 ぶっちゃけ何をしてどうなったか
joker1007
21
8.3k
MySQLのSpatial(GIS)機能をもっと充実させたい ~ MyNA望年会2025LT
sakaik
0
130
日本Rubyの会: これまでとこれから
snoozer05
PRO
6
250
モダンデータスタックの理想と現実の間で~1.3億人Vポイントデータ基盤の現在地とこれから~
taromatsui_cccmkhd
2
270
AIBuildersDay_track_A_iidaxs
iidaxs
4
1.4k
なぜ あなたはそんなに re:Invent に行くのか?
miu_crescent
PRO
0
210
Identity Management for Agentic AI 解説
fujie
0
490
100以上の新規コネクタ提供を可能にしたアーキテクチャ
ooyukioo
0
260
Snowflake導入から1年、LayerXのデータ活用の現在 / One Year into Snowflake: How LayerX Uses Data Today
civitaspo
0
2.5k
Featured
See All Featured
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
286
14k
Code Reviewing Like a Champion
maltzj
527
40k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
120
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
400
AI: The stuff that nobody shows you
jnunemaker
PRO
1
28
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
Writing Fast Ruby
sferik
630
62k
Technical Leadership for Architectural Decision Making
baasie
0
190
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Transcript
݄ؒಈը࠶ੜ2ԯճΛࢧ͑Δ TVerͷΦϒβʔόϏϦςΟ גࣜձࣾ TVer / Ճզ وࢤ 2022/03/11 Observability Conference
2022
͜ͷηογϣϯʹ͍ͭͯ ຊ͓͢Δ͜ͱ • TVerʹ͓͚ΔΦϒβʔόϏϦςΟ࣮ݱϓϩηε • New Relic Oneͷ׆༻ࣄྫ
͜ͷηογϣϯʹ͍ͭͯ ओͳλʔήοτ • ͜Ε͔ΒΦϒβʔόϏϦςΟΛ࣮ݱ͍ͨ͠ • πʔϧಋೖ͚ͨ͠Ͳ׆༻ͰΜͰ͍Δ • New Relic Oneͷ͍ํʹڵຯ͕͋Δ
डߨऀϨϕϧ • ΦϒβʔόϏϦςΟॳڃऀ🔰
ΞδΣϯμ • TVerͷհ • αʔϏεͷͱݟ͖͑ͯͨ՝ • New Relic OneಋೖʹΑΔվળͷτϥΠ •
ΦϒβʔόϏϦςΟ࠶ઃܭ • New Relic Oneͷ׆༻ࣄྫ • ·ͱΊ
ΞδΣϯμ • TVerͷհ • αʔϏεͷͱݟ͖͑ͯͨ՝ • New Relic OneಋೖʹΑΔվળͷτϥΠ •
ΦϒβʔόϏϦςΟ࠶ઃܭ • New Relic Oneͷ׆༻ࣄྫ • ·ͱΊ
TVerͷհ
TVerͷհ
TVerͷհ [TVer] ྦྷܭΞϓϦμϯϩʔυ͕4,000ສಥഁʂ ϨΪϡϥʔͷ৴൪400൪ʹ https://tver.co.jp/news/20210825-1.html
TVerͷհ [TVer] 202110݄ͷ݄ؒಈը࠶ੜ͕ॳͷ2ԯճΛಥഁʂʙࡢಉ݄ൺ̎ഒʹɺίωΫςουTVࢹௌ৳͕ཁҼʙ https://tver.co.jp/news/20211112-1.html
TVerͷओཁͳٕज़ελοΫ
TVerͷΠϯϑϥετϥΫνϟ
TVer (WebαʔϏε) ͷΠϯϑϥετϥΫνϟ
ΞδΣϯμ • TVerͷհ • αʔϏεͷͱݟ͖͑ͯͨ՝ • New Relic OneಋೖʹΑΔվળͷτϥΠ •
ΦϒβʔόϏϦςΟ࠶ઃܭ • New Relic Oneͷ׆༻ࣄྫ • ·ͱΊ
αʔϏεͷͱݟ͖͑ͯͨ՝
αʔϏεͷͱݟ͖͑ͯͨ՝
αʔϏεͷͱݟ͖͑ͯͨ՝
αʔϏεͷͱݟ͖͑ͯͨ՝
αʔϏεͷͱݟ͖͑ͯͨ՝ TVerͷར༻ऀ͕૿Ճ (Ϣʔβʔ / ࠂओ) ↓ ࣾձతͳӨڹ͕ߴ͍ϓϥοτϑΥʔϜ ↓ ϞχλϦϯάपΓͷվળ͕՝
αʔϏεͷͱݟ͖͑ͯͨ՝ ϞχλϦϯάपΓͷ՝ • ϢʔβʔମݧͷѲ • Մ༻ੑύϑΥʔϚϯεͷՄࢹԽ • ൃੜ࣌ͷਝͳղܾ • ϓϩΞΫςΟϒͳϞχλϦϯά
• SLI / SLOʹΑΔ৴པੑͷՄࢹԽ
αʔϏεͷͱݟ͖͑ͯͨ՝ γεςϜͷ؍ଌൣғΛ ͛Δඞཁ͕͋Δ
ΞδΣϯμ • TVerͷհ • αʔϏεͷͱݟ͖͑ͯͨ՝ • New Relic OneಋೖʹΑΔվળͷτϥΠ •
ΦϒβʔόϏϦςΟ࠶ઃܭ • New Relic Oneͷ׆༻ࣄྫ • ·ͱΊ
New Relic OneಋೖʹΑΔվળͷτϥΠ [࠶ܝ] ϞχλϦϯάपΓͷ՝ • ϢʔβʔମݧͷѲ • Մ༻ੑύϑΥʔϚϯεͷՄࢹԽ •
ൃੜ࣌ͷਝͳղܾ • ϓϩΞΫςΟϒͳϞχλϦϯά • SLI / SLOʹΑΔ৴པੑͷՄࢹԽ γεςϜͷ؍ଌൣғΛ͛Δඞཁ͕͋Δ
New Relic OneಋೖʹΑΔվળͷτϥΠ
New Relic OneಋೖʹΑΔվળͷτϥΠ Why New Relic One • ڧྗͳϑϩϯτΤϯυϞχλϦϯά •
ΦϒβʔόϏϦςΟϓϥοτϑΥʔϜ • શํҐͰͷϞχλϦϯά͕Մೳ
New Relic OneಋೖʹΑΔվળͷτϥΠ ಋೖͷྲྀΕ • αʔόαΠυΤϯδχΞ͕ಋೖΛݗҾ • New RelicࣾੵۃతʹಋೖΛαϙʔτ
New Relic OneಋೖʹΑΔվળͷτϥΠ NRU101 New Relic One ೖ https://newrelic.com/jp/resources/presentations/nru101_20211027
New Relic OneಋೖʹΑΔվળͷτϥΠ NRU101 New Relic One ೖ https://newrelic.com/jp/resources/presentations/nru101_20211027
New Relic OneಋೖʹΑΔվળͷτϥΠ ɹ“ಈը৴ࢢͷ֦େʹͬͯߴ·Γଓ͚ΔϢʔβʔɺ ɹࠂओํ͔ΒͷधཁʹԠ͑ΔͨΊʹɺαʔϏεͷ ɹՔಇঢ়گෛՙঢ়گɺϢʔβʔͷࢹௌମݧΛৗʹѲ͠ɺ ɹҟৗͷൃݟͱݪҼͷಛఆɾղܾΛਝ͔ͭޮతʹ ɹߦ͑ΔڥΛඋ͢Δඞཁ͕͋Γ·ͨ͠ɻ” TVerɺΦϒβʔόϏϦςΟʢՄ؍ଌੑʣϓϥοτϑΥʔϜʮNew Relic
OneʯΛಋೖ https://newrelic.com/jp/press-release/20210302
New Relic OneಋೖʹΑΔվળͷτϥΠ New Relic Oneͷಋೖঢ়گ (202112݄) • ΠϯςάϨʔγϣϯ •
ΠϯϑϥετϥΫνϟʔϞχλϦϯά • ϒϥβϞχλϦϯά • ϞόΠϧϞχλϦϯά • ֎ܗࢹ
New Relic OneಋೖʹΑΔվળͷτϥΠ ΦϒβʔόϏϦςΟΛ ࣮ݱ͢ΔͨΊʹ ԿΛ͢Ε͍͍ͩΖ͏ ͔
ΞδΣϯμ • TVerͷհ • αʔϏεͷͱݟ͖͑ͯͨ՝ • New Relic OneಋೖʹΑΔվળͷτϥΠ •
ΦϒβʔόϏϦςΟ࠶ઃܭ • New Relic Oneͷ׆༻ࣄྫ • ·ͱΊ
1. New Relicͷࢥ͔Β ΦϒβʔόϏϦςΟΛ ֶͿ
ΦϒβʔόϏϦςΟ࠶ઃܭ New Relicͷߟ͑ΔΦϒβʔόϏϦςΟ(1) “ࢹࣄલʹఆٛ͞Εͨҟৗ͕ى͖ͨͱ͖ʹ୯ʹ௨͢Δ͚ͩ Ͱ͕͢ɺΦϒβʔόϏϦςΟͰͳͥى͖͔ͨѲ͢Δॿ͚ʹ ͳΓ·͢ɻͦΕʹΑΓνʔϜɺۓٸࣄଶͰਝ͔ͭ༗ޮʹରԠ Ͱ͖ɺظతͳΞϓϦέʔγϣϯύϑΥʔϚϯεͷվળʹऔΓΉ
͜ͱ͕Ͱ͖·͢ɻ” ϞμϯͳՄ؍ଌੑʢΦϒβʔόϏϦςΟʣͱͳʹ͔ https://newrelic.com/jp/blog/best-practices/what-is-modern-observability
ΦϒβʔόϏϦςΟ࠶ઃܭ New Relicͷߟ͑ΔΦϒβʔόϏϦςΟ(2) “New Relic ϝτϦΫεɺΠϕϯτɺϩάɺ͓ΑͼτϨʔε ʢMELT : Metrics,
Events, Logs, TracesʣΛՄ؍ଌੑ࣮ݱͷ جຊతͳσʔλλΠϓͩͱߟ͍͑ͯ·͢ɻ ͯ͢Λܭଌ͠ɺMELTΛ༻ͯ͠γεςϜͷؔͱґଘؔɺ ͦͯͦ͠ͷৄࡉͳύϑΥʔϚϯεͱਖ਼ৗੑΛҡ࣋͢Δ͜ͱ͕ Մ؍ଌੑΛ࣮ݱ͢ΔͨΊʹॏཁͰ͢ɻ” Metrics, Events, Logs, Traces ͬͯͳΜͩʁ https://newrelic.com/jp/blog/how-to-relic/metrics-events-logs-and-traces
2. Google͔Β ΦϒβʔόϏϦςΟΛ ֶͿ
ΦϒβʔόϏϦςΟ࠶ઃܭ Googleͷߟ͑ΔΦϒβʔόϏϦςΟ(1) “ϞχλϦϯάɺνʔϜ͕γεςϜͷঢ়ଶΛࢹͯ͠ѲͰ͖ΔΑ͏ʹ͢Δ πʔϧٕज़తͳιϦϡʔγϣϯͰ͢ɻϞχλϦϯάͰɺࣄલʹఆٛͨ͠ࢦ ඪϩάͷऩूΛߦ͍·͢ɻ ΦϒβʔόϏϦςΟɺνʔϜ͕γεςϜͷσόοάΛੵۃతʹߦ͑ΔΑ͏ʹ ͢Δπʔϧٕज़తͳιϦϡʔγϣϯͰ͢ɻΦϒβʔόϏϦςΟͰɺࣄલʹ ఆٛ͞Ε͍ͯͳ͍ϓϩύςΟͱύλʔϯͷௐࠪΛߦ͍·͢ɻ” DevOps ଌఆ:
ϞχλϦϯάͱΦϒβʔόϏϦςΟ https://cloud.google.com/architecture/devops/devops-measurement-monitoring-and-observability
ΦϒβʔόϏϦςΟ࠶ઃܭ Googleͷߟ͑ΔΦϒβʔόϏϦςΟ(2) “ϗϫΠτϘοΫε ϞχλϦϯά ϞχλϦϯάͱΦϒβʔόϏϦςΟɺϫʔΫϩʔυ͔ΒϞχλϦϯά γεςϜ ʹૹ৴͞ΕΔγάφϧʹґଘ͠·͢ɻ࠷Ұൠతͳཁૉͱͯ͠ɺࢦඪɺϩάɺ τϨʔεͷ 3 ͕ͭ͋Γ·͢ɻҰ෦ͷϞχλϦϯά
γεςϜͰΠϕϯτΛ͠ ͯใࠂ͠·͢ɻΠϕϯτɺγεςϜͰͷϢʔβʔͷૢ࡞γεςϜࣗମͷঢ়ଶ ͷมԽΛද͠·͢ɻ” DevOps ଌఆ: ϞχλϦϯάͱΦϒβʔόϏϦςΟ https://cloud.google.com/architecture/devops/devops-measurement-monitoring-and-observability
ΦϒβʔόϏϦςΟ શʹཧղͨ͠
ΦϒβʔόϏϦςΟ࠶ઃܭ [ํ] શͯͷγεςϜͰMELTΛܭଌ͢Δ • ☑ ΠϯςάϨʔγϣϯ (֦ॆ) • ☑ ΠϯϑϥετϥΫνϟʔϞχλϦϯά
• ☑ ϒϥβϞχλϦϯά • ☑ ϞόΠϧϞχλϦϯά • ☑ ֎ܗࢹ • ☐ APM (Ճ) • ☐ Log Management (Ճ)
ΦϒβʔόϏϦςΟ࠶ઃܭ [มߋ] AWS Integrationͷվળ ɹɾར༻͍ͯ͠ΔશͯͷAWS ɹɹαʔϏεͷϝτϦΫεऔಘ New Relic Go AgentͷՃ
ɹɾAPMՃ ɹɾLogs in contextՃ
ΦϒβʔόϏϦςΟ࠶ઃܭ ͔͠͠ɾɾɾ • Logs in context -> อཹ →ΞϓϦέʔγϣϯͷϩΪϯάपΓͷઃܭ͕ ɹݻ·ͬͨஈ֊ͰվΊͯਖ਼ࣜಋೖ
ɹ(Fargate -> CloudWatch LogsͰ༻)
ΦϒβʔόϏϦςΟ࠶ઃܭ before ɹɹMetrics ɹɹEvents ɹɹLogs ɹɹTraces ɹafter ɹɹɹMetrics ɹɹɹEvents ɹɹɹLogs
ɹɹɹTraces
ΦϒβʔόϏϦςΟ࠶ઃܭ [before] ෦తʹMELT͕ ຬͨ͞Ε͍ͯΔঢ়ଶ ɾAWS Integration ɹMetrics & Events
ɾBrowser(Mobile)Agent ɹMetrics & Events ɾInfrastructure Agent ɹMetrics & Events
ΦϒβʔόϏϦςΟ࠶ઃܭ [after] MELT͕શͯ ຬͨ͞Ε͍ͯΔঢ়ଶ ɾAWS Integration ɹMetrics & Events
ɾCloudWatch Logs ɹto New Relic One ɹLogs ɾBrowser(Mobile)Agent ɹMetrics & Events ɾGo Agent ɹMetrics & Traces ɾInfrastructure Agent ɹMetrics & Events
ΞδΣϯμ • TVerͷհ • αʔϏεͷͱݟ͖͑ͯͨ՝ • New Relic OneಋೖʹΑΔվળͷτϥΠ •
ΦϒβʔόϏϦςΟ࠶ઃܭ • New Relic Oneͷ׆༻ࣄྫ • ·ͱΊ
New Relic Oneͷ׆༻ࣄྫ New Relic One Platform https://newrelic.com/jp/platform
ΞϓϦέʔγϣϯ ϞχλϦϯά (APM)
ΞϓϦέʔγϣϯϞχλϦϯά (APM) ΞϓϦέʔγϣϯϞχλϦϯά (APM) ͱ • ϦΫΤετʙϨεϙϯεͷҰ࿈ͷॲཧΛՄࢹԽ • ΞϓϦέʔγϣϯͷύϑΥʔϚϯεΛՄࢹԽ ओͳ༻్
• ΞϓϦέʔγϣϯΤϥʔͷݪҼௐࠪ • APIΤϯυϙΠϯτͷύϑΥʔϚϯεܭଌ
ΞϓϦέʔγϣϯϞχλϦϯά (APM) import ( "github.com/newrelic/go-agent/v3/newrelic" "github.com/newrelic/go-agent/v3/integrations/nrecho-v3" ) func main() {
app, err := newrelic.NewApplication( newrelic.ConfigAppName("my test app"), newrelic.ConfigLicense("__YOUR_NEW_RELIC_LICENSE_KEY__"), ) } GoΞϓϦέʔγϣϯͷಋೖ
ΞϓϦέʔγϣϯϞχλϦϯά (APM) ༨ஊ : Instant Observability (༷ʑͳIntegration)
ΞϓϦέʔγϣϯϞχλϦϯά (APM) ಋೖ࣌ͷۤ࿑ • New Relic Go Agentͷಋೖ͕͠ΜͲ͍ ◦ ਖ਼֬ͳτϨʔεใΛٻΊΔ߹ɺ
ෳͷfunctionʹίʔυΛૠೖ͢Δඞཁ͕͋Δ ◦ ΫϦʔϯͳಋೖํ๏͕ग़ͨ߹ɺ ૠೖͨ͠ίʔυΛফ͢ඞཁ͕͋ΔͷͰʁ ◦ pprofΛ׆༻Ͱ͖ͳ͍͔ʁ nrseg (budougumi0617) https://github.com/budougumi0617/nrseg
ΞϓϦέʔγϣϯϞχλϦϯά (APM) ղܾ • New Relic Go Agentͷಋೖ͕͠ΜͲ͍ ◦ ࣮func
main()ʹಋೖ͢Δ͚ͩͰ ͋Δఔͷσʔλ͕ಘΒΕΔࣄ͕໌ ◦ DBपΓͷτϨʔεޙରԠʹͨ͠ (ContextपΓͰՃͷ࣮͕ඞཁͳͨΊ)
APMͰݟΒΕΔใ (αϚϦʔ)
APMͰݟΒΕΔใ (Transaction)
APMͰݟΒΕΔใ (Go runtime)
APMͰݟΒΕΔใ (Errors)
APMͰݟΒΕΔใ (Errors)
ΞϓϦέʔγϣϯϞχλϦϯά (APM) ಋೖͰಘΒΕͨޮՌ • APIͷύϑΥʔϚϯεվળʹܨ͕ͬͨ ◦ ͍APIͷϨΠςϯγ͕ՄࢹԽ͞Εͨ ◦ Ωϟογϡར༻Ͱվળ •
༏ઌతʹվળ͖͢ର͕໌֬ʹͳͬͨ ◦ APIผͷݺͼग़͠ճͱ࣮ߦ͕࣌ؒՄࢹԽ͞Εͨ • ΞϓϦέʔγϣϯΤϥʔͷௐ͕ࠪਝʹͳͬͨ ◦ ࠷ݶͷτϦΞʔδ͕Ͱ͖ΔΑ͏ʹͳͬͨ
ϒϥβ ϞχλϦϯά
ϒϥβϞχλϦϯά ϒϥβϞχλϦϯάͱ • ϒϥβܦ༝ͰͷΤϯυϢʔβʔϞχλϦϯά • RUM (Real User Monitoring) ओͳ༻్
• ΤϥʔͷݪҼௐࠪ • ϢʔβʔମݧͷѲ
ϒϥβϞχλϦϯά ಋೖ࣌ͷۤ࿑ • ίωΫςουTVͷಋೖ͕ͭΒ͔ͬͨ ◦ PageViewͰΧελϜΞτϦϏϡʔτ͕औಘͰ͖ͳ͍ ◦ ϖʔδϩʔυͷλΠϛϯά͕͍͠ ◦ ϑϩϯτΤϯυԿΘ͔Βͳ͍
ϖʔδϩʔυλΠϛϯάͷϓϩηε https://docs.newrelic.com/jp/docs/browser/new-relic-browser/page-load-timing-resources/page-load-timing-process/
ϒϥβϞχλϦϯά ղܾ • ίωΫςουTVͷಋೖ͕ͭΒ͔ͬͨ ◦ νʔϜϝϯόʔʹTVerͷSDKपΓͷରԠΛґཔ ◦ ࢲͷํͰNew Relicͷ༷֬ೝͱಈ࡞νΣοΫ ◦
PageViewͰͳ͘PageViewTimingΛݟΔํ
ϒϥβϞχλϦϯάͰݟΒΕΔใ (αϚϦʔ)
ϒϥβϞχλϦϯάͰݟΒΕΔใ (Session traces)
ϒϥβϞχλϦϯά ಋೖͰಘΒΕͨޮՌ • ϢʔβʔମݧͷѲʹܨ͛ΒΕͨ ◦ ࣮ࡍͷϢʔβʔʹ͍ۙϝτϦΫεΛݟΒΕΔ ◦ ϨΠςϯγͷมԽCore web vitalsͷνΣοΫ
• ΞϓϦέʔγϣϯΤϥʔͷௐ͕ࠪਝʹͳͬͨ ◦ ࠷ݶͷτϦΞʔδ͕Ͱ͖ΔΑ͏ʹͳͬͨ
ϞόΠϧ ϞχλϦϯά
ϞόΠϧϞχλϦϯά ϞόΠϧϞχλϦϯάͱ • ΞϓϦܦ༝ͰͷΤϯυϢʔβʔϞχλϦϯά • RUM (Real User Monitoring) ओͳ༻్
• ύϑΥʔϚϯεੳ • ΫϥογϡͷτϥϒϧγϡʔςΟϯά • ϢʔβʔମݧͷѲ
ϞόΠϧϞχλϦϯά ಋೖ࣌ͷۤ࿑ • ಈըϓϨΠϠʔͷϞχλϦϯάಋೖʹߤ ◦ New Relic Video Agentͷಋೖ ◦
࠷৽όΠφϦͰσʔλΛ֬ೝ͍ͯͨ͠
ϞόΠϧϞχλϦϯά ղܾ • ಈըϓϨΠϠʔͷϞχλϦϯάಋೖʹߤ ◦ σʔλνΣοΫ༻ͷμογϡϘʔυΛ࡞ɾڞ༗͠ɺ ਝʹνΣοΫͰ͖ΔΑ͏උ
ϞόΠϧϞχλϦϯάͰݟΒΕΔใ (αϚϦʔ)
ϞόΠϧϞχλϦϯάͰݟΒΕΔใ (Video Agent)
ϞόΠϧϞχλϦϯά ಋೖͰಘΒΕͨޮՌ • ಈըࢹௌपΓͷϢʔβʔମݧ͕ՄࢹԽ͞Εͨ ◦ ͕ࣗͨͪλονͰ͖ͳ͍৴SaaSपΓ ◦ ίϯςϯπଆͷͰ࠶ੜͰ͖ͳ͍ಈը • ΞϓϦέʔγϣϯͷΤϥʔௐ͕ࠪՄೳʹͳͬͨ
◦ ϝλใͱΫϥογϡঢ়گͷ࿈ܞ ◦ ࣗͨͪͰ؆୯ʹঢ়گΛੳ
ΞδΣϯμ • TVerͷհ • αʔϏεͷͱݟ͖͑ͯͨ՝ • New Relic OneಋೖʹΑΔվળͷτϥΠ •
ΦϒβʔόϏϦςΟ࠶ઃܭ • New Relic Oneͷ׆༻ࣄྫ • ·ͱΊ
TVerʹ͓͚Δ ΦϒβʔόϏϦςΟ
·ͱΊ TVerʹ͓͚ΔΦϒβʔόϏϦςΟ࣮ݱ·ͰͷಓͷΓ • ࣮ݱͷ伴ςϨϝτϦʔσʔλͰ͋Δͱཧղ • ςϨϝτϦʔσʔλͷऔಘํ๏Λཧ • New Relic OneͰςϨϝτϦʔσʔλΛऩू
• ऩूͨ͠ςϨϝτϦʔσʔλΛཧɾੳ ·ͣσʔλΛऩू͠؍ଌͰ͖ΔΑ͏ʹ͢Δ
before ☐ ϢʔβʔମݧͷѲ ☐ Մ༻ੑύϑΥʔϚϯεͷՄࢹԽ ☐ ൃੜ࣌ͷਝͳղܾ ☐ ϓϩΞΫςΟϒͳϞχλϦϯά ☐
SLI / SLOʹΑΔ৴པੑͷՄࢹԽ ·ͱΊ (ϞχλϦϯάपΓͷ՝) after ☑ ϢʔβʔମݧͷѲ ☑ Մ༻ੑύϑΥʔϚϯεͷՄࢹԽ ☑ ൃੜ࣌ͷਝͳղܾ ☐ ϓϩΞΫςΟϒͳϞχλϦϯά ☐ SLI / SLOʹΑΔ৴པੑͷՄࢹԽ
·ͱΊ to be continued…
ࣗݾհ ɾՃզ وࢤ (@TAKA_0411) ɾגࣜձࣾTVer ɹࣄۀຊ෦ ٕज़։ൃ෦ (2022/1ʙ) ɾझຯαφͱΧϝϥͱήʔϜ ɾ͖ͳςϨϝτϦʔσʔλTrace
None