8

Puppet 默认将日志写入 syslog。这是为什么?大多数软件写入一些单独的日志文件。我检查了文档,其中提到您可以写入日志文件,但提到“这通常不使用”。这是个坏主意吗?

遵循 puppet 日志记录的典型设置是什么?在 /var/log/messages 文件上使用 grep?

4

2 回答 2

6

既然你提到了syslog,我假设你在谈论类似 Debian 的 Linux。

实际上没有必要编写自己的日志工具。定制/etc/default/puppet就够了。

# Startup options
DAEMON_OPTS="--logdest /var/log/puppet/puppet.log"

/etc/default/puppet来源是/etc/init.d/puppet,因此您在此处添加的选项将在puppet服务启动时执行。

关于--logdest选项的文档:https ://docs.puppetlabs.com/references/3.3.1/man/apply.html#OPTIONS

顺便说一句,为 Debian(或 Ubuntu)提供的 deb 包 puppet 甚至包括一个 logrotate 配置文件/var/log/puppet,我不知道为什么这个选项不是默认的。

/var/log/puppet/*log {
  missingok
  sharedscripts
  create 0644 puppet puppet
  compress
  rotate 4

  postrotate
    pkill -USR2 -u puppet -f 'puppet master' || true
    [ -e /etc/init.d/puppet ] && /etc/init.d/puppet reload > /dev/null 2>&1 || true
  endscript
}
于 2015-06-09T06:00:48.653 回答
3

为此,我们正在使用 puppet-dashboard。它将为您提供有关环境的一个很好的概述,什么是失败的,什么是有效的。以及哪些服务器已停止签入。

它易于设置,请查看http://puppetlabs.com/puppet/related-projects/dashboard/

如果要记录到不同的文件,可以使用 puppet ( http://docs.puppetlabs.com/references/stable/configuration.html#syslogfacility ) 中的 syslogfacility 配置选项,并将 syslog 配置为将其记录到不同的文件文件。

于 2012-05-06T10:07:56.237 回答