キートランザクションとは、エンジニアリングチームが最も意味のあるトランザクションに、カスタムレベルのモニタリングを作成する方法です。New RelicのAPMモニタリングツールは、すべてのトランザクション についてレポートすることで、ユーザーに影響を与える前に問題を迅速に検出し、かつて解決する上で役立ちます。しかし、デジタルビジネスの運営に不可欠な情報が、最もトラフィックを占めているわけではありません。そこで、アプリケーション全体のスループットに関係なく、監視および管理する必要不可欠なトランザクションを追跡できるキートランザクションが役立ちます。
キートランザクションの実例 顧客がEコマースのアプリケーションにログインして、電話を購入するシナリオを考えてみましょう。プランのページを読み込んでサービスを閲覧しようとしたとき、顧客はレスポンスの遅さを体感します。これにより、顧客はサイトを離れ、購入をやめます。PlanService
マイクロサービスチームは、この遅延の根本原因を迅速に特定し、修正して、より多くの顧客を失うことを避ける必要があります。
チームは、 PlanService
の最も重要なビジネストランザクションgetPlans
(プランのページを読み込む)を特定することから始めます。次に、getPlans
をキートランザクションとして、関連するタグを適用し、より大きなエンティティエコシステム のコンテキスト内で分析する必要があります。
トランザクションの詳細と、フレームワークがトランザクションをサポートするかどうかについては、APMドキュメント を参照してください。
キートランザクションの作成 getPlans
をキートランザクションにするには、次の手順に従います。
one.newrelic.com > All capabilities > APM & Services
に移動します。
左側のナビゲーションで、
Transactions
に移動します。
getPlans
のトランザクションを選択します。
トランザクションの詳細ビューで、
Make key transaction
を選択します。 また、REST APIを使用してキートランザクションの作成と追跡停止の両方を行うことで、この手順を自動化することもできます。
キートランザクションを作成すると、これらのキートランザクションはNew Relicエンティティエコシステムの一部になります。entity list view には、作成したばかりのgetPlans
キートランザクションを含むすべてのトランザクションが表示されます。
キートランザクションの名前を変更する フィルタリングをより正確にまたは簡単にするために、キートランザクションの名前を変更する場合には、以下の方法で行います。
one.newrelic.com > All capabilities > Key transactions
に移動します。
インデックスから、名前を変更するキートランザクションを選択します。
左側のナビゲーションの設定エリアで、
Application
を選択します。
トランザクションの新しい名前を入力してから、保存します。
Apdex設定の変更 ウェブトランザクション である場合には、キートランザクションにカスタムApdex閾値 を設定できます。Apdexは、非ウェブトランザクション には適用されません。
重要 キートランザクションのApdex設定によって、アプリのT値セットが上書きされます。これは、たとえば、キートランザクションがSatisfied として報告されたとしても、同じアプリ内の同じ応答時間の別のトランザクションがFrustrated として報告される場合があることを意味します。
キートランザクションのApdex閾値を変更するには、次の手順に従います。
one.newrelic.com > All capabilities > Key transactions
に移動します。
インデックスから、名前を変更する
key transaction
を選択します。
左側のナビゲーションの設定エリアで、アプリケーションを選択します。
Apdex T
の見出しの下に新しい値を秒単位で入力してから、保存します。
Apdex閾値は、キートランザクショントレースの作成方法に影響します。
キートランザクションを削除する one.newrelic.com > All capabilities > Key transactions
に移動します。
インデックスから、削除するキートランザクションを選択します。
左側のナビゲーションの設定エリアで、
Application
を選択します。
stop tracking
キートランザクションを選択します。
New Relicは、削除されたキートランザクションに関連するアラートとイベントを自動的に削除します。
キートランザクションのタグ付け APMでは、キートランザクション に tag を追加することで、チーム、環境、または優先度レベルを素早く確認できるように、キートランザクションを整理してフィルタリングできます。これらのタグはコンテキストも提供するので、アラート通知を受け取ったときに問題を切り分けできます。
タグはトランザクションに関連付けられたメタデータです。共通点のあるトランザクションに利用する際に便利です。たとえば、チェックアウトプロセスの一部であるすべてのキートランザクションにcheckout
タグを適用するとします。こうすることで、checkout
でフィルタリングし、これらのトランザクションをすべて1か所に表示できます。
このシナリオでは、PlanService
マイクロサービスチームはチェックアウト時の遅延を特定しようとしているため、問題を特定して、迅速に解決策を見つけることができるよう、environment
またはaccountid
で簡単にフィルタリングする必要があります。
キートランザクションにタグを割り当てるには、次の手順に従います。
one.newrelic.com に移動し、キートランザクションを選択します
ページの上部にあるエンティティの名前の近くで、See metadata and manage tags メニューを選択します
ポップアップメニューのAdd a new tag... フィールドに、この形式accountId: 123456789
のタグを追加します
APMエージェントの場合、NRQLクエリでこれらのタグを使用するには、サービスを再起動します。
タグでフィルタリングする キートランザクションをタグでフィルタリングするには、次の手順に従います。
one.newrelic.com
に移動します。
Filter by ...
フィールドをクリックして、利用可能な属性とタグのドロップダウンを表示するか、フィルターするタグ(accountId: 123456789
など)を入力します。
キートランザクションのグループ化とアラートの作成 キートランザクションを作成した後、アラート ツールとワークロードに接続すると可視性を高めることができます。
キートランザクションをワークロードに追加する New Relicでは、ワークロードを使用して、特定のビジネスサービスを構成するエンティティをグループ化できます。このグループ化により、問題の切り分けとトラブルシューティングが容易になります。関連するサービスやホストと共にキートランザクションをワークロードに追加すると、スタックを構成するエンティティの健全性とアクティビティを集約して表示できます。
このスクリーンショットの例では、getPlans
キートランザクションの包括的なワークロードビューと他のすべての関連エンティティを表示しています。
キートランザクションにアラートを設定する これで、キートランザクションがワークロードの一部となり、タグ付けされました。次のステップはアラートの作成であるため、トランザクションに異常な動作がある場合に通知されます。強力で柔軟なNRQLアラートシステム を使用して、キートランザクションに静的アラート と異常アラート の両方を設定でき、キートランザクションをダッシュボードに追加することもできます。ダッシュボードにアラートを設定、またはダッシュボードにキートランザクションする場合は、楕円をクリックすることで、キートランザクションチャートから直接行うことができます。
キートランザクションのサービスレベルを作成する アラート閾値に加えて、アプリケーションユーザーの視点からパフォーマンスを測定することもできます。これを行うには、ビジネスキートランザクションにサービスレベル を設定します。
キートランザクションを文脈の中で使用する キートランザクションの作成、タグの追加、ワークロードの作成、およびアラートの設定が完了したら、監視する他のエンティティの文脈に合わせてデータの分析を開始できます。より広範なシステム内での役割を理解したら、稼働時間と信頼性を向上させるため、追加手順を講じることができます。
New Relic Lookoutで逸脱を分析する New Relic Lookout で開始すると、すべてのキートランザクションの逸脱を素早く分析できます。これにより、すべてのアカウントのトランザクションをリアルタイムで表示し、テレメトリー全体の中での変更をハイライト表示できます。この例では、getPlans
トランザクションのレスポンスタイムが増加していることがわかります。
サービスマップを通じて影響を理解する getPlans
トランザクションのパフォーマンス低下による影響を完全に理解するには、サービスマップ を使用できます。発信元サービス、ホスト、データベース、その他のキートランザクションなど、接続されている他のすべてのエンティティの健全性を可視化できます。
変更の追跡 コードのデプロイメント、設定変更、ビジネスイベントなど、変更イベントの影響を追跡するには、キートランザクションチャートの変更追跡マーカー を使用できます。これは、トレースをさらに掘り下げて、問題の原因となっている変更のトラブルシューティングの追跡に役立ちます。
このスクリーンショットでは、データベースクエリ最適化のデプロイメントの直後にgetPlans
のトランザクションタイムが急増していることを確認できます。このように、問題からデプロイメントまで追跡できます。この例では、変更を元に戻すと、トランザクションタイムが通常に戻り、プランのページがすぐに読み込まれ始めました。