Telegrafjs中接收Telegram Web App发送数据的实用指南核心实现原理Telegram Web App通过data方法发送数据时,Telegram客户端会将数据封装成包含web_app_data字段的特殊消息在Telegrafjs中需通过boton#39message#39监听所有消息。
Telegraf 是 InfluxData 公司开源的一款十分流行的指标采集软件,在 GitHub 上已有上万 Star其借助社区的力量,拥有了多达 200 余种采集插件以及 40 余种导出插件,几乎覆盖了所有的监控项,例如机器监控服务监控甚至是硬件监控一架构设计 Telegraf 的架构设计基于 Pipeline 并发编程模式,这是 Go。
避免Telegraf集群重复消费EMQ消息的核心策略是通过EMQ Broker端配置实现共享订阅,而非依赖MQTT主题的$queuetopic#模式 具体解决方案如下1 理解问题根源无效的$queuetopic#订阅MQTT协议本身不支持$queue前缀的共享订阅机制该前缀常见于其他消息队列系统直接使用此模式会导致Telegraf集群无法实现。
Telegraf是一个用Go语言编写的插件驱动的开源软件代理,用于收集和发送来自数据库系统和物联网传感器的所有包括不限于指标事件等数据其具备输入插件Input处理插件Process聚合插件Aggregate和输出插件Output四种基本插件类型输入插件从各种来源收集数据,处理插件在发送之前转换清洗。
最后一个stage为Outputs,每个output生成一个goroutine,并消费由Processors或Aggregators产生的数据,然后输出到各个output Telegraf拥有如此众多的inputoutput以及processor插件,其高效管理插件的方式基于工厂模式的变体实现插件目录结构如下pluginsinputs各个input插件的包目录 pluginsinputsall。
输出插件Output将数据发送到数据存储服务和消息队列,如InfluxDBGraphiteOpenTSDBDatadogKafkaMQTTNSQ等这些插件使得用户能够根据自己的需求,将数据发送到合适的后端进行存储和分析二Telegraf的主要特性 插件驱动架构Telegraf拥有一个庞大且不断发展。
评论留言
暂时没有留言!