何时登录Windows事件日志?

时间:2012-04-09 15:14:35

标签: windows logging event-log

到目前为止,我的所有应用程序都只记录到文件。它对我来说很好,我从来没有遇到任何问题。

我的一位朋友建议我也可以使用Windows事件日志,但我不确定。我一直认为事件日志仅适用于一些非常重要的消息,如果可以避免,我不应该写入。

我什么时候可以/我应该写入窗口事件日志?

2 个答案:

答案 0 :(得分:5)

在我看来,是否登录Windows事件日志的决定取决于您的应用程序以及运行软件的人员。

登录事件日志肯定没有任何缺点,任何使用日志监控解决方案的人都会对您的努力表示感谢。

一般来说,您绝对应该避免将“debug”类型的消息记录到事件日志中,或者在短时间内产生大量消息的任何消息。但是,任何对管理软件的人有用的信息都可以(并且应该)记录到事件日志中。

STATUS_ACCESS_DENI还提到了本地化,这是一种比传统日志记录更重要的优势。

您可以记录以下内容:

  • 需要干预的错误和警告
  • 重要状态报告(软件启动,停止,更新等)

您可能需要查看此博客文章,其中概述了如何创建自己的消息dll,这是登录Windows事件日志时的首选方式:

http://www.eventlogblog.com/blog/2010/11/creating-your-very-own-event-m.html

可能要记住的一件事是设计您的日志记录,以便它不会在短时间内污染具有重复事件的事件日志。例如,Microsoft SQL Server在某些情况下会在几秒钟内记录数千个相同的事件。这对系统管理员来说可能是令人沮丧的。大多数日志监控解决方案可以解决这个问题,但它仍然很烦人。

底线:是的,您应该考虑登录事件日志。

答案 1 :(得分:4)

首先,除了三个默认值(系统,应用程序,安全性)之外,您还可以注册自己的事件日志,从而将消息与其他消息分开。这是一种经常被忽视的可能性。

一般情况下,我总是建议在二进制文件中使用消息表,并在任何家庭brew方法中使用事件日志工具。原因很简单:

  1. 如果需要,您可以轻松登录远程计算机(或本地计算机)
  2. 您可以从远程计算机上读取事件日志(例如,管理员可以在任何客户端计算机上列出其域内的事件日志)
  3. 消息表节省空间
  4. 消息表允许轻松本地化