Ich habe eine Amazon EC2-Instanz ausgeführt und ich versuche, StatsD + InfluxDB + Grafana einzurichten. InfluxDB und Grafana funktionieren gut (und Grafana sieht die Daten von InfluxDB), aber ich kann keine Daten von StatsD zu InfluxDB bekommen.InfluxDB bekomme keine Pakete von StatsD
Ich habe eine Domain registriert, die auf meine EC2-Instanz mit einer Elastic IP verwiesen wird.
Was kann ich sehen, ist, dass: - ich kann mit der InfluxDB Datenbank (einschließlich Einfügen von Werten) interagieren, wenn ich StatsD nicht - StatsD die Daten zu sein scheint immer ich zufällig aus Python erzeugen (ich kann sehen Sie es in seinen Protokollen). Es wird über den Port 8125 an StatsD gesendet. - UTC-Pakete, die von StatsD über Port 8086 an InfluxDB gesendet werden, scheinen nicht zu InfluxDB zu gelangen (oder senden nicht ....?) - Port 8086 ist in meinen AWS-Sicherheitseinstellungen für TCP und UDP geöffnet - Port 8125 ist öffnen Sie auf meine AWS Sicherheitseinstellungen für UDP
ich frage mich, ob einige meiner Einstellungen falsch sind, aber ich weiß nicht, was anderes zu versuchen:
InfluxDB Konfigurationsdatei enthält:
# 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
Meine StatsD-Konfigurationsdatei enthält (unter anderem) die folgenden Zeilen
{
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
}
Soweit ich verstehen, der Prozess ist: Python -> Port 8125 -> StatsD -> Port 8086 -> InfluxDB
Gibt es eine Notwendigkeit, wie etwas zu verwenden, Telegraf oder statsd-influxdb-backend um StatsD und InfluxDB zu verbinden?
Ich würde wirklich jede Hilfe schätzen, weil ich versucht habe, es für Stunden einzurichten und ich sehe nicht, was falsch sein könnte.
Danke!
Wenn ich Sie gut verstehe, schlagen Sie vor, mit Telegraf StatsD mit InfluxDB zu kommunizieren, habe ich recht? Wie ich verstehe, würde das neue Schema aussehen: Python -> Port 8125 -> StatsD -> Telegraf -> InfluxDB – user2348684
Ich denke, er schlägt vor, mit dem [statsd plugin] (https://github.com/influxdata/telegraf/tree/master/plugins/inputs/statsd) das kommt mit Telegraf statt statsd. –