目录
输入和输出集成概述
NSQ Telegraf 插件从 NSQD 消息传递系统读取指标,从而实现实时数据处理和监控。
Redis 插件允许用户将 Telegraf 收集的指标直接发送到 Redis。此集成非常适合需要强大的时间序列数据存储和分析的应用程序。
集成详情
NSQ
NSQ 插件与 NSQ(一个实时消息传递平台)接口,从而能够从 NSQD 读取消息。此插件被归类为服务插件,这意味着它主动侦听指标和事件,而不是定期轮询它们。它注重可靠性,通过跟踪未传递的消息直到输出确认,从而防止数据丢失。该插件允许进行配置,例如指定 NSQLookupd 端点、主题和通道,并且它支持多种数据格式,以实现数据处理的灵活性。
Redis
Redis Telegraf 插件旨在将指标写入 RedisTimeSeries,这是一个专门用于时间序列数据的 Redis 数据库模块。此插件有助于 Telegraf 与 RedisTimeSeries 的集成,从而可以高效地存储和检索带时间戳的数据。借助 RedisTimeSeries,用户可以利用增强的功能来管理时间序列数据,包括聚合视图和范围查询。该插件提供各种配置选项,以实现安全连接到您的 Redis 数据库所需的灵活性,包括对身份验证、超时、数据类型转换和 TLS 配置的支持。底层技术利用了 Redis 的效率和可扩展性,使其成为高容量指标环境的绝佳选择,在这些环境中,实时处理至关重要。
配置
NSQ
# Read metrics from NSQD topic(s)
[[inputs.nsq_consumer]]
## Server option still works but is deprecated, we just prepend it to the nsqd array.
# server = "localhost:4150"
## An array representing the NSQD TCP HTTP Endpoints
nsqd = ["localhost:4150"]
## An array representing the NSQLookupd HTTP Endpoints
nsqlookupd = ["localhost:4161"]
topic = "telegraf"
channel = "consumer"
max_in_flight = 100
## Max undelivered messages
## This plugin uses tracking metrics, which ensure messages are read to
## outputs before acknowledging them to the original broker to ensure data
## is not lost. This option sets the maximum messages to read from the
## broker that have not been written by an output.
##
## This value needs to be picked with awareness of the agent's
## metric_batch_size value as well. Setting max undelivered messages too high
## can result in a constant stream of data batches to the output. While
## setting it too low may never flush the broker's messages.
# max_undelivered_messages = 1000
## Data format to consume.
## Each data format has its own unique set of configuration options, read
## more about them here:
## https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
data_format = "influx"
Redis
[[outputs.redistimeseries]]
## The address of the RedisTimeSeries server.
address = "127.0.0.1:6379"
## Redis ACL credentials
# username = ""
# password = ""
# database = 0
## Timeout for operations such as ping or sending metrics
# timeout = "10s"
## Enable attempt to convert string fields to numeric values
## If "false" or in case the string value cannot be converted the string
## field will be dropped.
# convert_string_fields = true
## Optional TLS Config
# tls_ca = "/etc/telegraf/ca.pem"
# tls_cert = "/etc/telegraf/cert.pem"
# tls_key = "/etc/telegraf/key.pem"
# insecure_skip_verify = false
输入和输出集成示例
NSQ
-
实时分析仪表板:将此插件与可视化工具集成,以创建显示 NSQ 中各种主题的实时指标的仪表板。通过订阅特定主题,用户可以动态监控系统健康状况和应用程序性能,从而及时了解情况并及时响应任何异常。
-
事件驱动的自动化:将 NSQ 与无服务器架构相结合,以根据传入的消息触发自动化工作流程。此用例可能涉及处理机器学习模型的数据或响应应用程序中的用户操作,从而简化操作并通过快速处理来增强用户体验。
-
多服务通信中心:在分布式架构中,使用 NSQ 插件充当不同微服务之间的集中式消息传递中心。通过使服务能够通过 NSQ 进行通信,开发人员可以确保可靠的消息传递,同时保持解耦的服务交互,从而显著提高可扩展性和弹性。
-
用于增强监控的指标聚合:实施 NSQ 插件以在将指标发送到分析工具之前聚合来自多个来源的指标。此设置使企业能够整合来自各种应用程序和服务的数据,从而创建统一视图,以实现更好的决策和战略规划。
Redis
-
监控物联网传感器数据:利用 Redis Telegraf 插件实时收集和存储来自物联网传感器的数据。通过将插件连接到 RedisTimeSeries 数据库,用户可以分析温度、湿度或其他环境因素的趋势。高效查询历史传感器数据的能力将有助于预测性维护并有助于资源管理。
-
金融市场数据聚合:使用此插件跟踪和存储来自各种来源的时间敏感的金融数据。通过将指标发送到 Redis,金融机构可以聚合和分析市场趋势或随时间推移的价格变化,从而为他们提供从可靠的时间序列分析中得出的可行见解。
-
应用程序性能监控 (APM):实施 Redis 插件以收集应用程序性能指标,例如响应时间和 CPU 使用率。用户可以使用 RedisTimeSeries 可视化其应用程序随时间的性能,从而使他们能够快速识别瓶颈并优化资源分配。
-
能源消耗跟踪:利用此插件来监控建筑物随时间的能源使用情况。通过与智能电表集成并将数据发送到 RedisTimeSeries,市政当局或企业可以分析能源消耗模式,从而帮助实施节能措施和可持续发展实践。
反馈
感谢您成为我们社区的一份子!如果您有任何一般反馈或在这些页面上发现任何错误,我们欢迎并鼓励您提出意见。请在 InfluxDB 社区 Slack 中提交您的反馈。