سؤال

نحن نستخدم Elmah لتسجيل استثناء تطبيق الويب الذي يعمل بشكل رائع! نريد أيضا أن نعرف كيفية تخصيص Elmah لتسجيل استثناء خدمة Windows.

أنا غير مهتم باستخدام تطبيق آخر لتسجيل استثناء خدمة Windows فقط.

سيكون موضع تقدير أي مساعدة.

هل كانت مفيدة؟

المحلول

فعلت هذا سابقا. اكتشفت رمز الاستخدام عن طريق الحفر على الرغم من أن التعليمات البرمجية المصدر بدءا من errorsignal.fromcurrentcontext (). رفع (السابق)؛ طريقة.

يسجل هذا حاليا فقط إلى قاعدة البيانات (نظرا لأن هذا كل ما أحتاج إليه) ولكن مع المزيد من التحقيقات قليلا، يمكنك كتابة طريقة غلاف يقوم بتسجيل الدخول إلى أي شيء قمت بإعداده في ملف التكوين.

try
{

Elmah.SqlErrorLog ErrorLog = new Elmah.SqlErrorLog(ConfigurationManager.ConnectionStrings["Default"].ConnectionString);

ErrorLog.ApplicationName = "AppName";

ErrorLog.Log(new Elmah.Error(new Exception("example")));

}
catch (Exception ex)
{
    //catch sql error
}

في خدمتي، قمت بإجراء متغير ErrorLog كائن Singleton العام الذي تم الوصول إليه بسهولة من مشروع الخدمة.

نصائح أخرى

يمكنك استخدامها

elmah.errorlog.getdefault (null) .log (Elmah.Error (استثناء جديد ("نص الخطأ")))؛

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top