在Ubuntu系统日志上检索wxLogSysError

时间:2014-05-25 18:02:46

标签: c++ wxwidgets

尝试在Ubuntu平台上的系统日志中检索wxLog消息:

示例代码:

char *log = "Log System error";
wxLogSysError(log);

结果:

Show dialog with status (warning dialog):
Log System error (error 0: Success)

然后尝试解决存储在Ubuntu /var/log/*/var/log/syslog中的登录位置。我找不到任何wx或尝试按时间ll -ltrha /var/log排序,最新日志是syslog但没有提到wxLog。

尝试作为样本:

 cat /var/log/syslog | grep "wx"

没有返回wx的错误日志。

在Ubuntu系统平台上存储wxLogSysError(log);函数的错误在哪里?或者应该如何应对呢?它提到了errrno()或GetLastError()但是如何存储在系统日志中?

参考文献: http://docs.wxwidgets.org/trunk/group__group__funcmacro__log.html#ga28f01715af5aaf37caffdc5bc00fde3f

调试模式没有显示任何提及它。

1 个答案:

答案 0 :(得分:1)

正如您链接的文档所解释的那样,wxLogSysError()wxLogError()完全相同,即在GUI程序中默认显示在对话框中,只需添加对应于最后一条的消息系统错误(即Unix下的errno)。

所以这些消息永远不会进入syslog。如果你想要syslog输出,你必须实现自己的wxLog派生类来完成它。您还可以使用现有的wxLogStreamwxLogStderr类来登录文件。