Регистрация Keycloak в поле сообщения формата JSON - PullRequest
1 голос
/ 13 февраля 2020

Я пытался настроить регистрацию ключевого плаща, чтобы его можно было очистить при помощи fluentd, чтобы использовать его в эластичном поиске. До сих пор я использовал предоставленную строку CLI для использования в моем скрипте значений helm.

  cli:
    # Custom CLI script
    custom: |
      /subsystem=logging/json-formatter=json:add(exception-output-type=formatted, pretty-print=true, meta-data={label=value})
      /subsystem=logging/console-handler=CONSOLE:write-attribute(name=named-formatter, value=json)

Keycloak logs

Однако, как вы можете видеть на картинке при условии, что сгенерированные журналы кажутся полностью json отделенными от ядра журнала, поля сообщения. В настоящее время поле сообщения предоставляется в виде пар ключ-значение, разделенных запятыми. Есть ли способ сообщить keycloak, jboss или wildfly, что он должен предоставить сообщение также в JSON? Это позволяет мне эффективно искать данные в elasti c.

1 Ответ

0 голосов
/ 16 февраля 2020

Проверьте этот проект на GitHub: keycloak_jsonlog_eventlistener: выводит события Keycloak как JSON в журнал сервера.

Keycloak JSON Log Eventlistener

Первоначально написанный для Jboss Keycloak docker image , он будет выводить события Keycloak как JSON в журнал сервера keycloak.

Идея состоит в том, чтобы проанализировать журналы, как только они достигнут logsta sh через journalbeat .

Протестировано с Keycloak версии 8.0.1

...