我正在编写一个程序,需要经常监视XServer
的屏幕分辨率。为此,我每隔一秒使用XOpenDisplay
来获得实际设置的新参考。到目前为止,非常好。
我现在面临的问题是XServer
在/var/log/Xorg.0.log
中为每个请求存储了相当多的信息。由于程序应该能够永久运行而不会填满/var
上的文件系统,我想知道,我能做些什么来解决这个问题。
这种详细日志记录的原因是CentOS(6 + 7)使用XServer
启动-audit 4
,它指示服务器记录日志文件中的每个访问信息。
我现在想知道,如果有更智能的方法来检索屏幕的实际分辨率。我尝试从命令行xrandr
和其他工具,但他们似乎都以相同的方式访问X
,导致相同数量的日志条目。
所以,如果没有别的方法,因为我不能假设我可以本地访问的特定驱动程序配置,我必须修改XServer
设置。但我无法弄清楚如何做到这一点。
似乎没有设置审计级别的全局配置文件,至少我无法找到它。
对此的任何帮助将不胜感激。
答案 0 :(得分:0)
您应该能够通过RandR扩展程序获得当前的屏幕分辨率和有关更改的事件以及更多信息。
答案 1 :(得分:0)
Xorg由/usr/libexec/gdm-simple-slave
开始。
整个Xorg命令行已预编译在二进制模块中。
我已经使用vi成功地将-audit 4
参数修补为-audit 1
。重新启动后,日志文件(Xorg和gdm)的稳定增加停止了。
(已在CentOS 6.6到6.9上验证)