我在这里find了以下内容:
重要提示:在Linux上,你需要在path名之前加一个“ – ”字符,例如 – / var / log / maillog,否则syslogd进程将使用比Postfix更多的系统资源。
但文件没有给出任何理由。 那么,为什么这个“ – ”是需要的呢?
这只有在你仍然使用syslogd或更旧的rsyslog版本时才是必需的
从http://www.rsyslog.com/doc/v3compatibility.html ,“输出文件同步”一节
Rsyslogd尽可能保持与syslogd的兼容性。 因此,如果没有另外指定(通过在输出文件名之前放置一个破折号),它将保留股票syslogd的默认同步每个文件的写入。 虽然在过去的几天里,这是一个非常有用的function,硬件的可靠性和UPS很less不太可靠,但在今天的世界中这已经不再有用了。 相反,同步是一个高性能的命中。 有了它,rsyslogd写入文件的速度比没有它慢50 倍左右。 由于IO活动较高,也会影响整个系统的性能。 在rsyslog v3中,默认情况下,同步已closures。 这是通过默认closures的特定configuration指令“$ ActionFileEnableSync on / off”完成的。 所以即使rsyslogdfind了同步select器行,它也会默认忽略它们。 为了启用文件同步,pipe理员必须在rsyslog.conf顶部指定“$ ActionFileEnableSync on”。 这确保了同步只发生在pipe理员实际需要(性能强烈)function的一些安装中。 在绝大多数情况下(如果不是全部),这会显着增加rsyslogd的性能,而不会产生任何负面影响。