您的位置:首页 > 其它

Windows 服务程序zlog使用

2016-05-17 06:34 232 查看
Zlog日志Windows服务程序使用总结

Zlog日志版本选择(zlog介绍链接:http://www.oschina.net/p/zlog)

auto tools版本:https://github.com/bmanojlovic/zlog

cmake版本:https://github.com/lisongmin/zlog

windows版本:https://github.com/lopsd07/WinZlog

当前我使用的是windows版本,由于zlog不是官方编写的,且windows版本是通过linux下移植过来的所以可能不如linux稳定,不过我的项目要求不高,没有特别的应用需求。

问题一:初始化zlog配置文件失败

原因:找不到zlog配置文件,在提供的WinZlog工程下存在一个test工程,调试此工程代码时,出现初始化配置文件失败。Zlog本身不支持绝对路径,所以即使输入绝对路径也没有用。Zlog查找当前的工作环境目录,由于调试时的工作环境是项目环境,所以将zlog的配置文件放在test的项目平级目录即可解决。当然如果是exe的可执行文件,需要放在和exe平级目录下。

问题二:初始化zlog配置文件失败,读取文件失败

原因:配置文件的rules规则制定的路径的双引号采用中文格式,导致读取错误,应该采用英文格式

[formats]

simple = "%m%n"

[rules]

my_cat.DEBUG >stdout; simple

my_cat.INFO "/var/log/test.log"; simple

问题三:服务程序下,初始化zlog配置失败
原因:这个原因和之前类似就是工作目录的问题,服务程序的工作目录与exe所在的目录并不是同一个目录,找不到zlog配置文件。由于本人太菜,不知道服务程序的工作路径,且之前项目有过相关问题,所以直接调用GetModuleBaseName、GetModuleFileName,分别获取当前的服务程序名称以及服务程序的exe路径,并调用SetCurrentDirectory修改当前的工作路径为exe所在的路径。之后再初始化zlog就没有问题了。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: