getTimeseries method
Future<List<TsKvEntry>>
getTimeseries(
- EntityId entityId,
- List<String> keys, {
- int? interval,
- Aggregation? agg,
- Direction? sortOrder,
- int? startTime,
- int? endTime,
- int? limit,
- bool useStrictDataTypes = true,
- RequestConfig? requestConfig,
})
Implementation
Future<List<TsKvEntry>> getTimeseries(EntityId entityId, List<String> keys,
{int? interval,
Aggregation? agg,
Direction? sortOrder,
int? startTime,
int? endTime,
int? limit,
bool useStrictDataTypes = true,
RequestConfig? requestConfig}) async {
var queryParameters = <String, dynamic>{
'keys': keys.join(','),
'interval': interval == null ? '0' : interval.toString(),
'agg': agg == null ? 'NONE' : agg.toShortString(),
'limit': limit != null ? limit.toString() : '100',
'orderBy': sortOrder != null ? sortOrder.toShortString() : 'DESC',
'useStrictDataTypes': useStrictDataTypes
};
if (startTime != null) {
queryParameters['startTs'] = startTime.toString();
}
if (endTime != null) {
queryParameters['endTs'] = endTime.toString();
}
var response = await _tbClient.get<Map<String, dynamic>>(
'/api/plugins/telemetry/${entityId.entityType.toShortString()}/${entityId.id}/values/timeseries',
queryParameters: queryParameters,
options: defaultHttpOptionsFromConfig(requestConfig));
return RestJsonConverter.toTimeseries(response.data);
}