TL;DR无法在influxdb中查看syslog日志
环境:
OS: mac os mojave
telegraf version: 1.8
influxdb version: 1.6.4
所以我想查看chronograf
中的日志,并从telegraf提供的input plugins集合中找出使用syslog
插件的方法。在
我遵循了here的说明,但是为了便于阅读,这里也添加了一些步骤。在
我通过homebrew
安装了rsyslog,如下所示:
在/usr/local/etc/rsyslog.conf
中添加了以下内容:
$WorkDirectory /tmp/rsyslog # temporary directory for storing data
$ActionQueueType LinkedList # use asynchronous processing
$ActionQueueFileName srvrfwd # set file name, also enables disk mode
$ActionResumeRetryCount -1 # infinite retries on insert failure
$ActionQueueSaveOnShutdown on # save in-memory data if rsyslog shuts down
$ModLoad imudp #loads the udp module
#listen for messages on udp localhost:514
$UDPServerAddress localhost
$UDPServerRun 514
*.* @@(o)127.0.0.1:6514;RSYSLOG_SyslogProtocol23Format
重新启动rsyslog:
$ sudo brew services restart rsyslog
我配置telegraf如下:
# # Accepts syslog messages per RFC5425
[[inputs.syslog]]
# ## Specify an ip or hostname with port - eg., tcp://localhost:6514, tcp://10.0.0.1:6514
# ## Protocol, address and port to host the syslog receiver.
# ## If no host is specified, then localhost is used.
# ## If no port is specified, 6514 is used (RFC5425#section-4.1).
server = "tcp://localhost:6514"
重新启动telegraf如下:
$ brew services restart telegraf
但我的期望是在telegraf
数据库中看到{
我编写了以下python脚本来记录syslog
,希望它出现在数据库中:
import logging
import logging.handlers
my_logger = logging.getLogger('MyLogger')
my_logger.setLevel(logging.DEBUG)
handler = logging.handlers.SysLogHandler(address='/var/run/syslog')
my_logger.addHandler(handler)
my_logger.debug('this is debug')
my_logger.critical('this is critical')
但没用。在
这里怎么了?如果是的话,有没有日志文件我可以签入?在
编辑1:
因此,我使用rsyslogd -N1
命令对rsyslog进行了故障排除,发现了一些问题:
/etc/rsyslog.conf
中。在/tmp/rsyslog
,因此创建了一个。在在完成上述所有操作之后,我重新启动了rsyslog,同时还inflexdb和telegraf,通过运行rsyslogd -N1
命令再次检查是否有任何错误,输出如下:
rsyslogd: version 8.37.0, config validation run (level 1), master config /etc/rsyslog.conf
rsyslogd: End of config validation run. Bye.
同样的问题依然存在。在
编辑2: 相关帖子:syslog-plugin-from-remote-server
目前没有回答
相关问题 更多 >
编程相关推荐