【发布时间】:2017-02-20 01:11:56
【问题描述】:
我有一个正在运行的 Amazon EC2 实例,我正在尝试设置 StatsD+InfluxDB+Grafana。 InfluxDB 和 Grafana 运行良好(Grafana 可以看到来自 InfluxDB 的数据),但我无法将任何数据从 StatsD 获取到 InfluxDB。
我注册了一个域,该域指向我的具有弹性 IP 的 EC2 实例。
我能看到的是: - 当我不使用 StatsD 时,我可以完美地与 InfluxDB 数据库交互(包括插入值) - StatsD 似乎正在获取我从 Python 随机生成的数据(我可以在其日志中看到它)。它通过端口 8125 发送到 StatsD。 - 从 StatsD 通过端口 8086 发送到 InfluxDB 的 UTC 数据包似乎没有到达 InfluxDB(或没有发送......?) - 端口 8086 在我的 TCP 和 UDP 的 AWS 安全设置中打开 - 端口 8125 在我的 AWS UDP 安全设置中打开
我想知道我的某些设置是否有问题,但我不知道还有什么可以尝试的:
InfluxDB 配置文件包含:
# hostname = "localhost"
hostname = MYDOMAIN.com
[[udp]]
enabled = true
bind-address = ":8086"
database = "MY_DATABASE"
retention-policy = ""
batch-size = 1000 # will flush if this many points get buffered
batch-pending = 10 # number of batches that may be pending in memory
batch-timeout = "1s" # will flush at least this often even if we haven't hit buffer limit
read-buffer = 0 # UDP Read buffer size, 0 means OS default. UDP listener will fail if set above OS max.
udp-payload-size = 65536
我的 StatsD 配置文件包含(除其他外)以下几行:
{
influxdb: {
/*
host: '127.0.0.1', // InfluxDB host (default 127.0.0.1)
*/
host: 'MYDOMAIN.com', // InfluxDB host (default 127.0.0.1)
port: 8086, // InfluxDB port (default 8086)
database: 'MY_DATABASE', // InfluxDB db instance (required)
username: 'MY_USERNAME', // InfluxDB db username (required)
password: 'MY_PASSWORD', // InfluxDB db password (required)
flush: {
enable: true // enable regular flush strategy (default true)
},
proxy: {
enable: false, // enable the proxy strategy (default false)
suffix: 'raw', // metric name suffix (default 'raw')
flushInterval: 1000
}
},
port: 8125, // statsD port
backends: ['./backends/console'],
debug: true,
legacyNamespace: false
}
据我了解,流程是: Python --> 端口 8125 --> StatsD --> 端口 8086 --> InfluxDB
是否需要使用 Telegraf 或 statsd-influxdb-backend 之类的东西来连接 StatsD 和 InfluxDB?
我真的很感激任何帮助,因为我已经尝试设置了几个小时,但我看不出有什么问题。
谢谢!
【问题讨论】:
标签: sockets amazon-web-services influxdb grafana statsd