Skip to main content

InfluxDB 集成(通过 TTS)

InfluxDB 是一个开源时间序列数据库,专注于海量时间序列数据的高性能读取、高性能写入、高效存储和实时分析。除了 HTTP 和 UDP 等原生协议外,它还兼容 CollectD、Graphite、OpenTSDB 和 Prometheus 等组件的通信协议。广泛应用于 DevOps 监控、物联网监控、实时分析等场景。

本章内容将指导用户如何通过 TTN 将 SenseCAP T1000 Tracker 连接到 InfluxDB。

pir

在开始设置之前,请查看将 SenseCAP T1000 连接到 TTS 以首先将您的 SenseCAP T1000 Tracker 连接到 TTS。

准备工作

在设置 InfluxDB 之前,我们需要安装 Telegraf 代理(版本 1.9.2 或更高)。

Telegraf 配置

设置 InfluxDB Cloud

登录到您的 InfluxDB Cloud

pir

创建存储桶

Buckets 选项卡上。

pir

点击 Create Bucket 按钮创建一个新的存储桶。

pir

为您的存储桶命名,选择数据在数据库中保留的时间,然后点击 Create

pir

生成令牌

导航到 API TOKENS 选项卡,点击 GENERATE API TOKEN 按钮创建令牌。

pir

pir

配置 Telegraf

MQTT 集成

本节向您展示如何使用 MQTT Consumer 插件配置您的 Telegraf 代理,用于连接到 TTS MQTT 服务器。

导航到 TELEGRAF 选项卡,点击 CREATE CONFIGURATION

pir

选择我们之前创建的存储桶,然后选择系统。

pir

为您的配置命名,选择 Create and Verify,然后点击 Finish。

pir

按照 InfluxDB Cloud 2.0 设置中描述的方式下载 Telegraf 配置文件后,通过添加以下行并根据您的 MQTT 服务器信息进行修改来更新它:

[[inputs.mqtt_consumer]]
#
#MQTT broker URLs to be used. The format is scheme://host:port, schema can be tcp, ssl, or ws.
servers = ["tcp://localhost:1883"]
#
#Topics to subscribe to
topics = ["#"]
#
#Username and password
username = "example"
password = "NNSXS.JNSBLIV34VXYXS7D4ZWV2IKPTGJM3DFRGO.........."
#
#Needed only if your payload type is string, since Telegraf does not forward data of this type by default
json_string_fields = ["uplink_message_frm_payload"]
#
#Define the message format
data_format = "json"
info

您可以在以下选项卡中查看 TTS 信息。

pir

接下来,您需要从 Tokens 选项卡复制之前生成的令牌,并将其导出为环境变量以供 InfluxDB 输出插件使用,或者您可以直接在配置文件中将其作为令牌值传递。您可以通过在终端中使用以下命令来设置环境变量:

INFLUX_TOKEN="paste your token here"

Run the Telegraf agent in your terminal with the following command:

telegraf --config /path/to/custom/telegraf.conf

pir

HTTP 集成

本节将向您展示如何使用 HTTP Listener v2 插件配置 Telegraf 代理,以及如何在 The Things Stack 上创建相应的 Webhook 集成。

按照 InfluxDB Cloud 2.0 设置中的描述,更新您之前下载的 Telegraf 配置,添加以下行并根据您的设置进行修改:

[[inputs.http_listener_v2]]
#
# Address and port to host HTTP listener on
service_address = ":8080"
#
# Path to listen to
path = "/telegraf"
#
# HTTP methods to accept
methods = ["POST"]
#
# Needed only if your payload type is string, since Telegraf does not forward data of this type by default
json_string_fields = ["uplink_message_frm_payload"]
#
# Define the message format
data_format = "json"

从 Tokens 选项卡复制生成的令牌,并将其用作 Telegraf 配置文件中输出插件的令牌值,或者在终端中使用以下命令将其导出为环境变量:

INFLUX_TOKEN="paste your token here"

Start the Telegraf agent by running the following command in the terminal:

telegraf --config /path/to/custom/telegraf.conf

数据浏览器

选择您的浏览器类型,在筛选窗口的下拉菜单中选择 _measurement,并勾选 mqtt_consumer 框。然后您可以选择要监控的主题和参数。

位置数据

FROM: 您的存储桶
MEASUREMENT: matt_sonsumer
_field: uplink_message_decoded_payload
topic: v3/...

pir

您也可以点击右上角的 SAVE AS 将此浏览器保存为仪表板单元格。

pir

仪表板(可选)

仪表板是您实时可视化和交互数据的地方。您可以根据需要自定义仪表板。

导航到 Dashboard 选项卡并点击 Create Dashbaord

pir

pir

Loading Comments...