InfluxDB应该用于监控网络,服务器状态(如MySQL)和API数据(例如Yahoo Finance)吗?与Wireshark等客户端软件相比,主要优点是什么?
答案 0 :(得分:1)
InfluxDB甚至在社区版本中(只有单个实例)可以处理大量的传入数据:如果您有足够的存储空间来存储给定数量的数据,则可以处理数千个时间序列和数百万个数据值。默认情况下,InfluxDB将永久保留传入数据,如果您感兴趣,可以为每个命名空间配置data retention policy。在过去30天。
对于监控MySQL,请查看Telegraf's MySQL plugin,它是一个应该在MySQL服务器上运行的数据收集器。 InfluxDB只是"只是"时间序列数据库,不是数据收集器,也不是监视工具。
通过简单的配置(在/etc/telegraf/telegraf.conf
中),您可以获得一些基本指标:
[[inputs.mysql]]
servers = ["tcp(127.0.0.1:3306)/"]
在数据库本身旁边,您可能希望监视系统状态(CPU,内存):
[[inputs.cpu]]
fielddrop = ["time_*"]
percpu = false
totalcpu = true
[[inputs.disk]]
[[inputs.diskio]]
[[inputs.io]]
[[inputs.kernel]]
[[inputs.mem]]
[[inputs.net]]
interfaces = ["eth0"]
当然,您不仅限于使用Telegraf收集指标,您可以使用collectd
,statsd
等,但与Telegraf集成可能是最简单的方法。
Wireshark是一种数据包检测工具,它是完全不同的工具类别。 Wireshark的输出可能用于动态监视SQL查询(在进行大量解析之后)。但是这种数据不适合时间序列数据库(您可以将其存储在Elasticsearch或某些列数据库中)。
时间序列数据库通常存储指标:数据包数,查询数,连接数。随着时间的推移汇总它们。