このページでは、スケジューリングされたクエリから分析メトリックを作成する方法について説明します。

分析検索を繰り返し実行して値をモニタする場合は、検索からメトリックを作成できます。検索は 1 分に 1 回実行され、結果がメトリックとしてレポートされます。正常性ルールを使用して ポリシー および アクション をトリガーする通常の方法でメトリックのアラートを作成できます。分析メトリックリストは検索可能です。

すべての分析イベントタイプ(ブラウザ、モバイル、トランザクション、ログ、カスタム)に対してメトリックを作成できます。

スケジュールされたクエリによって計算されたメトリックは小数点以下の精度を持つことができますが、保存およびレポートされるのは整数のみです。

次の表に示す関数の分析検索からメトリックを作成できます。詳細については、経時的なメトリックデータの精度を参照してください。

機能メトリック ロールアップ タイプ
count(* | field_name)sumSELECT count(activeMacUsers) FROM dummyTransactions

distinctcount(field_name)

averageSELECT distinctcount(activeMacUsers) FROM dummyTransactions

sum(numeric_field_name)

sumSELECT sum(responseTime)where userExperience = "NORMAL" FROM transactions

avg(numeric_field_name)

average

SELECT avg(responseTime) FROM transactions
min(numeric_field_name)

average

SELECT min(responseTime) FROM transactions

max(numeric_field_name)

average

SELECT max(responseTime) FROM transactions
(exp1)/(exp2)average

SELECT (count(activeMacUsers)) / (avg(activeWindowsUsers)) FROM dummyTransactions
SELECT (avg(responseTime)*2)/((avg(segments.transactionTime)+3)/2) FROM transactions
SELECT (sum(responseTime)*2)/(filter(sum(responseTime), where userExperience = "NORMAL") + 0.5) FROM transactions

Each side of the expression must be enclosed in parenthesis.

分析検索からメトリックを作成するには、Manage Metrics権限と分析の表示アクセス権が必要です。「分析およびデータのセキュリティ」および「トランザクション分析権限」を参照してください。

分析メトリックの作成

  1. [Analytics ] > [ Search] エディタを使用し、検索条件を設定して該当するデータを選択します。
  2. 検索アクションツールバーで [Actions ] > [ Create Metric] をクリックします。
  3. ポップアップウィンドウで、メトリックに名前と説明を指定します。
    [Metrics] パネルとメトリックブラウザでメトリックがどのように表示されるかは、名前によって決まります。次のことに注意してください。
    • メトリックは、整数値に切り捨てられます。したがって、1 未満の値はゼロに切り捨てられます。これを回避するには、必要な小数精度のレベルに応じて、10、100、1000 などの係数を numeric_field_name に乗算します。この係数はメトリックの表示名に追加することをお勧めします。これは、メトリックが表す内容を他のユーザが理解できるようにするためです(例:Display Name = Metric (Factor 1000))。値がパーセンテージであり、100 で乗算して変換する場合は、暗黙的であるため、メトリック名に係数を入れる必要はありません(Metric %)。 
    • 算術演算は、集計関数内でのみサポートされます。たとえば、以下のとおりです。count(numeric_field_name * 10) from transactions.

メトリックのタイムスタンプ

メトリックは過去 1 分間にパブリッシュされたイベントに対して作成されるため、タイムスタンプメトリックは常にその時点(1 分間)からイベントを集約します。 

eventTimestamp フィールドに値を指定した場合、新しいメトリックのタイムスタンプ値は、pickupTimestamp フィールドのイベントの集約を使用します。 

たとえば、前日のイベントの eventTimestamp を設定します。次に、今日のイベントのメトリックを作成します。メトリックは、その時点(1 分間)からではなくなるため、明示的な eventTimestamp を使用しません。メトリックは、pickupTimestamp を使用してイベントを集約します。pickupTimestamp は明示的に変更できないため、これにより、メトリックのタイムスタンプがその時点(1 分間)に基づいていることが保証されます。

分析イベント API」を参照してください。

複数のイベントからのメトリックの関連付け

クエリを作成すると、AppDynamics で全体的なメトリックが生成されます。クエリされたデータはさまざまなイベントから取得されているため、イベントサービスは、このセグメント化されたデータを取得し、つなぎ合わせて単一のメトリックを生成する必要があります。イベントサービスは、相関イベントを検出するまで待機します。最大待機時間は、イベントタイプによって次のように異なります。

  • モバイルおよびブラウザセッションイベント:2 分。
  • トランザクションイベント:10 秒。 

イベントサービスが相関イベントを検出すると、待機時間がリセットされます。

最大待機時間の到達後にイベントが検出されても、そのイベントはクエリで正しく結合されません。たとえば、次のクエリ fieldAfieldB は別個のイベントですが相関関係にあります。

select count(*) from transactions where fieldA = "foo" and fieldB = "bar"
CODE

イベントサービスは、fieldA を検出すると相関イベントがないか 10 秒間待機します。fieldA の 15 秒後に fieldB を検出しても、イベントサービスは両方のイベントを関連付けません。両方のイベントが関連付けられていないため、カウントメトリックは不正確となります 

分析メトリックのモニタリング

パフォーマンス上の理由により、分析メトリックで使用されるスケジュールされたクエリは、次のように無効になる場合があります。

  • イベントサービスを呼び出した結果、10 回連続してエラーが発生した場合、クエリは無効になります。
  • メンテナンス期間やアップグレード期間など、イベントサービスにコントローラから到達できない場合、クエリは無効になりません。
  • コントローラを再起動すると、連続して失敗したためにシステムによって無効にされたクエリは再び有効になります。
  • ユーザーが無効にしたクエリは、システムの再起動後も無効のままになります。

メトリックをモニタするには:

  1. 左のナビゲーションバーで、[Metrics] をクリックします。 
  2. Metrics listからメトリックを検索、編集、有効化、無効化、または削除します。 

    選択したメトリックの説明のみを編集できます。

  3. メトリックをまとめて有効または無効にするには、グリッドで該当する行を選択し、ツールバーの [Enable] または [Disable] ボタンをクリックします。複数の行を選択するには、Shift または Command を押した状態で行をクリックします。

    「Disabled due to repetitive failures」というステータスが表示された場合は、[Enable] をクリックして再度有効にすることができます。

  4. メトリックブラウザでメトリックを表示するには、[Metric Browser] をクリックします。詳細については、「Metric Browser」のセクション「メトリックデータポイントの詳細」を参照してください。