#elasticsearch #structured-logging
Вопрос:
У меня есть два приложения, сначала регистрируйте сообщения в формате:
{ "property": "foo" }
в то время как второй:
{ "property": { "bar": "baz" } }
Elastic отбрасывает такие журналы, потому что не может определить сопоставление для поля «свойство» (иногда это строка, а иногда вложенный объект).
Проблема все еще сохраняется, даже если я решу записать все вложенные json в виде строк:
{ "baz": 5 }
и из другого приложения:
{ "baz": "whatever" }
Как правильно вести структурированное ведение журнала здесь? Я должен проверять и управлять типом каждого возможного параметра?
Комментарии:
1. Даже в моем собственном приложении трудно гарантировать, что параметр с определенным именем всегда будет иметь определенный тип.