什么是Windows服务日志文件的“最佳实践”?

时间:2009-01-29 15:26:11

标签: logging windows-services

许多Windows服务将每日日志文件写入“程序文件”下的应用程序安装目录。

Windows系统应用程序(例如IIS)使用%SystemRoot%\ System32 \ LogFiles。我应该为我的服务做些什么吗?

5 个答案:

答案 0 :(得分:5)

我们使日志目录可配置。根据使用情况,您可能不希望操作系统驱动器上的日志,或者需要授予超出您需要权限的位置。

对于更详细的日志记录,事件日志并不总是最佳解决方案。我们使用事件日志来查看错误和警告以及主要状态更改(启动/停止/等),但我们使用日志文件进行更详细的操作。

答案 1 :(得分:2)

我不建议,这两个通常在Vista(和XP但不常见)中断,因为它们需要管理员权限才能写入。相反,我会建议%AllUsersProfile%\ application data \ yourService \

答案 2 :(得分:1)

使用事件日志 - 它可以以丰富的格式存储数据并支持通过WMI进行良好的查询(例如,管理员可以一次查询来自所有100个服务器的日志,以获取包含文件名“Payroll.xml”的警告 - 无需通过日志挖掘用于解决服务问题的文件。)

答案 3 :(得分:1)

在我的Windows服务上,我将日志输出到默认目录“C:\ App Log Files \”,并允许用户选择其他位置。我自动循环它们,所以我有Monday.log,Tuesday.log等。星期二早上,我删除了Wednesday.log,因此第二天它将是空的。最后,如果一周还不够,我将旧的重命名为星期三.V01。这个每周周期的原因是,在其他人完成的先前版本中,日志是按日期进行的,并且默默地填充硬盘直到一切都崩溃。鉴于大多数系统没有任何人维护它们,自我维护是值得的。

最后,虽然系统事件日志是偶尔发送消息的好地方,但它不适合详细记录事务等。通过将日志文件放在系统日志之外,您可以将它们发送回开发人员分析更容易。

答案 4 :(得分:-3)

一种选择是使用事件日志,这是许多IT人员期望查找日志的地方。

如果您想使用日志文件,那么%Temp%目录中的位置就会很好。