在NestJS中使用InfluxDB2的schema.measurementTagValues需安装哪个npm包?
在NestJS中使用InfluxDB 2.x的Flux
schema.measurementTagValues函数所需的npm包 你需要安装官方的InfluxDB JavaScript客户端包 @influxdata/influxdb-client,这是InfluxDB 2.x官方提供的适配Node.js环境的客户端,完全支持执行包含schema.measurementTagValues在内的所有Flux查询,适配NestJS这类Node.js框架。
安装命令
npm install @influxdata/influxdb-client # 或使用yarn yarn add @influxdata/influxdb-client
简单使用示例
在NestJS中可以封装一个InfluxDB服务来执行查询:
import { Injectable } from '@nestjs/common'; import { InfluxDB, QueryApi } from '@influxdata/influxdb-client'; @Injectable() export class InfluxService { private readonly queryApi: QueryApi; constructor() { // 初始化InfluxDB客户端 const influxDB = new InfluxDB({ url: 'http://your-influxdb-url:8086', token: 'your-influxdb-token', }); // 获取查询API实例,传入组织ID this.queryApi = influxDB.getQueryApi('your-organization-id'); } async fetchTagValues(bucket: string, measurement: string, tagKey: string) { // 构造包含schema.measurementTagValues的Flux查询 const fluxQuery = ` import "schema" schema.measurementTagValues(bucket: "${bucket}", measurement: "${measurement}", tag: "${tagKey}") `; // 执行查询并获取结果 const tagValues = await this.queryApi.collectRows(fluxQuery); return tagValues; } }
内容的提问来源于stack exchange,提问作者diubi
相关产品推荐
相关产品推荐

