未找到来源,但无法搜索到部分或全部事件日志。无法访问的日志:安全性[重复]

问题描述 投票:0回答:9

我收到错误:

未找到来源,但无法获取部分或全部事件日志 搜索过。无法访问的日志:安全性

当我运行下面的代码来捕获 Win 2K12 R2 服务器 IIS 8.5 上的错误时

EventLog elog = new EventLog();
EventLog.CreateEventSource("MyApp", "Application");
EventLog.WriteEntry(Source, swError.ToString(), EventLogEntryType.Error);

我已授予对

HKLM\SYSTEM\CurrentControlSet\services\eventlog
的完全访问权限,但它仍然无法正常工作。我该怎么做才能修复它?

c# iis event-log iis-8
9个回答
95
投票

请参阅创建注册表项

出现此问题不仅是由于权限问题,还可能是由于未成功注册而导致事件源密钥丢失(您需要管理员权限才能执行此操作 - 如果您像往常一样打开 Visual Studio 并正常运行程序,它会成功)还不够)。确保您的事件源“MyApp”确实已注册,即它出现在注册表中的

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application
下。

来自 MSDN EventLog.CreateEventSource():

在 Windows Vista 及更高版本或 Windows Server 中创建事件源 2003年,你必须有管理权限。

因此,您必须以管理员身份运行事件源注册代码(另外,检查源之前是否已存在 - 请参阅上面的 MSDN 示例),或者您可以手动将密钥添加到注册表中:

  1. 创建一个注册表键
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application\MyApp
    ;
  2. 在里面,创建一个字符串值
    EventMessageFile
    并将其值设置为例如
    C:\Windows\Microsoft.NET\Framework\v2.0.50727\EventLogMessages.dll

52
投票

我在运行 Visual Studio 时遇到此错误。 通过以管理员身份运行 Visual Studio,应用程序能够访问安全日志,因为它具有足够的权限(从而防止错误)。


14
投票

我知道,我来晚了一点……发生了很多事情,您只需使用 IIS 中的 应用程序池 中的默认设置即可。在 IIS 管理实用程序中,转到

app pools->select pool-->advanced settings->Process Model/Identity
并选择具有正确权限的用户身份。默认情况下,它设置为
ApplicationPoolIdentity
。如果您是开发人员,您很可能在您的计算机上进行管理,因此您可以选择您的帐户来运行应用程序池。在部署服务器上,让管理员来处理它。


9
投票

如果在 Visual Studio 中运行代码时看到错误,请以管理员身份运行 Visual Studio。它对我有用。


7
投票

在本地,我以管理员权限运行 Visual Studio,错误消失了。

如果您在任务计划程序中遇到此错误,您必须检查以高权限运行的选项


6
投票

也尝试为 AppPool ID 或网络服务提供适用的访问权限 HKLM\SYSTEM\CurrentControlSet\services ventlog\security。我遇到了同样的错误..这对我有用。查看错误还表明无法访问的日志是安全日志。

我还授予了事件日志应用程序的权限。

我在任何地方都授予完全访问权限。


2
投票

也可能是因为找不到所需的.dll 文件。 该文件不在该文件夹中或已被重命名。 我遇到了同样的问题,发现我的 bin 文件夹中缺少 .dll 文件。


2
投票
在 Visual Studio 中调试时,使用

NetworkService 作为应用程序池高级设置中的标识值。如果您直接从浏览器打开站点(或转到 IIS 中的虚拟目录并使用右侧的浏览选项),ApplicationPoolIdentity 即可正常工作。


0
投票
我最近开始在 Visual Studio 2013 的内部 NLog 故障日志中收到此错误。该解决方案已使用 NLog v2.0.0 多年。 上个月,我们的主日志停止工作。 为了解决这个问题,我通过 Nuget 将 NLog 更新到最新版本(v3.1.0)。 安全异常现已消失,所有日志消息再次出现。

此外,我后来发现了另一个安全异常,并能够按照另一个线程中的

帖子上的说明进行修复。

© www.soinside.com 2019 - 2024. All rights reserved.