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
20241216_Dojo SyntheticMonitoring w/Instana 101
Search
Tetsuya Kawano
December 16, 2024
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20241216_Dojo SyntheticMonitoring w/Instana 101
Tetsuya Kawano
December 16, 2024
More Decks by Tetsuya Kawano
See All by Tetsuya Kawano
20240530_IBMTechXchangeDojo_いまからでも遅くない_OpenShiftでアプリをHTTPSで公開してみる
ttykwn
0
300
InstaNightClub#3
ttykwn
0
160
Instana Observability 最新機能紹介 (202308)
ttykwn
0
360
TechDojo_20210929_OpenShiftアプリ構築デモ
ttykwn
0
430
Featured
See All Featured
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
550
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
150
HDC tutorial
michielstock
2
730
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
410
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
450
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
260
Are puppies a ranking factor?
jonoalderson
1
3.7k
Believing is Seeing
oripsolob
1
160
Transcript
日本アイ・ビー・エム株式会社 テクノロジー事業本部 カスタマーサクセス事業部 カスタマーサクセスマネージャ 河野 哲也 || Tetsuya Kawano シンセティックモニタリング
with Instana 101 Instanaのシンセティックモニタリングの導入を 体 感してみよう
写真撮影 動画撮影 資料公開 SNS拡散 × × ◯ ◯ #IBMDojo #Instana
セッション受講における注意事項 セッション中に迷惑行為が発覚した場合は、強制退出、セッション中止などの措置を講じます
河野 哲也 || Tetsuya Kawano カスタマーサクセスマネージャ IT運用高度化担当/OpenShift推進 自己紹介 Instanaユーザー会実施中! 次は3月?ぜひご参加ください
目的 • Instana のシンセティックモニタリングとは何かを理解する • Self-Hosted PoPの導入を理解し、モニタリングをハンズオンで体感する ゴール シンセティックモニタリングについて 実業務へ展開できそうなイメージをなんとなく持ってもらう
このセッションについて
はじめに
©︎2024 IBM Corporation CRN Products Of The Year 2024 受賞!
【Instana Observability】 6 CRNの Products of The Year 2024 のApplication Performance and Observabilityカテゴリー*において、 弊社InstanaがWinner Overallとして選出されました。FinalistとしてDynatrace、Datadog、New Relic、 Splunk などが選出されている中で、総合TOPとして選出されています。 *2024/12/02付 CRN ”Product Of the Year“ とは? • CRN (Computer Reseller News):The Channel Companyが所有・運営するIT系 メディアのこと。 IT業界のニュース、製品レビュー、市場動向などを提供する。 • Product Of The Year:年に一度、今日のITチャネルにおける主要な IT 製品および サービスを表彰する仕組み。市場における製品価値や影響力を図る重要な指標とさ れている。 • 30の技術カテゴリ(例:Application Performance and Observability、 Networking、Securityほか)において、各カテゴリごとにFinalistとWinner Overallを選出。 • これら製品を実際に顧客に提案するソリューションベンダーが審査を担当。 • 評価基準(=サブカテゴリ)は「技術」「収益と利益」「顧客ニーズ」の3つ。 • 総合スコアが最も高かったもの(=上記3つのサブカテゴリのスコア平均値が最 も高かったもの)が、Winner Overallとして選出。(ソース) https://www.crn.com/news/channel-news/2024/crn-s-2024-products-of-the-year?page=2
Instana Observabilityで ユーザー体験を能動的に把握 ✓ リアルユーザーモニタリング ✓ シンセティックモニタリング
Instana既存の アプリ監視 アプリの現在の 挙動を把握 リアルユーザー モニタリング ユーザーが今置か れている状況を 把握 シンセティック
モニタリング ユーザー操作を模倣、 問題を誰よりも 早く発見 お伝えしたい内容 アプリの挙動とユーザー体験を能動的に把握 • 問題に今よりもいち早く気づく • ユーザ目線で問題を把握 共通基盤を活かした 素早い対応 ユーザーの高評 価につながる!
リアルユーザーモニタリング ユーザー体験を理解する
リアルユーザーモニタリングとは ? バックエンド 画面ロード時間 JSエラー 離脱したページ BFF カート Expres s
カタロ グ Spring リコメ ンド Flask RUMリアルユーザー モニタリング ⚫ ユーザーのWebブラウズ体験 / モバイルアプリ体験はどうなってる? ユーザー体験を理解できます ✓ RUMはEUM(End User Monitoring/エンド ユーザーモニタリング)とも呼ばれます ✓ サイトはレスポンスよく快適に使われている? ✓ サイトのどこかに問題は出ていない? ✓ どこかのモバイル端末に問題は出ていない? ユーザーが今置かれている 状況を理解することができま す! ブラウザ
リアルユーザーモニタリングとは ? ✓ サイトはレスポンスよく快適に使われている? ページロード時間、タイミン グなどを確認できます
リアルユーザーモニタリングとは ? サーバ側のトレース情報とRUMで取得し た情報を同時に参照することができます ✓ サイトのどこかに問題は出ていない? ✓ どこかのモバイル端末に問題は出ていない? ユーザー情報、JSエラー の詳細を分析できます
シンセティックモニタリング システムの「外」からも監視する
シンセティックモニタリングとは ? バックエンド 画面ロード時間 JSエラー 離脱したページ BFF カート Expres s
カタロ グ Spring リコメ ンド Flask RUMリアルユーザー モニタリング PoP • ブラウザテスト • APIテスト • HTTPテスト シンセティック モニタリング 合成監視 (外形監視) システムの「外」からも監視する PoP(Point of Presence) …テスト実行環境 ⚫ ユーザーのWebブラウズ体験 / モバイルアプリ体験はどうなってる? ✓ ユーザー操作を真似してシステムの挙動を確認 ✓ もし問題があるなら、誰よりも早く発見できる ブラウザ
HTTP テスト API テスト ブラウザ テスト REST API スクリプトによる サービスの状況の
監視機能提供 HTTPリクエスト送信による URLの死活状況の 監視機能提供 エンドユーザ体験のシナリオを シミュレーション 継続的に検証 シンセティックモニタリングの種類
HTTPテスト・APIテスト HTTPテスト APIテスト • URI (REST APIなど)に対して、PoPから GETリクエストを送ります。 • レスポンスのHTTPステータスコードで状況
を判定します。 • JavaScriptベースのシナリオを実行して監視を行 います。 • ヘッダーに認証トークンを追加するなど、リクエ ストは柔軟に設定可能です。 • レスポンスはヘッダーやボディの中身が想定した 結果となっているかどうかをテスト可能です。
Selenium IDEスクリプト ブラウザ・テスト ブラウザースクリプト Node.js ベースのスクリプトをごりごり書いていく。 複数テストケースを別ファイルでまとめた大作の場合でも、 バンドル・スクリプトとして使用できる。 Seleniumベースの APIに加え、30以上の拡張ブラウザAPIを
利用可能。 ブラウザ操作を記録・再現できるSelenium IDEを 利用してスクリプトを作成。操作記録をファイルで エクスポートし、Instanaで登録するだけ。 FirefoxとChromeの拡張機能として使える。 let hover = async (message, by, timeout = 6000) => { await console.log(`Hover on ${message} >> ${by} << `); try { const elmt = await $browser.waitForAndFindElement(by, timeout); const out = $browser.actions().move({origin: elmt, duration: 20}).perform(); return out; } catch (err) { console.error(`\ncatch(hover): ${err.message}`); await $browser.takeScreenshot(); throw err;} } (async function () { console.log(">>>>>>>", "Access My page"); await $browser.get("http://mypage-testapp.com"); console.log(">>>>>>>>>>>>>>>>>>>", "Actions of search"); await hover("search image", $driver.By.xpath("//img[@id='sbi_b']")); await $browser.sleep(3000); await $browser.actions().sendKeys("synthetic").perform(); await click("search button", $driver.By.xpath("//label[@id='search_icon']")) } )();
Instana既存の アプリ監視 アプリの現在の挙動 を把握 リアルユーザー モニタリング ユーザーが今置かれ ている状況を把握 シンセティック モニタリング
ユーザー操作を模倣 し、問題を誰より も早く発見 まとめ アプリの挙動とユーザー体験を能動的に把握 • 問題に今よりもいち早く気づく • ユーザ目線で問題を把握 共通基盤を活かした 素早い対応 ユーザーの高評価 につながる!
シンセティックモニタリング 詳細 利用する理由とPoP
シンセティックモニタリングとは ? バックエンド 画面ロード時間 JSエラー 離脱したページ BFF カート Expres s
カタロ グ Spring リコメ ンド Flask RUMリアルユーザー モニタリング PoP • ブラウザテスト • APIテスト • HTTPテスト シンセティック モニタリング 合成監視 (外形監視) システムの「外」からも監視する PoP(Point of Presence) …テスト実行環境 ⚫ ユーザーのWebブラウズ体験 / モバイルアプリ体験はどうなってる? ✓ ユーザー操作を真似してシステムの挙動を確認 ✓ もし問題があるなら、誰よりも早く発見できる ブラウザ
シンセティックモニタリングを利用する理由 1. 問題を積極的に特定する 2. 平均解決時間(MTTR)を短縮する 3. 新市場への参入準備
1. 問題を積極的に特定する ⚫ ユーザー操作を真似ることで、世界中の特定の地域で利用できない問 題なども見つけることができる ⚫ 機能とパフォーマンスの観点で、サービスが期待通りに動作している か常に確認することで、問題があればすぐに通知を受けることができ る ⚫
サービスが依存している外部サービス/サードパーティサービスの動 作・稼働状況を理解することができる
2. 平均解決時間(MTTR)を短縮する ⚫ 実際に影響を受けているユーザーがいない状況だとしても、速やかに 問題の発見と対処が可能です ⚫ 障害通知時に、通常のInstanaアプリ監視分析情報、リアルユーザーモ ニタリングと連携することで、バックエンドリクエスト、ログ、ネッ トワークタイミング、HARファイル、ビデオなどの関連データととも に障害通知し、問題のトラブルシューティングに必要なコンテキスト
を提供します
3. 新市場への参入準備 ⚫ 新しいエリア/地理的領域で製品をリリースする際、シンセティックモ ニタリングによってサービスパフォーマンスが期待通りに稼働するか 検証できます。
シンセティックモニタリングの種類使い分け ✓ HTTPテスト、APIテスト モニタリング タスクの自動化、CI/CDパイプラインへのモニタリングの統合など、監 視ツールとプログラム的に対話するために使用 ⚫ ウェブサイトの可用性を監視⇨HTTPテスト ⚫ アプリケーションの
API を監視⇨APIテスト ✓ ブラウザテスト ユーザー操作を真似し、ユーザーの観点から Web アプリケーションのパ フォーマンスと機能を監視するために使用 ⚫ Web ページの HTTP エラーチェック⇨ブラウザ スクリプト テスト ⚫ Web ページに対するユーザーの操作を模倣したい⇨ Selenium IDEスク リプトテスト
プレゼンスポイント Point of Presence (PoP) シンセティックモニタリングの対象を監視するためのテスト実行環境 NW性能と可用性のシミュレーションと監視を容易にするために、敢えてInstana バックエンドとは別の環境として用意 Self-Hosted いわゆるオンプレ型、自身でKubernetes
環境を用意 Instana Hosted Instanaサービスへの有料アドオンとし てサービス提供 金額等はInstana担当営業にご確認ください ※) Self-Hosted を導入するためのリソースは以下参照 https://www.ibm.com/docs/ja/instana-observability/current?topic=pop-capacity-planning-scaling 最低限 CPU: 6Core, Mem: 4.8GB
シンセティックモニタリング 実践 PoP導入説明と シンセティックモニタリングを触ってみる
backend 環境 Instana Standard Edition OpenShift 仮想マシン(RHEL8 + K3s) Instana
PoP 監視対象アプリ Robot Shop Instana Agent (+Autotrace Webhook) 監視 報告 報告 Instana UI 16Core 64GB 2TB
PoP導入 Linux上にPopを導入する手順についてはNI+C 森 さんの「Instana シンセティック・モニタリング用 の簡単PoP構築」を参照ください。 (記載ありますが、K3sはサポート対象外なので自己責任で。) https://www.niandc.co.jp/tech/20241103_55644/
PoP導入 Linux上にPopを導入する手順についてはNI+C 森 さんの「Instana シンセティック・モニタリング用 の簡単PoP構築」を参照ください。 (記載ありますが、K3sはサポート対象外なので自己責任で。) https://www.niandc.co.jp/tech/20241103_55644/ OpenShiftの場合 oc
login helm install
None