Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
CloudWatch Application Signals と APM の入門 / Intr...
Search
Kento Kimura
PRO
August 21, 2024
Technology
2k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CloudWatch Application Signals と APM の入門 / Introduction to CloudWatch Application Signals and APM
Kento Kimura
PRO
August 21, 2024
More Decks by Kento Kimura
See All by Kento Kimura
オブザーバビリティを高める AI エージェント体験を考える / Designing AI Agent Experiences That Enhance Observability
aoto
PRO
1
66
Compose Spec の変遷と Cloud Run のイマ / The History of Compose Spec and Cloud Run Support
aoto
PRO
0
150
頼れる Agentic AI を支える Datadog のオブザーバビリティ / Powering Reliable Agentic AI with Datadog Observability
aoto
PRO
0
570
作りっぱなしで終わらせない! 価値を出し続ける AI エージェントのための「信頼性」設計 / Designing Reliability for AI Agents that Deliver Continuous Value
aoto
PRO
2
490
Google に学ぶ、安全性を高める信頼性設計 / Reliability Design for Enhanced Safety: Lessons from Google SRE
aoto
PRO
0
120
AI エージェントで AI エージェントを作る!Google Cloudが実現するフルスタックな AI 開発エコシステム / Building AI Agents with AI Agents! Full-Stack AI Development Ecosystem on Google Cloud
aoto
PRO
0
470
Jagu'e'r Advent Calendar でコミュニティを盛り上げよう / Join us the community with Jagu'e'r Advent Calendar
aoto
PRO
0
110
現場の壁を乗り越えて、 「計装注入」が拓く オブザーバビリティ / Beyond the Field Barriers: Instrumentation Injection and the Future of Observability
aoto
PRO
1
1.7k
「最速」で Gemini CLI を使いこなそう! 〜Cloud Shell/Cloud Run の活用〜 / The Fastest Way to Master the Gemini CLI — with Cloud Shell and Cloud Run
aoto
PRO
1
520
Other Decks in Technology
See All in Technology
個別開発で終わらせない。 現場の課題をプロダクトの強さに変える StockmarkのFDE
ktkrhr
0
350
高負荷プロダクション環境におけるAWS Lambdaのリアル 〜スケールとコストを左右する実行ライフサイクルの技術仕様〜
maimyyym
2
800
音声コミュニティを守るAI監視基盤_ 90%以上の入力削減を支えたServerless設計と運用判断
shuheioka123
0
110
20260930_Gemma4_Hands-on
tsho
0
100
AIエージェント時代のPlatform as a Product —— テックリードがPdMとして回す発見・導入・計測 / Platform as a Product in the AI Agent Era
toshi0607
1
500
「大丈夫そう?」をObservabilityで確かめる
mrmtsu
0
230
Account Factory for Terraformによる 標準化されたアカウント発行の自動化
pensuke628
0
120
20260915deck.gl-raster を使ってみた
rena1208
0
140
Coil3を内部実装から読み解く~キャッシュ戦略とAVIF画像の描画〜/nikkei-tech-talk50
nikkei_engineer_recruiting
0
140
Making AI Agents Safe and Fast- Jev, Obsidian, and the Meta-Harness
x5gtrn
PRO
0
160
.NET WebAssemblyで実現するクライアントサイドAI推論:NuGetからViteまで、2つのエコシステムを繋ぐビルド戦略
yamachu
1
1.1k
AIに会社の文脈を理解させる技術~上流工程・非エンジニアにも広げるハーネスエンジニアリング実践~
ochtum
0
190
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
Visualization
eitanlees
153
17k
Leo the Paperboy
mayatellez
10
2.3k
Designing for humans not robots
tammielis
254
26k
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
The untapped power of vector embeddings
frankvandijk
2
1.9k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
780
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
340
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Transcript
CloudWatch Application Signals と APM の入門 21st Aug, みのるんのゲリラ勉強会&インフラ技術基礎勉強会コラボ 『Amazon
CloudWatch入門&LT会』 Kento Kimura
Self-Introduction • 所属:Technical Solutions / Sales Engineer • 担当:パブリッククラウドのアーキテクト知識を活かした Datadog
のプリセールス技術支援 • 資格:Google Cloud 全 11 資格、AWS 10 資格、Azure 12 資格 • 表彰:Google Cloud Partner Top Engineer 2023-24 2022-24 APN All AWS Certifications Engineer 2023 Japan AWS Jr.Champion → AWS Community Builder(2024) 木村 健人 (Kento Kimura) Datadog Japan GK History データセンター運用保守 → パブリッククラウド技術支援 → プリセールス技術支援 Community Jr. Champions Meetup, JAWS, Jagu'e'r, CloudNative Days
Agenda 3 01 APM 入門 02 APM on AWS 03
CloudWatch Application Signals 04 まとめ
4 そもそも APM ってなに?
APM APM = Application Performance Monitoring
Application Performance Monitoring とは ソフトウェアツールとテレメトリデータを使用して、 ビジネスクリティカルなアプリケーションのパフォーマンスをモニタリングするプロセス ソフトウェアツール: 監視エージェントや Software Development
Kit(SDK) などのツール AWS では CloudWatch Agent, X-Ray SDK など テレメトリデータ: CPU 使用率・応答時間・エラー率・レイテンシーなどの監視情報 APM では主にアプリケーションの指標である RED メトリクスを重視 6 引用「APM (アプリケーションパフォーマンスモニタリング ) とは何ですか ?」https://aws.amazon.com/jp/what-is/application-performance-monitoring/ “ “
RED メトリクスのいろは • Requests: アプリケーション処理がリクエストされた回数。処理の種類毎に分類する。 • Errors: アプリケーションエラーの発生した回数。エラー率を指標とすることが多い。 • Duration:
アプリケーションの処理にかかる時間。p50, p75, p90, p95 などを参照する。 RED メトリクスのようなアプリケーションのメトリクスを把握することで、 CPU・メモリ・ディスクの使用率、ネットワークトラフィックなどのメトリクスに比べ より利用者の体験に即した指標をもとに意思決定ができる。 他にも USE メソッドやゴールデンシグナルなどがあるが、今回は割愛… アプリケーション処理の統計メトリクスだけではなく、 処理毎のパフォーマンスを見るには分散トレーシングが重要 7
分散トレースのいろは アプリケーションの処理毎にパフォーマンスを記録する手法は、 従来はアプリケーションログを詳細に設計する必要があった。 処理毎にログを記録すると、情報量とストレージ容量が膨大となる アプリケーション処理の開始・終了時点と最低限のコンテキストを記録して HTTP リクエストでアプリケーション間の依存関係を可視化する 分散トレーシング:情報量を削減し、複雑な処理をフレームグラフなどで可視化する HTTP リクエストを行うマイクロサービス間の処理も可視化できる
フレームグラフ: ウォーターフォール: 8
9 APM on AWS
APM tools on AWS 10 ADOT (AWS Distro for OpenTelemetry)
AWS X-Ray
AWS の APM ~X-Ray のハナシ~ AWS X-Ray • 2017/4 GA(一般公開)
• CloudWatch と別のエコシステム ◦ SDK でコードに組み込み ◦ Daemon で監視情報の集約 ◦ API で AWS へ連携 ◦ Browser で可視化 • 2019/11 CloudWatch ServiceLens • CloudWatch との連携(メトリクス・ログ) ◦ X-Ray と CloudWatch のテレメトリ(監視データ)が、 AWS Console 上で統合される 11 AWS X-Ray AWS Tools and SDKs AWS CLI X-Ray SDKs AWS Cloud Control API AWS Management Console X-Ray daemon
AWS の APM ~CloudWatch のハナシ~ Amazon CloudWatch • AWS 上のリソースをリアルタイムに監視するソリューション
• 2019/11 Console 上の X-Ray 統合 • 2021/11 ADOT(AWS Distro for OpenTelemetry) がアプリケーショントレースをサポート • 2023/8 CloudWatch Agent の X-Ray, OpenTelemetry サポート • 2023/11(AWS re:Invent 2023) CloudWatch Application Signals(preview) が発表 • 2024/6 CloudWatch Application Signals が GA CloudWatch のエコシステムを中心に APM のサポートを拡大していきそう 12
CloudWatch のサービス群 13 CloudWatch ダッシュボード CloudWatch メトリクス CloudWatch アラーム CloudWatch
ネットワークモニタリング CloudWatch インフラストラクチャーインサイト CloudWatch APM CloudWatch Application Signals CloudWatch サービスレベル目標 CloudWatch Synthetics CloudWatch RUM CloudWatch ログ CloudWatch イベント CloudWatch Evidently
14 CloudWatch Application Signalsとは?
CloudWatch の APM ≒ Application Signals Amazon CloudWatch Application Signals(GA)
CloudWatch Agent のデプロイできる、EKS, ECS, EC2 において、 X-Ray, ADOT の自動計装エージェントがアプリケーションを監視するソリューション ※APM は言語毎に実装が異なり、GA 直後の現在は Java, Python の対応 • X-Ray 独自の利点(SQS, SNS, EventBridge etc のトレース)を保ちながら、OSS である OpenTelemetry の恩恵を受けれらる • OpenTelemetry のエコシステムの拡大に合わせて、Application Signals も対応言語や 収集できるテレメトリを拡大できる • Management Console 上では Application Signals の専用ビューが用意されており、 サービスやトポロジーを監視するための情報を可視化できる 15
Appendix: 手動計装と自動計装 手動計装(Manual instrumentation) アプリケーションコードに 手動でSDK/ライブラリ を組み込み、監視テレメトリデータを生成する 処理をコードに実装して、トレースを行う Goのコードへの実装例: 16
自動計装(Auto instrumentation) アプリケーションコードに変更を加えずに、 アプリケーション処理を動的にイジェクト(Java, Python)するツールを実装して、トレースを行う Java への実装例:.jar ファイル取得と-javaagent:引数の設定 import ( "os" "github.com/aws/aws-xray-sdk-go/awsplugins/ec2" "github.com/aws/aws-xray-sdk-go/xray" ) func init() { // conditionally load plugin if os.Getenv("ENVIRONMENT") == "production" { ec2.Init() } xray.Configure(xray.Config{ ServiceVersion: "1.2.3", }) } 引用「AWS X-Ray デベロッパーガイド」https://docs.aws.amazon.com/ja_jp/xray/latest/devguide/ $ wget \ https://github.com/aws/aws-xray-java-agent/releases/latest/ download/xray-agent.zip disco ├── disco-java-agent.jar └── disco-plugins ├── aws-xray-agent-plugin.jar ├── disco-java-agent-aws-plugin.jar ├── disco-java-agent-sql-plugin.jar └── disco-java-agent-web-plugin.jar
Application Signals のアーキテクチャ • EC2 の場合は CW エージェントと別に、 ADOT などによるアプリケーションの
計装が必要 • CW エージェントが Application Signals にトレース情報を書き込むために追加の IAM 権限が必要( application-signals:* ) 17 AWS Cloud Availability Zone 1 Virtual private cloud (VPC) Instance NAT gateway Instance with CloudWatch Endpoints Amazon CloudWatch EC2 Instance CloudWatch エージェント ログファイル /var/log Java/Python アプリケーション ADOT
18 まとめ
まとめ • CloudWatch Application Signals は CloudWatch が OpenTelemetry に対応し、
それぞれの利点を活かしシステムのオブザーバビリティを実現できるソリューション • ECS, EKS, EC2 で利用できるが、ADOT による自動計装は Java, Python のみ • OpenTelemetry を活用することで、その他のアプリケーションの APM ができる • CloudWatch SLO や CloudWatch Observability EKS アドオンなど本日お話し できていないものも面白そう 19
Amazon CloudWatch Application Signals 徹底解説 20 Application Signals(Perview) 発表時のまとめです!本日のお話し振り返りでご覧ください!
Thank you