皆さまこんにちは、IIMサポートチームです。
このブログではDynatraceのTips等、気軽に読めて皆さまのお役に立てるようなコンテンツを配信してます。
今回は 外部サービスへのリクエストを可視化する をテーマとした内容です。
外部サービスへのリクエストを可視化したい場合、そのデータはどこで確認できるのかをご紹介いたします。
*文中、斜体になっている単語はDynatrace画面上/ドキュメント内で使用される用語となります
例)Service、Host など
*青色の色掛部分は操作対象のボタンを表しています
最近では、SaaSサービスを利用したシステムなども増えてきているかと思います。
自分たちで管理していないサービスの状態を確認することはハードルが高く、しかし障害時の切り分けには必要になることがあります。
Dynatraceを使って重要な外部サービスへのリクエストを可視化しておくことで、対象のシステムで応答時間の劣化やエラーの増加などの問題が発生した時に、自社システムの問題なのか/利用している外部サービスの問題なのかを速やかに切り分けることができるようになります。
Dynatraceでは、外部サービスへのリクエストは、以下Service にて確認ができます。
OneAgent が監視しているサーバーから、インターネット経由で送信されるリクエストが確認できます。
Service 画面でのフィルターバーにて、「External services: Third party services」と検索すると確認できます。
OneAgent が監視しているサーバーから、インターネットを経由せず送信されるリクエストが確認できます。(Dynatraceとしての認識は、"同じネットワーク内の、OneAgentでモニタリングしていないサーバーへのリクエスト"ですので、上記Service 名となっています。)
Service 画面でのフィルターバーにて、「External services: Services on unmonitored hosts」と検索すると確認できます。
Management Zone でアクセス権を管理している場合、Requests to public networks・Requests to unmonitored hostsが対象のManagement Zone に含まれていないと確認ができませんのでご注意ください。
外部サービスへのリクエストが存在するにも関わらず、上記の方法で確認ができない場合は、管理者へ権限の確認を依頼してください。
Requests to public networks・Requests to unmonitored hosts から、認識されているドメイン・リクエストを確認する方法をご紹介します。手順の例では、Requests to public network の画面を使用しますがどちらも同様の手順で確認できます。
1. Service 名をクリックし、分析画面に遷移します。
2. 画面右のメニューから、[Key requests/endpoints] をクリックし(もしくはスクロールで移動)し、[View all request details]をクリックします。
3. 画面中央までスクロールし、 n top domains と表示されている箇所に、全リクエストの合計処理時間に対して、認識されているドメインの合計処理時間が長い順で表示されます。
環境が大きくなると、認識されるドメイン数が増えるため、リクエスト数が少なかったり、処理時間が小さいドメインが一覧に表示されないことがあります。
簡単に検索する方法をご紹介します。
画面上部にあるフィルターバーを使用します。クリックすると候補が表示されますので、任意のものを選択し、値を入力してください。
個人的に使いやすいものとして "Called by "をおススメします。
"Called by "を選択すると、リクエスト元のService でフィルターされ、ある程度の量まで絞り込めますので、ぜひ使ってみてください。
Requests to public networks・Requests to unmonitored hosts 内のリクエストは、通常のService とは異なり、Key request への設定ができません。(Key request については #07 重要なリクエストの監視 をご参照ください。)
外部サービスへのリクエストを可視化・監視したい=ダッシュボードに貼り付けたいというケースがあるかと思います。
そのままだと無関係なリクエストも含んだService となってしまいますので、特定ドメインのリクエストを新しいService として切り出す設定を行います。
1. 切り出す対象のドメインを確認し、フィルターマークをクリックします。
2. 切り出す対象のドメインでフィルターされていることを確認し、右上の三点リーダー […] > [Monitor an separete service] をクリックします。
3. Requests to public networks からの切り出しは完了です。
1. 切り出す対象のドメインを確認し、フィルターマークをクリックします。
2. 切り出す対象のドメインでフィルターされていることを確認し、右上の三点リーダー […] > [Create custom device] をクリックします。
Requests to unmonitored hosts の場合は、Custom device という仮のHost のような、デバイスの設定を行います。
3. 設定画面にて次の設定値を入力します。
項目名 |
設定値 |
Custom device name |
作成するCustom device 名を設定します。Service 名の頭に付与されます。 |
Custom device ID |
IDを設定します。変更せず、そのままでOKです。 |
Custom device group |
既に作成済みのCustom device group に所属させる場合はプルダウンより選択します。新規作成の場合は、直接入力します。Custom device group は、Process group のような位置づけの設定だとイメージしてください。 |
Ports |
ポート番号を入力してください。 |
IP addresses |
リクエスト先のIPアドレスを入力してください。IPアドレスが不明な場合は、DNS名を入力してください。 |
DNS names |
リクエスト先のDNS名を入力してください。DNS名が不明な場合は、IPアドレスを入力してください。 |
Technology |
オプションです。Technology を設定する場合は、入力してください。例えばシステム名などを入れておくと、検索の際に役立ちます。 |
Custom icon URL |
オプションです。アイコンの画像を設定したい場合、URLを入力して下さい。 |
URL of your device |
オプションです。デバイスのURLを入力します。 |
4. [Create custom device]をクリックします。
5. 作成したCustom device 画面にて、Service が1つ以上認識されることを確認します。
リクエストが流れているはずなのに、Service が表示されない場合は、設定値に誤りがある可能性があります。
その場合は、右上の三点リーダー[…] > [Edit] をクリックし、設定値を修正してください。
6. Requests to unmonitored hosts からの切り出しは完了です。
Service として切り出せたら、あとはDashboard にtile を貼り付けて完成です。
例えば、以下のように「Service or request 」というtile を貼り付けて、Service のリクエスト件数・応答時間・エラー率を確認することもできるようになります。
Dashboard やグラフ作成に関しては、関連リンクの記事もご参考ください。
外部サービスへのリクエストがDynatraceで確認できるということ、それらをService として切り出すことでより効果的に可視化・監視ができることをご紹介させていただきました。
関連リンク:
#41 グラフをカスタマイズしDashboardを改善してみませんか?
Monitor third-party services | Dynatrace Docs
#48 外部サービスへのリクエストを可視化する については、以上となります。
お読みいただきありがとうございました!
※記事執筆時 Dynatrace SaaS Version:1.281