Transformer - スコープ指定、グローバル

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む4読むのに数分
  • 時系列データを操作して、評価と分析のためのデータを準備します。

    Transformer クラスは、スコープ指定、およびグローバルのサーバースクリプトで使用できます。 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);

    このクラスは、MetricBase アプリケーションの一部です。

    Transformer - execute(GlideDateTime start, GlideDateTime end)

    変換を実行します。

    execute() を呼び出す前に、metric() および groupBy() メソッドを使用します。execute() メソッドは、Transformer の各オブジェクトに対して 1 回だけ呼び出すことができます。

    変換の一環で実行されるアクションによって MetricBase データベースのデータが変更されることはありません。

    表 : 1. パラメーター
    名前 タイプ 説明
    start GlideDateTime 評価対象の期間の最初。
    end GlideDateTime 評価対象の期間の最後。
    表 : 2. 返される内容
    タイプ 説明
    TransformResult 変換されたデータ。
    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);

    スコープ指定の Transformer - groupBy(文字列 field)

    データのグループ化に使用するフィールドを指定します。

    groupBy() メソッドを使用する場合は、execute() メソッドの前に呼び出す必要があります。

    表 : 3. パラメーター
    名前 タイプ 説明
    フィールド 文字列 変換結果をグループ化するために使用されるテーブル内のフィールド。
    表 : 4. 返される内容
    タイプ 説明
    TransformPart 変換の特性を指定するために使用できる TransformPart オブジェクト。
    var transformer = new sn_clotho.Transformer(grDrone);
    var trnsfrm = transformer.groupBy("fleet");

    Transformer - metric(文字列 metricName)

    変換で使用する測定基準フィールドを指定します。

    変換で使用する複数の測定基準を指定できます。execute() メソッドが呼び出された後に metric() メソッドを呼び出すことはできません。

    表 : 5. パラメーター
    名前 タイプ 説明
    metricName 文字列 基準フィールドの名前
    表 : 6. 返される内容
    タイプ 説明
    TransformPart 変換の特性を指定するために使用できる TransformPart オブジェクト。
    var transformer = new sn_clotho.Transformer(grDrone);
    var trnsfrm = transformer.metric("mb_demo_mt_altitude");

    Transformer - Transformer( GlideRecord sourceRecords)

    Transformer オブジェクトを作成します。

    表 : 7. パラメーター
    名前 タイプ 説明
    sourceRecords GlideRecord 測定基準が評価されるレコードが入ります。1 つまたは複数のレコードを指定できます。
    //where drones is a GlideRecord created from a table with a metric field
    	var builder = new sn_clotho.Transformer(drones);