OpenTSDB使用總結-(2)
阿新 • • 發佈:2019-01-17
API
寫入資料
可以在一次請求中將多個數據寫入OpenTSDB,每個資料都會被單獨處理,且單資料出錯不會影響其他資料的寫入。建議每個請求中最大資料點數不超過50.
URI
URI格式
寫入資料
POST {OpenTSDB URL}/api/put
寫入資料並返回概要資訊
POST {OpenTSDB URL}/api/put?summary
寫入資料並返回詳細資訊
POST {OpenTSDB URL}/api/put?details
說明:
如果summary和details標誌同時存在於查詢字串,該API將響應detailed資訊。
寫入資料並等待資料刷入磁碟
POST {OpenTSDB URL}/api/put?sync
寫入資料等待資料刷入磁碟,並設定超時時間(毫秒)。當發生超時時,使用details標誌將會返回成功和失敗的資料點數量。
POST {OpenTSDB URL}/api/put?sync&sync_timeout=60000
請求
請求樣例:單資料點寫入
{
"metric": "sys.cpu.nice",
"timestamp": 1346846400,
"value": 18,
"tags": {
"host": "web01",
"dc": "lga"
}
}
請求樣例:多資料點寫入-傳入Json陣列
[
{
"metric ": "sys.cpu.nice",
"timestamp": 1346846400,
"value": 18,
"tags": {
"host": "web01",
"dc": "lga"
}
},
{
"metric": "sys.cpu.nice",
"timestamp": 1346846400,
"value": 9,
"tags": {
"host": "web02",
"dc ": "lga"
}
}
]
引數說明
表1
請求引數說明 | 屬性名 | 型是否必須 | 描述 | 限制 |
---|---|---|---|---|
metric | String | 是 | 指標項名 | 可以包含大小寫英文字母,數字,“-”,“_”,“.”,“/”以及Unicode字元。不允許包含空格及其它字元。區分大小寫。 |
timestamp | Integer | 是 | 時間戳,單位:秒 | 以秒為單位的Unix/POSIX Epoch時間戳,從1970年1月1日00:00:00 UTC時間起經過的秒數。說明:時間戳建議使用4334400秒到4291718400秒之間的時間,即從1970/02/20 12:00:00到2106/01/01 00:00:00。必須是整數。不能超過13位數。僅支援秒級別的資料,毫秒級別的資料會轉換成秒。 |
value | Integer,Long,Double | 是 | 資料值 | 整數或者單精度浮點數(Float)。如果使用雙精度(Double)的浮點數,可能能導致查詢結果不正確。 |
tags | Map | 是 | Tagk和Tagv的鍵值對 | 可以包含大小寫英文字母,數字,“-”,“_”,“.”,“/”以及Unicode字元。不允許包含空格及其它字元。區分大小寫。最少1個,最多8個Tagk和TagV的鍵值對。 |
響應
響應樣例: summary
{
"failed": 1,
"success": 0
}
響應樣例:details
{
"errors": [
{
"datapoint": {
"metric": "sys.cpu.nice",
"timestamp": 1365465600,
"value": "NaN",
"tags": {
"host": "web01"
}
},
"error": "Unable to parse value to a number"
}
],
"failed": 1,
"success": 0
}