У меня есть журналы, подобные следующим:
{
"log": {
"header": {
"key": "value",
"nested": "{\"key1\":\"value\",\"key2\":\"value\"}",
"dateTime": "2019-05-08T20:58:06+00:00"
},
"body": {
"path": "/request/path/",
"method": "POST",
"ua": "curl/7.54.0",
"resp": 200
}
}
}
Я пытаюсь объединить журналы, используя fluentd, и хочу, чтобы вся запись была в формате JSON.Конкретной проблемой является поле «$ .log.header.nested», представляющее собой строку JSON.Как я могу разобрать и заменить эту строку ее содержимым?
Для ясности, я бы хотел, чтобы выводимые журналами fluentd выглядели так:
{
"log": {
"header": {
"key": "value",
"nested": {
"key1": "value",
"key2": "value"
},
"dateTime": "2019-05-08T20:58:06+00:00"
},
"body": {
"path": "/request/path/",
"method": "POST",
"ua": "curl/7.54.0",
"resp": 200
}
}
}
Я нашел способпроанализировать вложенное поле как JSON, но сохранение до того же ключа, с которого оно было проанализировано, неясно.Похоже, что hash_value_field
не поддерживает хранение во вложенном ключе.Есть ли другой способ сделать это?