在 Linux 中,如果有必要,RHEL-8.10 或更高版本,我想编写一些 C 代码,这些代码接受各种参数,并在特定条件下发出system("init 0")
关闭系统命令。在发出关闭命令之前,我想在其中放入一行消息,/var/log/messages
说明系统被 ron 的代码关闭,这样我就可以记录关闭的时间。
如何正确写入/var/log/messages
?
显然我可以做一个fopen("/var/log/messages, "a")
和一个简单的fprintf
,但这看起来有点像黑客行为。
您应该使用中声明的函数将日志消息发送到系统记录器
syslog.h
。在初始化代码中,添加
(
ronboot
用适当的标识符替换;如果您指定NULL
,则会自动使用该程序的名称)。当你想记录某些内容时,使用
在清理代码中,添加
系统记录器会将消息写入相应的日志文件。这取决于所使用的工具和日志级别;
LOG_USER
/LOG_INFO
消息通常会发送到/var/log/messages
。