【问题标题】:Event log message size 31885? Windows 2008事件日志消息大小 31885?视窗 2008
【发布时间】:2012-06-25 19:14:25
【问题描述】:

我们最近将生产设备从 Windows 2003 服务器升级到了 Windows 2008。除事件记录外,一切正常。我们为每条消息记录最多 32000 字节的数据。

在 2008 服务器上,如果字符数大于 31885,事件记录将失败。这是 Windows 2008 R2 服务器上的新限制吗?

在 Win 2003 服务器上,我可以为每个日志条目记录 32000 字节的数据。

【问题讨论】:

  • 如果这是一个编程问题,请提供一些相关细节。否则,您很快就会被传送到 ServerFault 左右。
  • 如果“消息字符串超过 31,839 字节(在 Windows Vista 之前的 Windows 操作系统上为 32,766 字节),则会引发 ArgumentException。” msdn.microsoft.com/en-us/library/6w20x90k.aspx“解决方案”是不记录这么大的消息。

标签: windows event-log


【解决方案1】:

引用ReportEvent 函数的文档:

pStrings [in]

一个指向缓冲区的指针,该缓冲区包含一组以 null 结尾的字符串,这些字符串在事件查看器向用户显示字符串之前合并到消息中。此参数必须是有效指针(或 NULL),即使 wNumStrings 为零。每个字符串限制为 31,839 个字符。

在 Windows Vista 之前:每个字符串限制为 32K 个字符。

所以回答这个问题:

是的,可以记录的允许字符串的长度在正确的时间范围内发生了变化。解决方案是分解事件日志条目,缩小条目并将详细信息存储在其他地方,或者将一些内容存储在事件的二进制数据字段中。

【讨论】:

    猜你喜欢
    • 2018-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多