私は OpenTSDB と時系列 DB にかなり慣れていません。私はすぐにそのドキュメントを一通り読みましたが、まだ特定のことが明確ではありません。私は基本的に、合計などのアグリゲーター関数にはあまり興味がありません。レプリケーションラグ、スロークエリの数、SQL マシンのステータスなどのメトリックを、次のようなタグに保存するすべてのホストに対して保存する必要があります::
[
{
"metric":"replicationLag"
"timestamp":new Date.getTime()
"value" : 2.0
"tags": {
"host":acb-em1.db01.nm.xyz.com
}
}
"metric":"slowQuery"
"timestamp":new Date.getTime()
"value" : 4
"tags": {
"host":acb-em1.db01.nm.xyz.com
}
]
これに対して行う必要があるクエリの種類は、ほとんど次のようなものです。特定の時間範囲でのレプリケーション ラグの値はどのくらいでしたか。1.上記のスキーマはこれで十分ですか、それとももっと良い方法がありますか?
このためにこれを使用しています
リクエストのJSONは
{
"start":1410272307100,
"end":1410340000000,
"queries":[
{
"metric":"slowQuery",
"aggregator":"sum",
"tags":{
"host":"tg-em-db01.nm.flipkart.com"
}
}
]
}
Response content :
[
{
"metric":"slowQuery",
"tags":{
"host":"tg-em-db01.nm.flipkart.com"
},
"aggregateTags":[],
"dps":{"1410327176":0,"1410328026":0,"1410328265":0,"1410328401":0,"1410328488":0}
}
]
空のコンテンツを返しているため、アグリゲーターの「合計」が正確に何をするかはわかりません。とにかく合計は必要ありませんが、ドキュメントには「必須」フィールドであると記載されています。ただし、これですべてのデータポイントとその値を取得します。AggregatorTags とそれが必要な理由、およびそれを省略して、指定された時間中にそのホストに対応するデータポイントを取得する方法についてはまだ不明です。前もって感謝します!