有没有什么办法可以将系统日志从 json 格式排成一行?
is there any way to make syslog in one row from json-format?
我是日志新手。
有没有办法让系统日志排成一行?
它在 info.log 中具有 json 格式,但我需要使其在系统日志中更具可读性(对于 google 云日志记录)。
我使用 cakephp v2.1.
现在的样子:
[SYSLOG] : info: Array
[SYSLOG] : info: (
[SYSLOG] : info: [Message] => Array
[SYSLOG] : info: (
[SYSLOG] : info: [user_id] => 1321
[SYSLOG] : info: [ip] => 172.10.1.1
[SYSLOG] : info: [user_agent] => Mozilla/5.0 (Macintosh.... etc)
[SYSLOG] : info: )
[SYSLOG] : info:
[SYSLOG] : info: )
这是来自 bootstrap.php
的配置
CakeLog::config('default', [
'engine' => 'SyslogLog',
'types' => array('info', 'error', 'warning'),
]);
好想看
[SYSLOG] : info: Array([Message] => Array([user_id] => 1321[ip] => 172.10.1.1[user_agent] => Mozilla/5.0 (Macintosh.... etc)))
也许Google Cloud Logging 中有一些工具可以解决这个问题?谢谢
我只是改变了发送它的功能就修复了它。
情况如何:
$this->log($log, 'info');
我是如何改变的:
$this->log(json_encode($log), 'info');
P.S。有时简单是最好的解决方案
我是日志新手。
有没有办法让系统日志排成一行?
它在 info.log 中具有 json 格式,但我需要使其在系统日志中更具可读性(对于 google 云日志记录)。
我使用 cakephp v2.1.
现在的样子:
[SYSLOG] : info: Array
[SYSLOG] : info: (
[SYSLOG] : info: [Message] => Array
[SYSLOG] : info: (
[SYSLOG] : info: [user_id] => 1321
[SYSLOG] : info: [ip] => 172.10.1.1
[SYSLOG] : info: [user_agent] => Mozilla/5.0 (Macintosh.... etc)
[SYSLOG] : info: )
[SYSLOG] : info:
[SYSLOG] : info: )
这是来自 bootstrap.php
的配置CakeLog::config('default', [
'engine' => 'SyslogLog',
'types' => array('info', 'error', 'warning'),
]);
好想看
[SYSLOG] : info: Array([Message] => Array([user_id] => 1321[ip] => 172.10.1.1[user_agent] => Mozilla/5.0 (Macintosh.... etc)))
也许Google Cloud Logging 中有一些工具可以解决这个问题?谢谢
我只是改变了发送它的功能就修复了它。
情况如何:
$this->log($log, 'info');
我是如何改变的:
$this->log(json_encode($log), 'info');
P.S。有时简单是最好的解决方案