我该如何允许 ASP.NET 帐户写入 Windows 事件日志?
我正在尝试在事件日志中创建一个新的“源”,但它没有播放:(
我想我可以在注册表中手动创建日志,但这似乎很麻烦。我宁愿让代码来做这件事。
如果我确实必须手动执行此操作,那么如何在注册表中创建一个新的“目录”...
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\EventLog
答案1
这个问题可能更适合 StackOverflow。不过,我还是会给出我的看法。
由于创建事件源只需在特定机器上发生一次,因此您实际上不应该编写应用程序代码(尤其是已经以有限权限运行的 Web 应用程序)以按需创建该源。仅为了容纳一次调用而授予应用程序生命周期的额外权限是愚蠢的。
相反,事件源创建应作为应用程序安装程序的一部分进行,或者如果没有安装程序,则作为部署说明中的单独手动步骤进行。使用手动步骤并不一定意味着手动编辑注册表。它可以是一个单独的小型控制台应用程序,其唯一目的是设置事件源。
您的应用只需担心如何写入日志。一定要保留检查源是否存在的代码。但如果找不到,请优雅地降级并找到另一种方式通知网站管理员,例如一个简单的错误页面。