イベントを可視化する
CDF イベントに対するクエリを設定してフィルタリングし、Grafana ダッシュボード上のグラフにイベントにアノテーションを付けます。時間範囲、表示するイベント、列をニーズに応じてカスタマイズできます。
テーブルでイベントを扱う
イベントタブを Grafana で開き、テーブル内のイベントを扱います。
クエリを定義する
events
クエリは、events/list エンドポイントを使用してデータを取得します。
形式: events{someFilter=number, otherFilter="string"}
例:
events{externalIdPrefix='WORKORDER', assetSubtreeIds=[{id=12}, {externalId='ext_id'}]}
これらのプロパティでフィルタリングできます:
externalIdPrefix
、metadata
、assetIds
、assetExternalIds
、rootAssetIds
、assetSubtreeIds
、dataSetIds
、source
、type
、subtype
。
デフォルトでは、クエリは時間範囲内のアクティブなイベントを返しますが、時間フィルター startTime
、endTime
、activeAtTime
、createdTime
、lastUpdatedTime
を追加してクエリをカスタマイズできます。
この例では、現在の時間範囲に開始した終了済みのイベントをすべて返します。
events{startTime={min=$__from}, endTime={isNull=false}}
この例では、終了したイベントのみを返します。
events{endTime={isNull=false}}
クライアント側のフィルタリング
演算子 =~
、!~
、!=
でクライアント側のフィルタリングをさらに指定します。複数のフィルター間のカンマは、論理 AND
として機能します。
形式:
-
=~
- 正規表現の等式。正規表現を満たす結果を返します。 -
!~
- 正規表現の不等式。正規表現を満たす結果を除外します。 -
!=
- 厳格な不等式。プロパティが指定値と等しくないアイテムを返します。
例:
events{type='WORKORDER', subtype=~'SUB.*'}
クライアント側フィルターを主要なフィルタリング方法として使用しないでください。
Grafana はアイテムが CDF から返された後にフィルターを適用するので、CDF が最大アイテム数(1000)を返した場合、一部のデータが表示されないことがあります。
テンプレートを作成する
$variable_name
構文を使用してテンプレートを作成します。
例:
events{type='WORKORDER', subtype=$variable}
フィールドの名前の変更と整理
変換タブを選択し、フィールドの名前を変更して整理します。
グラフにイベントでアノテーションを付ける
アノテーションを使って、CDF の豊富なイベント情報を Grafana のグラフに重ねます。
- ダッシュボードの設定に移動し、アノテーションを選択します。
- データソース フィールドで
CDFプロジェクトを選択します。
-
CDFからイベントを取得し、フィルタリングするクエリを指定します。例:events{type="some", subtype=~"sub.*"}
上記のクエリは、
type="some"
というパラメータでイベントをリクエストし、sub.*
に一致するsubtype
によって結果をフィルタリングします。-
有効なパラメータの完全なリストについては、API ドキュメントを参照してください。
-
結果をフィルタリングする方法をご覧ください。
-