مشاركة عبر


كيفية القيام بما يلي: تسجيل معلومات حول الخدمات

افتراضياً، يكون لكافة مشاريع الخدمة Windows القدرة على التعامل مع يسجل أحداث تطبيق وقم بكتابة المعلومات واستثناءات إليه. تقوم استخدم AutoLogخاصية للإشارة إلى ما إذا كنت تريد هذه الوظيفة في تطبيق الخاص بك. بشكل افتراضي، تسجيل هو قيد التشغيل لأي الخدمة تقوم بإنشاء قالب مشروع الخدمة Windows. يمكنك استخدام أحد أشكال ثابتة EventLogفئة لكتابة معلومات الخدمة يسجل دون الحاجة إلى إنشاء مثيل من EventLogمكوّن أو التسجيل يدوياً المصدر.

مثبت للخدمة الخاص بك تلقائياً تسجيل كل خدمة في مشروع الخاص بك كمصدر صحيح للأحداث مع التطبيق يسجل على الكمبيوتر الموقع الخدمة مثبت، عند تشغيل يسجل ging. الخدمة بتسجيل المعلومات في كل مرة تقوم الخدمة هو بدأ توقف، بشكل مؤقت، استئناف، تثبيت أو إزالة تثبيته. تقوم أيضا بتسجيل أي الأخطاء التي تحدث. لا تحتاج إلى كتابة أية تعليمة برمجية لكتابة الإدخالات يسجل عند استخدام سلوك الافتراضي؛ الخدمة معالجة هذا نيابة عنك تلقائياً.

إذا كنت ترغب في الكتابة إلى يسجل أحداث مختلفة عن يسجل التطبيقات، يجب عليك تعيين AutoLogخاصية إلى false، قم بإنشاء يسجل الأحداث المخصصة الخاصة بك داخل خدماتك تعليمات برمجية، وقم بتسجيل الخدمة الخاصة بك كمصدر صحيح إدخالات لتلك يسجل. يجب أن ثم كتابة تعليمات برمجية إلى إدخالات السجل إلى السجل عند إجراء أنت في terested في يحدث.

ملاحظة

إذا قمت باستخدام يسجل أحداث cusإلىm وتكوين تطبيق الخدمة إلى الكتابة إلى، يجب عدم محاولة إلى الوصول إلى يسجل الأحداث قبل تعيين للالخدمة ServiceNameخاصية في تعليمات برمجية الخاصة بك. يسجل الأحداث بحاجة إلى القيمة هذه خاصية لتسجيل الخدمة الخاصة بك كـ مصدر صحيح للأحداث.

إلى تمكين تسجيل الأحداث الافتراضي للخدمة الخاص بك

  • بتعيين AutoLogخاصية ل إلى مكوّن الخاص بك true.

    ملاحظة

    بشكل افتراضي، هذه خاصية true تم تعيينها لـ . لا تحتاج إلى تعيين ذلك بوضوح إلا إذا كنت تقوم بإنشاء معالجة أكثر تعقيداً، مثل جاري الآن التقييم شرط ومن ثم تعيين AutoLogخاصية استناداً إلى نتيجة لهذا الشرط.

إلى تعطيل تسجيل الأحداث للخدمة الخاص بك

  • بتعيين AutoLogخاصية ل إلى مكوّن الخاص بك false.

    Me.AutoLog = False
    
            this.AutoLog = false;
    

لتعيين لأعلى تسجيل إلى يسجل مخصص

  1. قم بتعيين AutoLogإلى خاصية false.

    ملاحظة

    يجب عليك التعيين AutoLogإلى خطأ حتى تتمكن من استخدام يسجل. مخصص

  2. قم بإعداد نسخة عن EventLogمكوّن في تطبيق الخدمة Windows الخاص بك.

  3. إنشاء يسجل cusإلىm بواسطة استدعاء CreateEventSourceالأسلوب وتحديد ملف السلسلة المصدر واسم السجل الذي تريده إلى إنشاء.

  4. بتعيين Sourceخاصية تشغيل EventLogمثيل مكون إلى سلسلة المصدر قمت بإنشائه في الخطوة 3.

  5. كتابة الإدخالات الخاصة بك بواسطة الوصول إلى WriteEntryالأسلوب تشغيل EventLogمثيل مكوّن.

    يلي تعليمات برمجية يوضح كيفية إعداد يسجل بسجل مخصص.

    ملاحظة

    في ترتيب هو المثال تعليمات برمجية، نسخة عن EventLogمكونات هو المسمى eventLog1(EventLog1in Vهوual أساسى). إذا قمت بإنشاء مثيل مع اسماً آخر في الخطوة 2، تغيير تعليمات برمجية وفقا لذلك.

    Public Sub New()
      ' Turn off autologging
      Me.AutoLog = False
      ' Create a new event source and specify a log name that
      ' does not exist to create a custom log
      If Not System.Diagnostics.EventLog.SourceExists("MySource") Then
          System.Diagnostics.EventLog.CreateEventSource("MySource",
          "MyLog")
      End If
      ' Configure the event log instance to use this source name
      EventLog1.Source = "MySource"
    End Sub
    
    
    ...
    
    
    
    Protected Overrides Sub OnStart(ByVal args() As String)
      ' Write an entry to the log you've created.
      EventLog1.WriteEntry("In Onstart.")
    End Sub
    
        public UserService2()
        {
            // Turn off autologging
            this.AutoLog = false;
            // create an event source, specifying the name of a log that
            // does not currently exist to create a new, custom log
            if (!System.Diagnostics.EventLog.SourceExists("MySource")) 
            {        
                    System.Diagnostics.EventLog.CreateEventSource(
                        "MySource","MyLog");
            }
            // configure the event log instance to use this source name
            eventLog1.Source = "MySource";
        }
    
    
    ...
    
    
    
        protected override void OnStart(string[] args)
        {
            // write an entry to the log
            eventLog1.WriteEntry("In OnStart.");
        }
    

راجع أيضًا:

المبادئ

مقدمة إلى تطبيقات الخدمة Windows