トランスフォーマー:スコープ対象、グローバル
Transformer API は、時系列データを操作して、評価と分析のためのデータを準備します。
この API は、スコープ対象およびグローバルサーバースクリプトで呼び出すことができます。Transformer クラスを使用する場合は、sn_clotho 名前空間識別子を使用します。
一般的なユースケースでは、評価する期間を決定し、メトリクスフィールドを持つテーブルからレコードを選択し、実行する変換のタイプを定義してから、変換を実行します。
// create the start and end time
var start = new GlideDateTime();
start.addSeconds(-1 * 60 * 60);
var end = new GlideDateTime();
//mb_demo_drone is a table with metric fields.
var drones = new GlideRecord("mb_demo_drone");
drones.addQuery("model", "Kingfisher Phantom");
drones.query();
//build a transform that returns a simple average
var builder = new sn_clotho.Transformer(drones);
builder.metric("mb_demo_mt_rem_battery").avg().label("Original");
//execute transform and return result for visualization
var result = builder.execute(start,end);このクラスは メトリックベース アプリケーションの一部です。
トランスフォーマー:トランスフォーマー ( GlideRecord sourceRecords)
Transformer オブジェクトを作成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| ソースレコード | GlideRecord | メトリクスを評価するレコードが含まれます。1 つまたは複数のレコードを指定できます。 |
//where drones is a GlideRecord created from a table with a metric field
var builder = new sn_clotho.Transformer(drones);
トランスフォーマー:execute(GlideDateTime start, GlideDateTime end)
変換を実行します。
execute() を呼び出す前に、metric() メソッドと groupBy() メソッドを使用してください。execute() メソッドは、Transformer オブジェクトごとに 1 回しか呼び出せません。
変換の一部として実行されるアクションでは、 メトリックベース データベース内のデータは変更されません。
| 名前 | タイプ | 説明 |
|---|---|---|
| 左寄せ | GlideDateTime | 評価する期間の開始。 |
| 右寄せ | GlideDateTime | 評価する期間の終了。 |
| タイプ | 説明 |
|---|---|
| 変換結果 | 変換されたデータ。 |
var minutesAgoStart = 60;
var end = new GlideDateTime();
var start = new GlideDateTime(end);
start.addSeconds(-1 * 60 * minutesAgoStart);
// query subject records
var grDrone = new GlideRecord('mb_demo_drone');
grDrone.query();
// building transform; get the average transforms of a metric, grouping by model
var transformer = new sn_clotho.Transformer(grDrone);
transformer.groupBy("fleet").metric("mb_demo_mt_altitude").avg().label('avg - %g:fleet:');
// execute and return result for visualization
var tfrmResult = transformer.execute(start, end);
トランスフォーマー:groupBy(文字列フィールド)
データのグループ化に使用するフィールドを指定します。
groupBy() メソッドを使用する場合は、execute() メソッドを呼び出す前に must を呼び出す必要があります。
| 名前 | タイプ | 説明 |
|---|---|---|
| フィールド | 文字列 | 変換結果をグループ化するために使用するテーブルのフィールド。 |
| タイプ | 説明 |
|---|---|
| TransformPart | 変換特性を指定するために使用できる TransformPart オブジェクト。 |
var transformer = new sn_clotho.Transformer(grDrone);
var trnsfrm = transformer.groupBy("fleet");
トランスフォーマー:metric(文字列 metricName)
変換で使用するメトリクスフィールドを指定します。
変換で使用する複数のメトリクスを指定できます。 execute() メソッドが呼び出された後、metric() メソッドを呼び出すことはできません。
| 名前 | タイプ | 説明 |
|---|---|---|
| metricName | 文字列 | メトリクスフィールドの名前。 |
| タイプ | 説明 |
|---|---|
| TransformPart | 変換特性を指定するために使用できる TransformPart オブジェクト。 |
var transformer = new sn_clotho.Transformer(grDrone);
var trnsfrm = transformer.metric("mb_demo_mt_altitude");