QueryTimeseriesMeta 操作を呼び出すことで、特定の条件を満たす時系列を取得できます。
前提条件
クライアントが初期化されていること。詳細については、「Tablestore クライアントの初期化」をご参照ください。
パラメーター
パラメーター | 説明 |
timeseriesTableName (必須) | 時系列テーブルの名前。 |
condition (オプション) | 時系列を取得するためのクエリ条件。以下の条件の組み合わせがサポートされています。
|
getTotalHits (オプション) | 指定された取得条件を満たす行の総数を返すかどうかを指定します。デフォルト値: False。 |
limit (オプション) | このリクエストで返される行の最大数。デフォルト値: 100。有効な値: 説明 limit パラメーターは、返される行の最大数のみを制限します。指定された条件を満たす行数が limit を超えていても、スキャンの最大データ量などの他の制限により、返される行数が limit パラメーターの値よりも少ない場合があります。この場合、nextToken パラメーターを使用して残りの行を取得できます。 |
nextToken (オプション) | 指定された条件を満たす行の一部のみがクエリで返された場合、応答には nextToken パラメーターが含まれます。次のリクエストで nextToken パラメーターを指定して、残りの行を取得できます。 重要 nextToken を永続化したり、フロントエンドページに転送したりする場合は、Base64 を使用して nextToken を文字列にエンコードできます。 nextToken 自体は文字列ではありません。 |
例
次のサンプルコードは、時系列テーブル内の指定された条件を満たす時系列を取得する方法の例を示しています。
try:
# クエリ条件: メトリック名が "cpu" で、"os" という名前のタグのプレフィックスが "Ubuntu" であるすべての時系列。
# これは、measurement_name="cpu" and have_prefix(os, "Ubuntu") と同等です。
measCond = MeasurementMetaQueryCondition(MetaQuerySingleOperator.OP_EQUAL, "cpu")
tagCond = TagMetaQueryCondition(MetaQuerySingleOperator.OP_PREFIX, "os", "Ubuntu")
condition = CompositeMetaQueryCondition(MetaQueryCompositeOperator.OP_AND, [measCond, tagCond])
request = QueryTimeseriesMetaRequest("", condition)
# 操作を呼び出して時系列を取得します。
response = ots_client.query_timeseries_meta(request)
print("query timeseries metas succeeded. ")
for timeseriesMeta in response.timeseriesMetas:
print("data_source: %s, measurement_name: %s, tags: %s, attributes : %s, update_time_in_us: %s." % (
timeseriesMeta.timeseries_key.data_source, timeseriesMeta.timeseries_key.measurement_name,
timeseriesMeta.timeseries_key.tags,
timeseriesMeta.attributes, timeseriesMeta.update_time_in_us))
except Exception as e:
# 例外がスローされた場合、クエリは失敗します。例外を処理します。
print("query timeseries meta failed. %s" % e)