我有一個 Node.js 應用程序,我試圖查詢 InfluxDB 的云產品,我已經設置好它,所以我現在可以很好地寫入數據,現在我需要查詢部分。我的數據包含一些值 - 或者無論如何都會 - 我有經過的時間、服務和 serviceID。這是我在運行之前輸出它時的查詢fluxValue: 'from(bucket: "perf_mon")\n' + '|> range(start: duration(v: "-7d"))\n' + '|> filter(fn: (r) => r["_measurement"] == "elapsedtime")\n' + '|> filter(fn: (r) => r["_field"] == "elapsedtime")\n' + '|> filter(fn: (r) => r["serviceADD"] == "service")\n' + '|> filter(fn: (r) => r["abcdxyz"] == "serviceID")這是來自查詢構建器from(bucket: "perf_mon") |> range(start: v.timeRangeStart, stop: v.timeRangeStop) |> filter(fn: (r) => r["_measurement"] == "elapsedTime") |> filter(fn: (r) => r["_field"] == "elapsedTime") |> filter(fn: (r) => r["serviceADD"] == "service") |> filter(fn: (r) => r["abcdxyz"] == "serviceID") |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false) |> yield(name: "mean")這是我的完整代碼 - 僅在一個文件中以測試模式。const queryApi = new InfluxDB({url, token}).getQueryApi(org)const start = fluxDuration('-7d')const measurement = 'elapsedtime'const service = 'serviceADD'const serviceID = 'abcdxyz'const fluxQuery = flux`from(bucket: "${bucket}")|> range(start: ${start})|> filter(fn: (r) => r["_measurement"] == "${measurement}")|> filter(fn: (r) => r["_field"] == "${measurement}")|> filter(fn: (r) => r["${service}"] == "service")|> filter(fn: (r) => r["serviceID"] == "serviceID")`console.log('query:', fluxQuery)console.log('*** QUERY ROWS ***')queryApi.queryRows(fluxQuery, { next(row, tableMeta) { console.log('Row:', row) const o = tableMeta.toObject(row) console.log(JSON.stringify(o, null, 2)) console.log( `${o._time} ${o._measurement} in '${o.location}' (${o.example}): ${o._field}=${o._value}` ) },我從包的 github repo 中的示例中獲得了 95% 的代碼@influxdata/influxdb-client我的問題是我想知道如何做到這一點,以便我可以查詢 InfluxDB 并以一種格式取回我的數據,然后我可以處理或直接發送到我的前端。我在生成它的代碼和/或查詢中缺少什么,所以我無法通過我的腳本或通過 InfluxDB 云控制臺取回數據?
使用 Node 時查詢不返回數據,但從控制臺返回數據 | Influx數據庫
冉冉說
2023-03-18 17:22:09