堆栈驱动程序日志记录 - 通过syslog

时间:2017-05-21 10:26:56

标签: google-cloud-platform syslog rsyslog google-cloud-logging google-cloud-stackdriver

看来日志严重性未通过精通代理传递到Google Cloud Logging平台,重现您可以尝试:

击:

logger -p user.crit "My log"

或PHP:

php -r "syslog(LOG_CRIT,'My log');"

或Python:

import syslog

syslog.syslog(syslog.LOG_ERR, 'My log')

事情正在传递给Google Logs Viewer,如下所示:

enter image description here

但严重程度没有被发送,任何想法为什么会这样?

1 个答案:

答案 0 :(得分:1)

好的,设法找到解决方案,在这里:

  1. /etc/rsyslog.conf下的系统日志输出格式更新为以下内容:

    $template googlelogger,"%syslogseverity-text% %timegenerated% %HOSTNAME% %syslogtag% %msg%\n"
    $ActionFileDefaultTemplate googlelogger
    
  2. 然后更新/etc/google-fluentd/config.d/syslog.conf模板格式:

    format /^(?<severity>[a-zA-Z]*) (?<time>[^ ]*\s*[^ ]* [^ ]*) (?<host>[^ ]*) (?<service>[a-zA-Z0-9_\/\.\-]*): *(?<message>.*)$/
    time_format %b %d %H:%M:%S
    
  3. 确保在将该严重性发送到Google Cloud Logging后重新启动rsysloggoogle-fluentd