使用 syslog 时禁用/启用日志记录

发布于 2024-12-22 07:04:39 字数 114 浏览 3 评论 0原文

我打算使用 syslog 来登录应用程序。我需要能够在编译时禁用日志记录,也许可以使用宏。这是否可以与系统日志设施有关,或者我是否需要将系统日志包装在我自己的宏/函数中?能够根据优先级禁用/启用日志消息是一个优点。

I intend to use syslog for logging in an application. I need to be able to disable logging, at compile time, perhaps using a macro. Is this possible to do with the syslog facilities, or do I need to wrap syslog in my own macros/functions? The ability to disable/enable log messages based on their priority is a plus.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

美男兮 2024-12-29 07:04:39

也许您可以将调用包装到 setlogmask 在定义块中。

setlogmask 设置一个掩码(“logmask”)来确定哪个未来
系统日志调用将被忽略。如果程序没有调用setlogmask,
syslog 不会忽略任何调用。可以使用setlogmask来指定
将来应忽略特定优先级的消息。

像这样的东西:

#ifdef LOG_LEVEL1
setlogmask (LOG_UPTO (LOG_NOTICE));
#endif
#ifdef LOG_LEVEL2
setlogmask (LOG_UPTO (LOG_WARNING));
#endif

Maybe you could wrap a call to setlogmask in define block.

setlogmask sets a mask (the “logmask”) that determines which future
syslog calls shall be ignored. If a program has not called setlogmask,
syslog doesn't ignore any calls. You can use setlogmask to specify
that messages of particular priorities shall be ignored in the future.

something like this :

#ifdef LOG_LEVEL1
setlogmask (LOG_UPTO (LOG_NOTICE));
#endif
#ifdef LOG_LEVEL2
setlogmask (LOG_UPTO (LOG_WARNING));
#endif
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文