2

fluentd と influxdb の間のデータ損失に苦しんでいます。

この構成で fluent-plugin-influxdb プラグインを使用する:

<source>
  id test_syslog
  type syslog
  port 42185
  protocol_type tcp
  time_format %Y-%m-%dT%H:%M:%SZ
  tag test_syslog
  format /^(?<time>[^ ]*) (?<fastly_server>[^ ]*) (?<log_name>[^ ]*) (?<host>[^ ]*) ([^ ]*) ([^ ]*) (?<http_method>[^ ]*) (?<http_request>[^ ]*) (?<http_status>[^ ]*) (?<cache_status>[^ ]*) (?<uuid>[^ ]*) *(?<device_model>.*)$/
</source>

<match test_syslog.**>
  type copy
  <store>
    type file
    path /var/log/td-agent/test_syslog
  </store>
  <store>
    id test_syslog
    type influxdb
    dbname test1
    flush_interval 10s
    host localhost
    port 8086
    remove_tag_suffix .local0.info
  </store>
</match>

ファイル出力と influxdb のデータを比較すると、次のことがわかります。

user@ip-xxx-xxx-xxx-xxx:/var/log/td-agent# curl -G 'http://localhost:8086/query' --data-urlencode "db=test1" --data-urlencode "q=SELECT COUNT(host) FROM log_data" ; cat test_syslog.20150901.b51eb4653c54c63e7 | wc -l
{"results":[{"series":[{"name":"log_data","columns":["time","count"],"values":[["1970-01-01T00:00:00Z",582]]}]}]}2355

ログには 2355 行ありますが、データベースには 582 レコードしかありません。

influxdb と fluentd の両方からデバッグ/トレース ロギングを有効にしましたが、これまでのところログに興味深いものはありません。

何か案は?

4

1 に答える 1