Transformer – Scoped, Global
Die Transformator -API bearbeitet Zeitreihendaten, um die Daten für die Auswertung und Analyse vorzubereiten.
Sie können diese API in bereichsbezogenen und globalen Serverskripts aufrufen. Wenn Sie die Klasse „Transformer“ verwenden, verwenden Sie den Namespace-Bezeichner 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);Diese Klasse ist Teil der MetricBase-Anwendung.
Transformator: Transformator (GlideRecord sourceRecords)
Erstellen Sie ein Transformer-Objekt.
| Name | Typ | Beschreibung |
|---|---|---|
| sourceRecords | GlideRecord | Enthält die Datensätze, für die Metriken ausgewertet werden sollen. Kann ein Datensatz oder viele Datensätze sein. |
//where drones is a GlideRecord created from a table with a metric field
var builder = new sn_clotho.Transformer(drones);
Umwandler – execute(GlideDateTime start, GlideDateTime end)
Führen Sie die Transformation aus.
Verwenden Sie die Methoden metric() und groupBy(), bevor Sie execute() aufrufen. Die Methode execute() kann nur einmal für jedes Transformer-Objekt aufgerufen werden.
Aktionen, die im Rahmen der Transformation ausgeführt werden, ändern die Daten in der MetricBase-Datenbank nicht.
| Name | Typ | Beschreibung |
|---|---|---|
| start | GlideDateTime | Der Beginn des auszuwertenden Zeitraums. |
| end | GlideDateTime | Das Ende des auszuwertenden Zeitraums. |
| Typ | Beschreibung |
|---|---|
| TransformResult | Die umgewandelten Daten. |
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);
Umwandler – groupBy(Zeichenfolgenfeld)
Gibt das Feld an, das zum Gruppieren der Daten verwendet werden soll.
Wenn Sie die groupBy()- Methode verwenden möchten, müssen Sie sie vor dem Aufrufen der execute()- Methode aufrufen.
| Name | Typ | Beschreibung |
|---|---|---|
| field | Zeichenfolge | Das Feld in der Tabelle, das zum Gruppieren der Transformationsergebnisse verwendet werden soll. |
| Typ | Beschreibung |
|---|---|
| TransformPart | Ein TransformPart-Objekt, das Sie zum Angeben der Transformationsmerkmale verwenden können. |
var transformer = new sn_clotho.Transformer(grDrone);
var trnsfrm = transformer.groupBy("fleet");
Umwandler – metric(String metricName)
Geben Sie das Metrikfeld an, das bei der Transformation verwendet werden soll.
Sie können mehrere Metriken angeben, die bei der Transformation verwendet werden sollen. Die Methode metric() kann nicht aufgerufen werden, nachdem die Methode execute() aufgerufen wurde.
| Name | Typ | Beschreibung |
|---|---|---|
| metricName | Zeichenfolge | Name des Metrikfelds. |
| Typ | Beschreibung |
|---|---|
| TransformPart | Ein TransformPart-Objekt, mit dem die Transformationseigenschaften angegeben werden können. |
var transformer = new sn_clotho.Transformer(grDrone);
var trnsfrm = transformer.metric("mb_demo_mt_altitude");