Client - スコープ対象、グローバル
クライアント API は、データベースにデータMetricBaseを追加するメソッド、データベースでMetricBase変換を実行するメソッド、変換の結果を受信するメソッドを提供します。
Client クラスは、スコープ指定のサーバースクリプトでもグローバルサーバースクリプトでも使用できます。このクラスはアプリケーションの一部 MetricBase であり、 sn_clotho 名前空間内で実行する必要があります。
Client - accumulate(GlideRecord now_GR, 文字列 metric)
指定されたタイムスタンプの測定基準値を累積し、値を上書きするのではなく結果をデータベースに保存します。
このメソッドを使用を使用して、電力のキロワット時 (kWh) など、合計して累積できる測定基準を処理します。累積では、指定されたタイムスタンプで各測定基準の呼び出しを行います。たとえば、暖房器、電気ケトル、および洗濯機について収集されるキロワットは、accumulate に対する 3 回の呼び出しになります。
| 名前 | タイプ | 説明 |
|---|---|---|
| now_GR | GlideRecord | 累積値の取得元の系列 GlideRecord の名前。 関連項目:getSeries() |
| default_value | 番号 | オプション。 指定されたタイムスタンプでの累積のデフォルト値。指定されたタイムスタンプの値が利用できない場合に、accumulate に対する最初の呼び出し中にのみ使用されます。 ユースケースとして、total_power のワット測定基準の累積が考えられます。電力量計なしでコンセントに接続されたルーターのワット数を累積して測定する必要があります。消費値がわかっていて定数である場合は、定数値をデフォルト値として使用して total_power を累積できます。たとえば、ルーターが常に接続されていて、20 ワットを消費する場合は、20 を使用します。 タイムスタンプ値は、DataBuilder API を使用して指定できます。 デフォルト:0 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、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, 3.5);
new sn_clotho.Client().accumulate(dataBuilder2, 0);
var dataBuilder3 = new sn_clotho.DataBuilder(building_a, "total_power");
// values to be accumulated
dataBuilder3.add(time, 3.5);
new sn_clotho.Client().accumulate(dataBuilder3, 0);
// As a result of these operations client will save value of
// 3.5+12+4.3+0(default value) at the timestamp 'time'
Client - Client()
MetricBaseデータベースにアクセスするためのクライアントクラスのインスタンスを作成します。
| 名前 | タイプ | 説明 |
|---|---|---|
| なし |
var client = new sn_clotho.Client();
Client - deleteMetric(文字列 tableName, 文字列 metricName)
MetricBase データベース内の指定されたテーブルから指定された測定基準を削除します。
| 名前 | タイプ | 説明 |
|---|---|---|
| tableName | 文字列 | 指定された測定基準を削除するテーブルの名前。 |
| metricName | 文字列 | 測定基準の名前 |
| タイプ | 説明 |
|---|---|
| なし |
次の例は、テーブルから測定基準を削除する方法を示しています。
var client = new sn_clotho.Client();
// delete metric (Speed) from the Drones table
client.deleteMetric("mb_demo_drone", "mb_demo_mt_speed");
Client - deleteSeries(GlideRecord now_GR, 文字列 metric)
指定された GlideRecord 内の指定されたメトリックに関連付けられたデータベースMetricBaseデータベースのデータを削除します。テストデータを削除するには、このメソッドを使用します。
| 名前 | タイプ | 説明 |
|---|---|---|
| now_GR | GlideRecord | 指定したメトリックの時系列データを削除するレコード |
| metric | 文字列 | 測定基準の名前 |
| タイプ | 説明 |
|---|---|
| なし |
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');
Client - getSeries(GlideRecord now_GR, 文字列 metricName, GlideDateTime lastUpdateBefore)
特定のディメンションからすべての系列を取得します。
| 名前 | タイプ | 説明 |
|---|---|---|
| now_GR | GlideRecord | 系列の取得元のレコード。 |
| metric | 文字列 | 測定基準の名前 |
| lastUpdateBefore | GlideDateTime | オプション。評価期間の終了日を表す将来の日付。 |
| タイプ | 説明 |
|---|---|
| アレイ | 指定された測定基準のデータを含む系列を表す文字列 sys_id のリスト。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');
Client - put(オブジェクト metricData)
測定基準データを MetricBase データベースに保存します。
| 名前 | タイプ | 説明 |
|---|---|---|
| metricData | オブジェクト | 次のいずれかになります。
|
| タイプ | 説明 |
|---|---|
| なし |
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]);