问题标签 [event-log]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1960 浏览

silverlight - 隔离存储中的 Silverlight 事件日志

有没有人写过在 Silverlight 3 中使用独立存储的事件日志?关于实施一个的任何建议?

具体问题:

  1. 我应该保持流编写器打开,还是应该为每个条目打开、写入和关闭?
  2. 我应该如何以原子方式从日志中删除项目?
0 投票
3 回答
9336 浏览

asp.net-mvc - 从 ASP.NET MVC 应用程序写入 EventLog 时出现安全异常

我有一个使用一些业务逻辑创建的库,其中包括写入System.Diagnostics.EventLog实例。该库通常是从 Windows 服务应用程序调用的,但现在我试图从我的 ASP.NET MVC 应用程序调用这些相同的库函数。

我在我的控制器中尝试了这段代码来创建我传递给需要写入日志的方法的 EventLog 实例。

当库方法中的代码尝试写入日志时,会生成以下错误:

我的 Web 应用程序在运行 IIS 6 的 Windows Server 2003 上作为网络服务用户运行。为了让网络服务用户访问注册表,我需要做些什么吗?

是否有更好的方法来创建用于 ASP.NET MVC 应用程序的 EventLog 实例?我只需要引用的框架是否已经创建了一个?

0 投票
3 回答
6872 浏览

c# - 事件 ID 管理的最佳实践是什么?

我正在尝试弄清楚如何管理我的事件 ID。到目前为止,我一直在手动将每个事件 id 放入每个方法中,方法中的每个步骤都按顺序编号。这不允许我有效地过滤事件日志中的事件。为了在事件日志中使用过滤器,似乎每个记录的事件都必须有自己的唯一 ID。

我可以将它们全部存储在一个带有链接到它们的描述的表中,但是当我的代码执行时,我正在记录“魔法”无意义的事件代码。

我进行了谷歌搜索,但我似乎不知道使用正确的关键字来查明这个问题的根源。

提前致谢

0 投票
1 回答
2097 浏览

.net - 设置最大事件日志大小

为什么以下代码不起作用?

溢出策略已正确更改,但最大大小保持在默认的 512KB。我究竟做错了什么?

谢谢!

0 投票
0 回答
694 浏览

event-log - “反转” dw20.exe 哈希的方法?

我们的应用程序一直在抛出未处理的异常。DW20.exe 像这样的测试用例记录这些:

P9 是异常的名称。如果异常名称的长度超过 32 个字符,则 DW20.exe 会对该名称进行哈希处理(并且可能对哈希进行编码)。例如,异常“LongExceptionWithNameThatIsOver32”记录为:

如您所见,P9 不再是异常名称,而是名称的哈希。

我可以一次在我们的应用程序中抛出一个异常,但我更愿意将异常名称提供给实用程序而不是获取哈希。我相当确定 DW20.exe 是执行散列的程序(而不是 .NET 运行时)。我想知道 dw20.exe 正在使用什么散列/编码算法,这样我就可以构建一个实用程序来处理我的所有异常并生成相应的散列/编码。

我尝试将 windbg 附加到测试程序,但是没有调用 dw20.exe。我尝试将windbg附加到dw20.exe,当它弹出有关传输到微软的对话框时,它已经记录了异常。我无法让 dw20.exe 在 windbg.exe 的控制下启动,这将是找出正在使用什么的一种方法。

JR

0 投票
2 回答
10252 浏览

c# - 事件记录 IPAddress 并不总是能够解析

我正在将安全事件日志与 System.Diagnostics.Eventing.Reader.EventLogWatcher 类挂钩,并且我正在 2008 服务器框上观看事件 ID 4625,用于传入失败的登录(特别是 RDP)。

日志捕获工作正常,我将结果转储到队列中以进行相关的后续处理。但是,有时捕获的日志会填充(已解析)IPAddress 数据字段,有时则不会。

我在观察服务器时运行了windump,尝试了我通常从不同服务器和操作系统风格登录的RDP,我能得出的唯一结论是版本差异问题,而不是糟糕的编码。虽然我可能是错的,哈哈。

问题在于关于这些连接的事件日志本身。所有失败的 RDP 登录都被记录下来,并得到正确处理,但有些日志根本不记录失败连接的源 IP 地址。

一些较新的 mstsc 是否会以某种方式导致远程事件日志不记录源 IP 地址?这似乎适用于我针对此挂钩服务器运行的任何其他 2008 服务器。到目前为止,我尝试过的任何 2003 或 XP 机器都可以正确记录。

如果您需要更多信息,请告诉我。谢谢!

编辑

我是否需要做一些疯狂的事情——比如实现SharpPcap并将IP与事件日志相关联?=/。也许可以查询 lsass (这不是通常写入安全日志的唯一内容)吗?

0 投票
1 回答
1817 浏览

.net - 如何使用 .NET 在 Windows EventLog 中实现关联 ID?

我们即将开始使用 EventLog 作为我们的集中审计解决方案。我现在面临的一个问题是记录日志条目的相关性。例如,我们的操作从一个组件开始,到另一个组件结束。此操作具有唯一 ID。所以我需要将条目与操作 ID 相关联。

如何将此操作 ID 存储到 EventLog 中?稍后的操作 ID 将用于过滤 Windows 事件查看器中的事件。

在 Windows EventLog 中,我找到了 Correlation ID 字段。看来我可以使用它。但我在 .NET System.Diagnostics.EventLog 中找不到相关的 API。更重要的是,我找不到有关该领域的信息。

请建议有关主题的最佳实践。

0 投票
5 回答
47731 浏览

c# - 我的自定义事件日志条目要使用什么事件 ID?

自定义应用程序在登录到 Windows EventLog 时是否应使用任何有效事件 ID 范围?或者我可以使用我选择的任何事件 ID (1,2,3,4....)。PS,我正在使用 C#.NET 进行开发。

0 投票
4 回答
7428 浏览

asp.net - 未处理的 IIS 异常 - 我如何追踪它

我在事件日志中看到以下错误。它来自我们的 ASP.Net 应用程序。我无法追踪导致错误的原因。任何建议表示赞赏!

  • 操作系统:Windows Server 2000
  • 网络服务器:IIS 6
  • 应用:ASP.Net v3.5

错误日志

[MachineName] 记录了 IIS 的以下错误

详细信息:ComputerName=[ComputerName] User=Not specified Logfile=Application Type=Error EventType=1 SourceName=ASP.NET 2.0.50727.0 Category=0 CategoryString=未指定 EventCode=1334 EventID=-1073740490 TimeGenerated=20091125101806.000000-360 TimeWritten=20091125101806.000000 -360 Message=发生未处理的异常并且进程被终止。

应用程序 ID:DefaultDomain 进程 ID:1440 异常:System.Runtime.Serialization.SerializationException 消息:找不到程序集“Company.Common,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”。

StackTrace:在 System.Runtime.Serialization.Formatters.Binary.ObjectReader.GetType(BinaryAssemblyInfo assemblyInfo, String name) 在 System.Runtime.Serialization.Formatters.Binary 的 System.Runtime.Serialization.Formatters.Binary.BinaryAssemblyInfo.GetAssembly()。 ObjectMap..ctor(String objectName, String[] memberNames, BinaryTypeEnum[] binaryTypeEnumA, Object[] typeInformationA, Int32[] memberAssemIds, ObjectReader objectReader, Int32 objectId, BinaryAssemblyInfo assemblyInfo, SizedArray assemIdToAssemblyTable)
在 System.Runtime.Serialization.Formatters.Binary.__BinaryParser.ReadObjectWithMapTyped(BinaryObjectWithMapTyped 记录) 在 System.Runtime.Serialization.Formatters.Binary.__BinaryParser.Run() 在 System.Runtime.Serialization.Formatters.Binary.ObjectReader.Deserialize(HeaderHandler处理程序, __BinaryParser serParser, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage) 在 System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize(Stream serializationStream, HeaderHandler handler, Boolean fCheck, Boolean isCrossAppDomain, IMethodCallMessage methodCallMessage) 在 System.Runtime.Remoting .Channels.CrossAppDomainSerializer.DeserializeObject(MemoryStream stm) 在 System.AppDomain.Deserialize(Byte[] blob) 在 System.AppDomain.UnmarshalObject(Byte[] blob)

0 投票
2 回答
2793 浏览

asp.net - Win7 上的 ASP.Net 中的 EventLog 权限失败

我有一个 ASP.Net 应用程序 .net 3.5 SP1,在 Win7 中运行。在登录过程中,ASP.Net 登录控件中的某些内容导致写入事件日志中的安全日志(这听起来我可以接受)。问题是该应用似乎无权执行此操作。有错误是:

说明:应用程序试图执行安全策略不允许的操作。要授予此应用程序所需的权限,请联系您的系统管理员或在配置文件中更改应用程序的信任级别。

异常详细信息:System.Security.SecurityException:请求“System.Diagnostics.EventLogPermission、System、Version=2.0.0.0、Culture=neutral、PublicKeyToken=b77a5c561934e089”类型的权限失败。

堆栈跟踪没有显示我的应用程序中的一行代码,它全部在框架中。最后 5 行是: System.Security.CodeAccessSecurityEngine.Check(Object demand, StackCrawlMark& stackMark, Boolean isPermSet) +0 System.Security.CodeAccessPermission.Demand() +61 System.Diagnostics.EventLog..ctor(String logName, String machineName , String source) +125 System.Diagnostics.EventLog..ctor() +24 System.Diagnostics.EventLog.WriteEntry(String source, String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte[] rawData) +52

同样的应用程序在 XP SP2 上运行良好。我四处寻找,找不到如何授予权限。我尝试将 hte 应用程序池作为 LocalSystem 和 ApplicationPoolIdentity 运行。

让这个运行最简单的方法是什么?它是我的本地开发机器,我不在乎是否打开安全漏洞,只要我不必修改代码(即我需要解决方案是 INETMGR 更改或 web.config 或一些本地权限等)。

谢谢!