sqlwebeventprovider مع خدمة Windows
-
21-09-2019 - |
سؤال
أحاول رفع بعض الأحداث المخصصة إلى أ SqlWebEventProvider
من خدمة Windows. فيما يلي الخطوات التي اتخذتها والنتائج التي رأيتها. لا أستطيع معرفة هذا واحد.
الإعداد 2
healthMonitoring
مقدمي الخدماتSqlWebEventProvider
, ، وSimpleMailWebEventProvider
(كلا. NET 2.0 Framework ، و SQLWEBeventProvider هو أساسا اسم سلسلة الاتصال الافتراضي مع)إعداد موقع الويب وخدمة Windows التي ترفع نفس نوع الحدث
تم نقل عنصر HealthMonitoring من Global Web.config إلى Machine.config (حتى تتمكن خدمة Windows من التقاط التكوين) .. (تقع الافتراضيات HealthMonitoring في Web.Config Global ، لذلك لن تكون وراثية من Windows Services ، ولهذا السبب اضطررت إلى نقل الإعدادات الافتراضية إلى الجهاز)
هذا ما فعلته لاختبار
لاختبار هذا المشهد ، قمت برفع حدث من موقع الويب إلى كل من مقدمي الخدمات وعمل بشكل جيد. ثم في خدمة Windows ، قمت برفع الأحداث إلى كليهما ولا يعمل إلا إلى SimpleMailWebEventProvider.
لقد تأكدت من أن سلاسل الاتصال كانت صحيحة ل SqlWebEventProvider
(كلاهما يحصل على سلسلة conn من machine.config).
لقد نسخت بالكامل HealthMonitoring
عنصر من web.config إلى ملف تكوين خدمة Windows ولا يزال يحصل على نفس السلوك.
قمت بإعادة تشغيل الخدمة ، وقمت بإلغاء تثبيتها أعيد تثبيتها ... لا يزال ، نفس السلوك.
هذا ما أعرفه بالتأكيد
- لا حرج في مقدمي الخدمات ، سيعمل كلاهما من موقع الويب.
- يمكن أن ترث مواقع الويب وخدمات الويب من Machine.config بنفس الطريقة
- سلسلة الاتصال صحيحة
- الأحداث تثير
- يمكن أن ترفع الأحداث إلى
SimpleMailWebEventProvider
لكل من خدمة Windows وموقع الويب - يمكن أن ترفع الأحداث إلى
SqlWebEventProvider
فقط من الموقع
المحلول
لقد وجدت القضية
"ASPNET_WEBEVENT_LOGEVENT" يتوقع المعلمة "applicationPath" ، والتي لم يتم توفيرها.