目录
输入和输出集成概述
MQTT Telegraf 插件旨在从指定的 MQTT 主题读取数据并创建指标,使用户能够利用 MQTT 进行实时数据收集和监控。
AWS Timestream Telegraf 插件使用户能够将指标直接发送到 Amazon 的 Timestream 服务,该服务专为时序数据管理而设计。此插件为身份验证、数据组织和保留设置提供了各种配置选项。
集成详情
MQTT
MQTT 插件允许从指定的 MQTT 主题读取指标,并使用支持的输入数据格式创建指标。此插件作为服务输入运行,它监听传入的指标或事件,而不是像普通插件那样以设定的间隔收集它们。该插件的灵活性通过支持各种代理 URL、主题和连接功能(包括服务质量 (QoS) 级别和持久会话)得到增强。其配置选项包含全局设置,可以修改指标并有效地处理启动错误。它还支持密钥存储配置,用于保护用户名和密码选项,从而确保与 MQTT 服务器的安全连接。
AWS Timestream
此插件旨在高效地将指标写入 Amazon 的 Timestream 服务,这是一种针对物联网和运营应用程序优化的时序数据库。借助此插件,Telegraf 可以发送从各种来源收集的数据,并支持身份验证、数据组织和保留管理的灵活配置。它利用凭证链进行身份验证,允许各种方法,例如 Web 身份、承担的角色和共享配置文件。用户可以定义指标在 Timestream 中的组织方式——是使用单个表还是多个表,以及对磁存储和内存存储的保留期限等方面的控制。一个关键特性是它能够处理多指标记录,从而实现高效的数据摄取,并有助于减少多次写入的开销。在错误处理方面,该插件包含用于解决与数据写入期间的 AWS 错误相关的常见问题的机制,例如用于节流的重试逻辑和根据需要创建表的功能。
配置
MQTT
[[inputs.mqtt_consumer]]
servers = ["tcp://127.0.0.1:1883"]
topics = [
"telegraf/host01/cpu",
"telegraf/+/mem",
"sensors/#",
]
# topic_tag = "topic"
# qos = 0
# connection_timeout = "30s"
# keepalive = "60s"
# ping_timeout = "10s"
# max_undelivered_messages = 1000
# persistent_session = false
# client_id = ""
# username = "telegraf"
# password = "metricsmetricsmetricsmetrics"
# tls_ca = "/etc/telegraf/ca.pem"
# tls_cert = "/etc/telegraf/cert.pem"
# tls_key = "/etc/telegraf/key.pem"
# insecure_skip_verify = false
# client_trace = false
data_format = "influx"
# [[inputs.mqtt_consumer.topic_parsing]]
# topic = ""
# measurement = ""
# tags = ""
# fields = ""
# [inputs.mqtt_consumer.topic_parsing.types]
# key = type
AWS Timestream
[[outputs.timestream]]
## Amazon Region
region = "us-east-1"
## Amazon Credentials
## Credentials are loaded in the following order:
## 1) Web identity provider credentials via STS if role_arn and web_identity_token_file are specified
## 2) Assumed credentials via STS if role_arn is specified
## 3) explicit credentials from 'access_key' and 'secret_key'
## 4) shared profile from 'profile'
## 5) environment variables
## 6) shared credentials file
## 7) EC2 Instance Profile
#access_key = ""
#secret_key = ""
#token = ""
#role_arn = ""
#web_identity_token_file = ""
#role_session_name = ""
#profile = ""
#shared_credential_file = ""
## Endpoint to make request against, the correct endpoint is automatically
## determined and this option should only be set if you wish to override the
## default.
## ex: endpoint_url = "http://localhost:8000"
# endpoint_url = ""
## Timestream database where the metrics will be inserted.
## The database must exist prior to starting Telegraf.
database_name = "yourDatabaseNameHere"
## Specifies if the plugin should describe the Timestream database upon starting
## to validate if it has access necessary permissions, connection, etc., as a safety check.
## If the describe operation fails, the plugin will not start
## and therefore the Telegraf agent will not start.
describe_database_on_start = false
## Specifies how the data is organized in Timestream.
## Valid values are: single-table, multi-table.
## When mapping_mode is set to single-table, all of the data is stored in a single table.
## When mapping_mode is set to multi-table, the data is organized and stored in multiple tables.
## The default is multi-table.
mapping_mode = "multi-table"
## Specifies if the plugin should create the table, if the table does not exist.
create_table_if_not_exists = true
## Specifies the Timestream table magnetic store retention period in days.
## Check Timestream documentation for more details.
## NOTE: This property is valid when create_table_if_not_exists = true.
create_table_magnetic_store_retention_period_in_days = 365
## Specifies the Timestream table memory store retention period in hours.
## Check Timestream documentation for more details.
## NOTE: This property is valid when create_table_if_not_exists = true.
create_table_memory_store_retention_period_in_hours = 24
## Specifies how the data is written into Timestream.
## Valid values are: true, false
## When use_multi_measure_records is set to true, all of the tags and fields are stored
## as a single row in a Timestream table.
## When use_multi_measure_record is set to false, Timestream stores each field in a
## separate table row, thereby storing the tags multiple times (once for each field).
## The recommended setting is true.
## The default is false.
use_multi_measure_records = "false"
## Specifies the measure_name to use when sending multi-measure records.
## NOTE: This property is valid when use_multi_measure_records=true and mapping_mode=multi-table
measure_name_for_multi_measure_records = "telegraf_measure"
## Specifies the name of the table to write data into
## NOTE: This property is valid when mapping_mode=single-table.
# single_table_name = ""
## Specifies the name of dimension when all of the data is being stored in a single table
## and the measurement name is transformed into the dimension value
## (see Mapping data from Influx to Timestream for details)
## NOTE: This property is valid when mapping_mode=single-table.
# single_table_dimension_name_for_telegraf_measurement_name = "namespace"
## Only valid and optional if create_table_if_not_exists = true
## Specifies the Timestream table tags.
## Check Timestream documentation for more details
# create_table_tags = { "foo" = "bar", "environment" = "dev"}
## Specify the maximum number of parallel go routines to ingest/write data
## If not specified, defaulted to 1 go routines
max_write_go_routines = 25
## Please see README.md to know how line protocol data is mapped to Timestream
##
输入和输出集成示例
MQTT
-
智能家居监控:使用 MQTT Consumer 插件来监控智能家居设置中的各种传感器。在这种情况下,可以将插件配置为订阅不同设备的主题,例如温度、湿度和能耗。通过聚合这些数据,房主可以可视化趋势并接收异常模式的警报,从而提高家庭自动化系统的整体质量和效率。
-
物联网环境传感:部署 MQTT Consumer 以收集来自分布在不同位置的传感器的环境数据。例如,这可以包括来自空气质量传感器、温度传感器和噪声水平仪的读数。可以将插件配置为从 MQTT 主题中提取相关的标签和字段,从而可以对大规模环境条件进行详细分析和报告,从而为城市规划或环境倡议提供更好的决策支持。
-
实时车辆跟踪和遥测:将 MQTT Consumer 插件集成到车辆遥测系统中,该系统实时收集来自各种传感器的数据。借助该插件,可以将与车辆性能、位置和燃料消耗相关的指标发送到中央监控仪表板。这种实时遥测数据使车队管理者能够通过主动数据分析来优化路线、降低燃料成本并改进车辆维护计划。
-
农业监控系统:利用此插件从监控土壤湿度、作物健康状况和天气状况的农业传感器收集数据。MQTT Consumer 可以订阅与农业设备和环境传感器相关的多个主题,使农民能够做出数据驱动的决策,以提高作物产量,同时节约资源,增强农业的可持续性。
AWS Timestream
-
物联网数据指标:使用 Timestream 插件将来自物联网设备的实时指标发送到 Timestream,从而可以快速分析和可视化传感器数据。通过将设备读数组织成时序格式,用户可以跟踪趋势、识别异常并根据设备性能简化运营决策。
-
应用程序性能监控:将 Timestream 与应用程序监控工具一起使用,以随时间推移发送有关服务性能的指标。此集成使工程师能够执行应用程序性能的历史分析,将其与业务指标相关联,并根据随时间推移查看的使用模式优化资源分配。
-
自动化数据归档:配置 Timestream 插件以将数据写入 Timestream,同时管理保留期。此设置可以自动化归档策略,确保根据预定义的标准保留较旧的数据。这对于合规性和历史分析尤其有用,使企业能够以最少的人工干预来维护其数据生命周期。
-
多应用程序指标聚合:利用 Timestream 插件将来自多个应用程序的指标聚合到 Timestream 中。通过创建统一的性能指标数据库,组织可以获得跨各种服务的整体洞察力,从而提高系统范围性能的可见性并促进跨应用程序故障排除。
反馈
感谢您成为我们社区的一份子!如果您有任何一般性反馈或在这些页面上发现了任何错误,我们欢迎并鼓励您提出意见。请在 InfluxDB 社区 Slack 中提交您的反馈。