Nasıl yapılır: İz Dinleyicileri Oluşturma ve Başlatma

ve System.Diagnostics.Trace sınıfları, System.Diagnostics.Debug bu iletileri alan ve işleyen dinleyiciler adlı nesnelere ileti gönderir. bu dinleyicilerden biri olan System.Diagnostics.DefaultTraceListener, izleme veya hata ayıklama etkinleştirildiğinde otomatik olarak oluşturulur ve başlatılır. Herhangi bir ek kaynağa yönlendirilmesi veya Debug çıkışın oluşturulmasını istiyorsanızTrace, ek izleme dinleyicileri oluşturup başlatmanız gerekir.

Oluşturduğunuz dinleyiciler uygulamanızın gereksinimlerini yansıtmalıdır. Örneğin, tüm izleme çıktılarının metin kaydını istiyorsanız, etkinleştirildiğinde tüm çıkışı yeni bir metin dosyasına yazan bir dinleyici oluşturun TextWriterTraceListener . Öte yandan, yalnızca uygulama yürütme sırasında çıkışı görüntülemek istiyorsanız, tüm çıkışı bir konsol penceresine yönlendiren bir ConsoleTraceListener dinleyici oluşturun. , EventLogTraceListener izleme çıkışını bir olay günlüğüne yönlendirebilir. Daha fazla bilgi için bkz . İzleme Dinleyicileri.

Uygulama yapılandırma dosyasında veya kodunuzda izleme dinleyicileri oluşturabilirsiniz. Kodunuzu değiştirmek zorunda kalmadan izleme dinleyicileri eklemenize, değiştirmenize veya kaldırmanıza izin verdikleri için uygulama yapılandırma dosyalarının kullanılmasını öneririz.

Yapılandırma dosyası kullanarak izleme dinleyicisi oluşturmak ve kullanmak için

  1. Uygulama yapılandırma dosyanızda izleme dinleyicinizi bildirin. Oluşturduğunuz dinleyici başka nesneler gerektiriyorsa, bunları da bildirin. Aşağıdaki örnekte, adlı myListener ve metin dosyasına TextWriterOutput.logyazan bir dinleyicinin nasıl oluşturulacağı gösterilmektedir.

    <configuration>
      <system.diagnostics>
        <trace autoflush="false" indentsize="4">
          <listeners>
            <add name="myListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="TextWriterOutput.log" />
            <remove name="Default" />
          </listeners>
        </trace>
      </system.diagnostics>
    </configuration>
    
  2. Trace İzleme dinleyicilerine ileti yazmak için kodunuzda sınıfını kullanın.

    Trace.TraceInformation("Test message.")
    ' You must close or flush the trace to empty the output buffer.
    Trace.Flush()
    
    Trace.TraceInformation("Test message.");
    // You must close or flush the trace to empty the output buffer.
    Trace.Flush();
    

Kodda izleme dinleyicisi oluşturmak ve kullanmak için

  • İzleme dinleyicisini koleksiyona Listeners ekleyin ve dinleyicilere izleme bilgileri gönderin.

    Trace.Listeners.Add(New TextWriterTraceListener("TextWriterOutput.log", "myListener"))
    Trace.TraceInformation("Test message.")
    ' You must close or flush the trace to empty the output buffer.
    Trace.Flush()
    
    Trace.Listeners.Add(new TextWriterTraceListener("TextWriterOutput.log", "myListener"));
    Trace.TraceInformation("Test message.");
    // You must close or flush the trace to empty the output buffer.
    Trace.Flush();
    

    - veya -

  • Dinleyicinizin izleme çıkışı almasını istemiyorsanız, bunu koleksiyona eklemeyin Listeners . Dinleyicinin kendi çıkış yöntemlerini çağırarak koleksiyondan Listeners bağımsız bir dinleyici aracılığıyla çıkış yayabilirsiniz. Aşağıdaki örnek, koleksiyonda Listeners olmayan bir dinleyiciye nasıl satır yazıldığını gösterir.

    Dim myListener As New TextWriterTraceListener("TextWriterOutput.log", "myListener")
    myListener.WriteLine("Test message.")
    ' You must close or flush the trace listener to empty the output buffer.
    myListener.Flush()
    
    TextWriterTraceListener myListener = new TextWriterTraceListener("TextWriterOutput.log", "myListener");
    myListener.WriteLine("Test message.");
    // You must close or flush the trace listener to empty the output buffer.
    myListener.Flush();
    

Ayrıca bkz.