В syslog-ng, как я могу напечатать подсказку в поле json как целое число для использования в месте назначения sql? - PullRequest
0 голосов
/ 22 ноября 2018

Я пытаюсь отправить источник в формате JSON в место назначения sql, используя syslog-ng.В источнике есть несколько текстовых полей и несколько целочисленных полей.

Когда я использую json-parser, я могу индивидуально адресовать каждый ключ / значение, но json-parser преобразует все поля в строки.

Поскольку назначение sql не допускает подсказки типа, как я могу отправить значение из моего проанализированного json сообщения в виде целого числа?

Я пытался использовать переписывание, как это, ноэто не работает:

rewrite r_dns {
  set(
    "flow_id",
    value( "int64(${.json.flow_id})" )
  );
};

В идеале я хотел бы сделать что-то подобное, но у sql dest такой опции нет:

sql(
  ...
  columns(flow_id BIGINT)
  values(int64(${.json.flow_id}))
)
...