0

我正在尝试SqlWebEventProvider从 Windows 服务引发一些自定义事件。这是我采取的步骤和我看到的结果。我无法弄清楚这一点。

  1. 设置 2 个healthMonitoring提供程序SqlWebEventProvider,并且SimpleMailWebEventProvider(.net 2.0 框架和 sqlwebeventprovider 基本上是默认的,带有修改的连接字符串名称)

  2. 设置都引发相同事件类型的网站和 Windows 服务

  3. 将 healthmonitoring 元素从全局 web.config 移动到 machine.config(因此 windows 服务可以获取配置)..(healthmonitoring 默认值位于全局 web.config 中,因此它们不能从 windows 服务继承,所以这就是为什么我不得不将默认值移到机器上)

这是我所做的测试

为了测试这个场景,我从网站上向两个提供商提出了一个事件,它运行良好。然后在 Windows 服务中,我向两者都提出了事件,它只对SimpleMailWebEventProvider. 我确保连接字符串正确SqlWebEventProvider(它们都从 machine.config 获取 conn 字符串)有效。

我将整个HealthMonitoring元素从 web.config 复制到 Windows 服务配置文件,仍然得到相同的行为。

我重新启动服务,卸载它重新安装它......仍然,同样的行为。

这是我确定的

  • 提供者没有任何问题,两者都可以从网站上运行。
  • 网站和 Web 服务可以以相同的方式从 machine.config 继承
  • 连接字符串正确
  • 事件正在引发
  • 事件可以引发到SimpleMailWebEventProviderWindows 服务和网站
  • 活动可以从网站上提升到SqlWebEventProvider唯一
4

1 回答 1

0

我发现了问题

“aspnet_WebEvent_LogEvent”需要参数“@ApplicationPath”,但未提供该参数。

于 2009-12-29T23:16:12.983 回答