トランザクション という言葉は、ソフトウェア業界ではいくつかの異なる意味を持ちます。このドキュメントでは、New Relic がこの言葉をどのように使用しているか、またトランザクションがどのように報告されるかについて説明します。
トランザクションとは何ですか?
New Relic では、 トランザクション を、ソフトウェアアプリケーションにおける作業の 1 つの論理的な単位と定義しています。具体的には、その作業単位を構成する関数コールやメソッドコールのことを指します。APM では、 Web トランザクション を指すことが多く、これはアプリケーションが Web リクエストを受信してからレスポンスを送信するまでに発生するアクティビティを表しています。
サポートされているシステムに APM をインストールすると、Web リクエストやその他の重要な機能やメソッドのレポートが自動的に開始されます。デフォルトの監視レベルを補うために、追加のトランザクションをレポートする カスタム インストルメンテーション を設定できます。
一部のフレームワークには、トランザクションという本来の概念がありません。言い換えれば、トランザクションとして簡単に認識または監視できる事前定義された経路は存在しません。このようなフレームワークでトランザクションを定義するには、 カスタム インストルメンテーションを使用できます。
トランザクションのタイプ
トランザクションの累積データは、APMの「 Transactions」ページ に表示されます。トランザクションには大きく分けてウェブと非ウェブの2種類があります。
- Web: トランザクションは、HTTPリクエストで開始されます。ほとんどの組織にとって、これらのトランザクションは顧客中心のインタラクションであるため、監視すべき最も重要なトランザクションとなります。
- Non-web: Non-web トランザクション は、Web リクエストで開始されません。非ウェブのワーカープロセス、バックグラウンドプロセス、スクリプト、メッセージキューのアクティビティ、その他のタスクなどが含まれます。
トランザクションのサブタイプ
当社のエージェントは、これらのトランザクションのサブタイプを持っています。
トランザクションセグメント
トランザクションを構成する個々の機能やコールは、 セグメント と呼ばれます。例えば、外部サービスの呼び出しやデータベースの呼び出しはセグメントであり、APMではどちらも独自のUIページを持っています。
APM Transactions page には、アグリゲート・トランザクション・セグメント・データが表示されます。
- セグメントをトランザクションに追加するには、 カスタム インストルメンテーションを使用します。
- 特定のトランザクションのセグメントを見るには、 transaction traces を使用します。
トランザクションのネーミング
サポートされているフレームワークでは、トランザクション名は、フレームワークによってトランザクションに与えられた名前、トランザクション中に検出された関数名、またはウェブリクエストのURLなど、さまざまなソースから得られます。
同様の形式で多くの名前を生成するトランザクションの場合、それらを一般的なトランザクションカテゴリに統合します。たとえば、トランザクションは/user/*/control_panel
として表示される場合があります。ここで、 *
はさまざまなユーザー名を表します。
トランザクションの名前を変更したり、名前の統合方法を調整するには、 カスタム インストルメンテーションを使用します。
トランザクションの監視
ここでは、APMを利用したトランザクションの監視方法をご紹介します。
モニタリングをするなら | これを使って... |
---|---|
お客様のビジネスにとって重要な取引 | キートランザクションを作成 UIで強調し、カスタムレベルの監視を設定することができます。 |
非同期アクティビティ | 手順に従って、特定のAPM言語エージェントの非同期アクティビティを設定します。 |
アプリケーション間のアクティビティ | アプリケーション間でトランザクションをリンクすることで、ビジネスに関連するアプリケーションのアクティビティをより詳しく知ることができます。詳細については、 分散型トレース および クロスアプリケーショントレース に関するドキュメントを参照してください。 ヒントご利用の全てのアプリケーションおよびサービスに関する大まかな概要を得るには、New Relicエクスプローラーを利用してください。 |
トランザクションの検索
トランザクションは、 デフォルトの属性 が添付された詳細なセットでクエリを実行することができます。これらの属性を使用して、APMがデフォルトで提供していないクエリを実行したり、カスタムチャートを作成することができます。
当社の UI や NRQL を使用してデータを照会する方法については、 New Relic データの照会 を参照してください。