2015-02-25 4 views
0

Я использую HHVM с Nginx.Как вы отформатируете вывод журнала ошибок HHVM?

Мне нравится иметь определенный формат журнала ошибок. В частности, с отметкой времени и уровня ошибок с смещение часового пояса, включенных в журнал ошибок, как:

[2014-02-23 01:20:33 -0500] WARNING: File not found 

мне удалось получить временные метки в журнал ошибок HHVM со следующим:

hhvm.log.level = Warning 
hhvm.log.always_log_unhandled_exceptions = true 
hhvm.log.runtime_error_reporting_level = 8191 
hhvm.log.use_log_file = true 
hhvm.log.file = /var/log/hhvm/error.log 
hhvm.log.header = true 

Однако, я могу Невозможно форматировать вывод журнала ошибок. В настоящее время, вот что я получаю для вывода в журнал ошибок HHVM:

[Wed Feb 25 18:08:20 2015] [hphp] [6516:7f30a15ff700:4:000001] [] \nWarning: File not found: 

Кто-нибудь знает, как изменить формат журнала ошибок для HHVM?

ответ

1

В настоящее время это жестко закодировано в hhvm's source.

Я очень рекомендую submitting a feature request to the hhvm team, они кучу очень полезные люди.

Если вам это не интересно, вы можете легко отредактировать вызов временной метки, чтобы включить смещение, а затем перестройте линии snprintf() в соответствии с вашими предпочтениями. Функция, которую вы ищете, - это линия, начинающаяся с std::string Logger::GetHeader() {, которая в настоящее время является линией 222.

Кроме того, вы могли бы иметь процесс cron или background (то есть примерно tail -f /var/log/some/error.log |awk -F " " '{ print $1 $5 }' >> /var/log/other/error.log &) разобрать журнал в формате вам нравится

Я понимаю, конечно, что эти варианты в то время как функциональные, вероятно, не идеальны.

+0

Ha! Спасибо за ссылку на код регистрации. Я отправлю им билет. – Ray