如何在文件夹中存储事件日志

发布于 2024-10-14 01:00:57 字数 159 浏览 7 评论 0原文

在 ASP NET 项目 (C#) 上,我使用 System.Diagnostics 命名空间来记录错误、警告和信息。 使用 Windows 7,我看到为该项目设置的日志位于“应用程序和服务日志”下。 例如,如何在代码中设置创建文件夹并将其放在“应用程序和服务日志[某些文件夹]\应用程序和服务日志”下?

On an ASP NET project (C#) I'm using the System.Diagnostics namespace to log errors, warning and information.
Using Windows 7 I see that the log I've set for the project is under "Applications and Services Logs".
How can I set in code to create a folder and put it under "Applications and Services Logs[SOME FOLDER]\Applications and Services Logs", for examples?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

得不到的就毁灭 2024-10-21 01:00:57

“应用程序和服务日志”部分中存储的日志是自定义事件发布者的日志,而不是简单的 Windows 事件日志。

从这篇文章读取和管理事件日志的技术摘要

应用程序和服务日志是
不同类别的事件日志
Windows 日志。应用程序和
服务日志存储来自
单个应用程序或组件
比可能发生的事件
全系统的影响。他们有一个
定义的各种名称
事件提供者。

因此,您需要创建一个自定义事件发布器。以下几篇文章提供了更多信息:

The logs stored in the Applications and Services Log section are the logs of custom event publishers as opposed to simple Windows Event Logs.

From this article Technology Summary for Reading and Managing Event Logs:

Applications and Services logs are a
different category of event logs than
the Windows Logs. The Applications and
Services logs store events from a
single application or component rather
than events that might have
system-wide impact. They have a
variety of names that are defined by
event providers.

Thus, you would need to create a custom Event Publisher. Here are a couple of articles with more information:

不离久伴 2024-10-21 01:00:57

这是 .NET 3.5 的一项新功能,可在 . Microsoft 引入了一个不太用户友好的新库,请阅读它 这里。它说这些类只能在 Windows Vista 中工作,很可能已经过时了,但是我大胆猜测它们可以在 Windows 7 和 Server 2008 中访问。

我没有在那里找到代码来解释如何创建新的层次结构然而,正如您所要求的那样,我相信这是大方向。

This is a new feature of .NET 3.5 and available in . Microsoft introduced a new library that is not too user friendly read about it here. It says, most likely out of date, that these classes only work in Windows Vista, however I would hazard a guess that they are accessible in Windows 7 and Server 2008.

I didn't find code there to explain how to create a new hierarchy like you were asking for, however, I believe this in the general direction.

凉城 2024-10-21 01:00:57

您是否考虑过使用更通用的日志机制来提供更大的灵活性?例如 log4net。然后,您可以随时在日志文件和事件日志以及其他方法之间切换,而无需更改一行代码。

Have you considered using a more generic log mechanism which provides greater flexibility? For example log4net. Then you can switch between log files and event log and also other methods whenever you want without changing a line of code.

北城半夏 2024-10-21 01:00:57

创建事件源时,指定日志名称。它将成为事件查看器中的“文件夹”。

EventLog.CreateEventSource("Source", "Log name");
EventLog.WriteMessage("Source", "Your message");

请注意,创建事件源可能需要计算机上的附加权限。在 ASP.Net 上下文中,我建议创建一个用于创建事件源的 Windows 或控制台应用程序。以管理员身份运行一次。

When creating your Event Source, specify a Log Name. It will become the "folder" in the Event Viewer.

EventLog.CreateEventSource("Source", "Log name");
EventLog.WriteMessage("Source", "Your message");

Be aware that creating an event source may require additional rights on the machine. In an ASP.Net context, I suggest to create a windows or console application that create the Event Source. Run it once as an administrator.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文