0

JSONデータを含むファイルを追跡することにより、jsonデータをinfluxに抽出するにはどうすればよいですか?

例えば:

私のログは次のようなものです:

2020-12-01T18:34:06+02:00 10.132.90.194 {"wfd_successful_hits_sec": "0", "sql_hits_sec_max": "0", "timestamp": "2020/12/01 18:34:01", "connection_sec_max": "1922", "http_hits_sec_max": "1106", "http_hits_sec": "106", "wfd_successful_hits_sec_max": "0", "sql_hits_sec": "0", "sql_audit_phase2_events_sec_max": "0", "hdfs_hits_sec": "0", "connection_sec": "26"}

JSON部分を抽出して流入に送信する方法はありますか?

grok パターン(\{.*\})$が JSON 部分を抽出することはわかっています。

私の設定は次のようになります:

[global_tags]
[agent]
  interval = "10s"
  round_interval = true
  metric_batch_size = 1000
  metric_buffer_limit = 10000
  collection_jitter = "0s"
  flush_interval = "10s"
  flush_jitter = "0s"
  precision = ""
  hostname = ""
  omit_hostname = false
[[inputs.tail]]
  files = ["/opt/soc/perf_stat/host*log"]
  data_format = "json"
[[outputs.influxdb_v2]]
  urls = ["http://localhost:8086"]
  token = "TOKEN"
  organization = "ORG"
  bucket = "performance_stats
4

1 に答える 1

0

json 構造からフィールド、タグ、およびタイムスタンプを抽出する方法を入力プラグインに伝えるために、入力プラグインに渡すことができる多くの構成パラメーターがあります。https://github.com/influxdata/telegraf/tree/master/plugins/parsers/jsonを参照してください

于 2020-12-20T23:20:19.890 に答える