クライアント :スコープ対象、グローバル

  • リリースバージョン: Australia
  • 更新日 2026年03月12日
  • 所要時間:7分
  • クライアント API は、メトリックベース データベースにデータを追加し、メトリックベース データベースで変換を実行し、変換の結果を受け取るためのメソッドを提供します。

    クライアントクラスは、スコープ対象サーバースクリプトとグローバルサーバースクリプトの両方で使用できます。このクラスは メトリックベース アプリケーションの一部であり、 sn_clotho 名前空間内で実行する必要があります。

    クライアント:client()

    メトリックベース データベースにアクセスするためのクライアントクラスのインスタンスを作成します。

    表 : 1. パラメーター
    名前 タイプ 説明
    なし
    var client = new sn_clotho.Client();

    クライアント - accumulate(GlideRecord now_GR, 文字列メトリクス)

    指定されたタイムスタンプでメトリクス値を累積し、値を上書きするのではなく結果をデータベースに保存します。

    このメソッドを使用 を使用して、電気のキロワット時 (kWhs) など、累積の合計できるメトリクスを処理します。Accumulate は、指定されたタイムスタンプで各メトリクスを呼び出します。たとえば、ヒーター、電気ケトル、洗濯機のためにキロワットを集めると、3 回のコールが蓄積されます。

    表 : 2. パラメーター
    名前 タイプ 説明
    now_GR GlideRecord 累積値を取得する系列 GlideRecord の名前。

    関連項目: getSeries()

    default_value 数値 オプション。 指定されたタイムスタンプでの累積のデフォルト値。指定されたタイムスタンプで値が使用できない場合に累積する最初の呼び出し中にのみ使用されます。

    ユースケースとしては、total_powerのワットメトリクスを累積することが考えられます。コンセントに接続されたルーターを測定するための電力計なしでワットを蓄積したいと考えています。消費値がわかっていて、それが一定である場合)、定数値をデフォルト値として使用してtotal_powerを累積できます。たとえば、ルーターが常に接続され、20 ワットを消費する場合は 20 を使用します。

    タイムスタンプ値は、 DataBuilder API を使用して指定できます。

    デフォルト:0

    表 : 3. 返される内容
    タイプ 説明
    なし

    次の例は、「building_a」というレコードにtotal_powerメトリクス値を累積する方法を示しています。

    var time = new GlideDateTime();
    
    // total_power is the name of a metric within building_a which stores accumulated values
    
    var dataBuilder1 = new sn_clotho.DataBuilder(building_a, "total_power");
    // values to be accumulated
    dataBuilder1.add(time, 3.5);
    new sn_clotho.Client().accumulate(dataBuilder1, 0);
    
    var dataBuilder2 = new sn_clotho.DataBuilder(building_a, "total_power");
    // values to be accumulated
    dataBuilder2.add(time, 12);
    new sn_clotho.Client().accumulate(dataBuilder2, 0);
    
    var dataBuilder3 = new sn_clotho.DataBuilder(building_a, "total_power");
    // values to be accumulated
    dataBuilder3.add(time, 4.3);
    new sn_clotho.Client().accumulate(dataBuilder3, 0);
    
    // As a result, client saves value of 3.5+12+4.3+0(default value) at the timestamp 'time'

    クライアント:deleteMetric(String tableName, String metricName)

    メトリックベースデータベースの指定されたテーブルから指定されたメトリクスを削除します

    注:
    このメソッドは、 メトリックベース データベースからデータを削除します。回復メカニズムはありません。
    表 : 4. パラメーター
    名前 タイプ 説明
    tableName 文字列 指定されたメトリクスを削除するテーブルの名前。
    metricName 文字列 メトリクスの名前。
    表 : 5. 返される内容
    タイプ 説明
    なし

    次の例は、テーブルからメトリクスを削除する方法を示しています。

    var client = new sn_clotho.Client();
    
    // delete metric (Speed) from the Drones table
    client.deleteMetric("mb_demo_drone", "mb_demo_mt_speed");

    クライアント:deleteSeries(GlideRecord now_GR, 文字列メトリクス)

    指定された GlideRecord 内の指定されたメトリクスに関連付けられた メトリックベース データベースのデータを削除します。この方法は、テストデータの削除に使用します。

    注:
    このメソッドは、 メトリックベース データベースからデータを削除します。回復メカニズムはありません。
    表 : 6. パラメーター
    名前 タイプ 説明
    now_GR GlideRecord 指定されたメトリクスの時系列データを削除するレコード。
    メトリクス 文字列 メトリクスの名前。
    表 : 7. 返される内容
    タイプ 説明
    なし
    var client = new sn_clotho.Client();
    //query drones of a specific model
    var drones = new GlideRecord("mb_demo_drone");
    drones.addQuery("model", "Kingfisher Phantom");
    drones.query();
    
    client.deleteSeries(drones, 'mb_demo_mt_speed');

    クライアント:getSeries(GlideRecord now_GR, 文字列 metricName, GlideDateTime lastUpdateBefore)

    特定のディメンションからすべての系列を取得します。

    表 : 8. パラメーター
    名前 タイプ 説明
    now_GR GlideRecord 系列を取得するレコード。
    メトリクス 文字列 メトリクスの名前。
    lastUpdateBefore GlideDateTime オプション。評価する期間の終了を表す将来の日付。
    表 : 9. 返される内容
    タイプ 説明
    アレイ 指定されたメトリクスのデータを含む系列を表す文字列sys_idsのリスト。lastUpdateBefore パラメーターが指定されている場合は、lastUpdateBefore の日付 (包括的でない) より新しいデータを持たない系列を返します。

    次の例は、ドローン [mb_demo_drone] テーブルにリストされている速度値の完全なリストを取得する方法を示しています。

    var client = new sn_clotho.Client();
    
    // query subject records
    var grDrone = new GlideRecord('mb_demo_drone');
    grDrone.query();
    
    var series = client.getSeries(grDrone,'mb_demo_mt_speed');

    クライアント:put(オブジェクト metricData)

    メトリクスデータを メトリックベース データベースに保存します。

    表 : 10. パラメーター
    名前 タイプ 説明
    メトリクスデータ オブジェクト 次のいずれかになります。
    • メトリクスデータを含む DataBuilder オブジェクト。
    • メトリクスデータを含む DataBuilder オブジェクトのアレイ。
    表 : 11. 返される内容
    タイプ 説明
    なし
    var time = new GlideDateTime();
    ​
    // two different GlideRecord instances and metrics
    var dataBuilder = new sn_clotho.DataBuilder(now_GR, 'cpu_percentage');
    dataBuilder.add(time, 0.6);
    ​
    var dataBuilder2 = new sn_clotho.DataBuilder(gr2, 'disk_free_percentage');
    dataBuilder2.add(time, 0.2);
    ​
    new sn_clotho.Client().put([dataBuilder,dataBuilder2]);