1

我有一个 Loggly 免费试用帐户设置和接收事件 日志屏幕。JSON 是一个对象数组,通过 webhook https POST 进行开发。每个对象都是一个事件(对于批量加载接口来说似乎是合理的)。简化示例:

[
  {
    "msys": {
      "track_event": {
        "event_id": "319115158633969504",
        "friendly_from": "traffic.gen@example.com"
      }
    }
  },
  {
    "msys": {
      "track_event": {
        "event_id": "319115158633970211",
        "friendly_from": "traffic2.gen@example.com"
      }
    }
  }
]

Loggly 可以解析 JSON 的内容并提取值(例如 event_id)吗?我尝试使用“创建派生字段”对话框,但这似乎是基于正则表达式/行的,而不是具有 JSON 意识。

4

1 回答 1

1

从逻辑上讲,我认为传递 JSON 数组会起作用,但是经过多次试验和错误,我发现如果传递多个由换行符分隔的单独 JSON 对象,这些对象将被解析为单独的事件:

curl -H "content-type:application/json" -d $'{"timestamp":"2018-09-02T17:16:15.003123Z", "message":"test1"}\n{"timestamp":"2018-09-02T17:17:15.003123Z", "message":"test2"}' http://logs-01.loggly.com/bulk/<your-token>

这种方法确实让我感到困扰(例如,它不是严格的,您传递的有效应用程序/json,尽管是内容类型,并且它不是 JSON 数组),但这可能会让您克服遇到的问题有,但我希望有一个比这更优雅的答案。

有关更多信息,请参阅以下内容:Loggly - 批量端点Loggly - 自动解析

于 2018-09-03T09:51:23.943 回答