Как я могу получить журналы Bluemix для включения стековых трасс?
Наш код просто использует java.util.logging для регистрации информации, ошибок и т. Д. Затем я могу просмотреть эти журналы несколькими способами:
- команда cf logs
- веб-консоль bluemix (агрегатор журналов)
- кибана веб-интерфейс
- ssh and cat /home/vcap/logs/messages.log
Если я регистрирую сообщение, оно появляется везде. Если я регистрирую сообщение и передаю параметр исключения, сообщение появляется везде, но исключение отображается только в /home/vcap/logs/messages.log. Исключение и трассировка стека не отображаются в журналах cf, консоли bluemix или kibana. Поскольку файл messages.log имеет конечный размер и не сохраняется на всех этапах повторного использования, я не всегда могу просмотреть его, чтобы получить необходимую информацию.
Так, как я могу гарантировать, что полное сообщение журнала, включая исключение, полностью зарегистрировано?
2 ответа
По умолчанию messages.log будет содержать только сообщения, написанные или захваченные компонентом ведения журнала. Журналы FFDC (в каталоге журналов каждого приложения) должны содержать полные трассировки стека. Смотрите [1] и [2] для более подробной информации:
[1] https://console.bluemix.net/docs/runtimes/liberty/loggingAndTracing.html
В следующей статье содержится информация, относящаяся к ведению журнала и трассировке: https://www.ibm.com/support/knowledgecenter/SSEQTP_liberty/com.ibm.websphere.wlp.doc/ae/rwlp_logging.html
В таблице 2 приведены допустимые уровни ведения журнала. Взгляните на эту таблицу и используйте соответствующий уровень журнала, чтобы получить необходимую информацию в журналах. надеюсь это поможет.