XmlWriterTraceListener Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
XML ile kodlanmış veriler TextWriter olarak çıkışı izleme veya hata ayıklamayı veya örneğin FileStreambir Streamöğesine yönlendirir.
public ref class XmlWriterTraceListener : System::Diagnostics::TextWriterTraceListener
public class XmlWriterTraceListener : System.Diagnostics.TextWriterTraceListener
type XmlWriterTraceListener = class
inherit TextWriterTraceListener
Public Class XmlWriterTraceListener
Inherits TextWriterTraceListener
- Devralma
Örnekler
Aşağıdaki kod örneği, hem kaçış hem de kaçışsız verileri dosya günlüklerine yazmak için sınıfının kullanımını XmlWriterTraceListener gösterir.
using System;
using System.IO;
using System.Xml;
using System.Xml.XPath;
using System.Diagnostics;
class testClass
{
static void Main()
{
File.Delete("NotEscaped.xml");
TraceSource ts = new TraceSource("TestSource");
ts.Listeners.Add(new XmlWriterTraceListener("NotEscaped.xml"));
ts.Switch.Level = SourceLevels.All;
string testString = "<Test><InnerElement Val=\"1\" /><InnerElement Val=\"Data\"/><AnotherElement>11</AnotherElement></Test>";
XmlTextReader myXml = new XmlTextReader(new StringReader(testString));
XPathDocument xDoc = new XPathDocument(myXml);
XPathNavigator myNav = xDoc.CreateNavigator();
ts.TraceData(TraceEventType.Error, 38, myNav);
ts.Flush();
ts.Close();
File.Delete("Escaped.xml");
TraceSource ts2 = new TraceSource("TestSource2");
ts2.Listeners.Add(new XmlWriterTraceListener("Escaped.xml"));
ts2.Switch.Level = SourceLevels.All;
ts2.TraceData(TraceEventType.Error, 38, testString);
ts2.Flush();
ts2.Close();
}
}
Imports System.IO
Imports System.Xml
Imports System.Xml.XPath
Imports System.Diagnostics
Class testClass
Shared Sub Main()
File.Delete("NotEscaped.xml")
Dim ts As New TraceSource("TestSource")
ts.Listeners.Add(New XmlWriterTraceListener("NotEscaped.xml"))
ts.Switch.Level = SourceLevels.All
Dim testString As String = "<Test><InnerElement Val=""1"" /><InnerElement Val=""Data""/><AnotherElement>11</AnotherElement></Test>"
Dim myXml As New XmlTextReader(New StringReader(testString))
Dim xDoc As New XPathDocument(myXml)
Dim myNav As XPathNavigator = xDoc.CreateNavigator()
ts.TraceData(TraceEventType.Error, 38, myNav)
ts.Flush()
ts.Close()
File.Delete("Escaped.xml")
Dim ts2 As New TraceSource("TestSource2")
ts2.Listeners.Add(New XmlWriterTraceListener("Escaped.xml"))
ts2.Switch.Level = SourceLevels.All
ts2.TraceData(TraceEventType.Error, 38, testString)
ts2.Flush()
ts2.Close()
End Sub
End Class
Açıklamalar
Not
Sınıfının bir örneğini XmlWriterTraceListener oluşturmak için yönetilmeyen kod izniniz olmalıdır.
sınıfı, XmlWriterTraceListener izleme ve hata ayıklama bilgilerini XML ile kodlanmış bir metin akışına dönüştürür. XML çıkışının açıklaması, izleyen tablolarda gösterilir. XML çıkışını görüntülemek için Hizmet İzleme GörüntüleyiciSi Aracı'nı (SvcTraceViewer.exe) kullanabilirsiniz.
Kodunuzda bir XmlWriterTraceListener oluşturabilirsiniz. Alternatif olarak, .NET Framework uygulamalar için bir'i uygulama yapılandırma dosyası aracılığıyla etkinleştirebilir veya devre dışı bırakabilir XmlWriterTraceListener ve ardından uygulamanızda yapılandırılan XmlWriterTraceListener öğesini kullanabilirsiniz. yapılandırmak XmlWriterTraceListeneriçin, uygulamanızın adına karşılık gelen yapılandırma dosyasını düzenleyin. Bu dosyada, dinleyici ekleyebilir veya kaldırabilir, dinleyicinin özelliklerini ayarlayabilir veya dinleyicileri kaldırabilirsiniz. Yapılandırma dosyası aşağıdaki örnekte olduğu gibi biçimlendirilmelidir.
<configuration>
<system.diagnostics>
<trace autoflush="false" indentsize="4">
<listeners>
<add name="xmlListener"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData="xmlOutput.xml"
traceOutputOptions="ProcessId, DateTime" />
<remove name="Default" />
</listeners>
</trace>
</system.diagnostics>
</configuration>
XmlWriterTraceListener sınıfı, özelliğini temel sınıfından TraceListenerdevralırFilter. Filter özelliği, dinleyicide ek bir izleme çıkışı filtreleme düzeyi sağlar. Bir filtre varsa, izleme dinleyicisinin yöntemleri, Trace
izlemenin yayılıp yayılmayacağını belirlemek için filtrenin yöntemini çağırır ShouldTrace .
Not
Kullanımda olan veya kullanılamayan bir dosyaya yazma girişiminde bulunulduysa, dosya adına otomatik olarak bir GUID ön eki eklenir.
Not
Dinleyici yöntemleri, , Traceve TraceSource sınıflarının yöntemleri Debugtarafından çağrılmaya yöneliktir. Dinleyici yöntemlerinin doğrudan uygulama kodundan çağrılması amaçlanmamıştır. XmlWriterTraceListener Dinleyici öncelikli olarak sınıfı tarafından TraceSource kullanılmak üzere tasarlanmıştır. Write ve yöntemleri ve DebugWriteLine sınıfları tarafından Trace çağrılabilir ve için değer sağlayıp sağlamayan XML öğeleri TraceDebug için varsayılan değerler sağlanır.
Aşağıdaki tabloda XML çıkışının öğeleri ve öznitelikleri açıklanmaktadır.
Öğe | Öznitelikler | Çıktı | Notlar |
---|---|---|---|
CallStack |
Hiçbiri | Özelliğinde bayrağının CallstackTraceOutputOptions varlığına bağlıdır. | veya < gibi > özel karakterler kaçış dizileriyle değiştirilir. Ardından gelen kaçış karakteri çeviri tablosuna bakın. |
Computer |
Hiçbiri | Her zaman varsın. | özelliğinin MachineName değeri. |
Correlation |
ActivityID |
Her zaman sun | Belirtilmezse, varsayılan değer boş bir GUID'dir. |
RelatedActivityID |
İzleme yöntemi çağrısında parametresinin relatedActivityId varlığına bağlıdır. |
relatedActivityId yönteminin TraceTransfer parametresi. |
|
DataItem |
Hiçbiri | yönteminin data parametresine TraceData bağlıdır. |
Bu öğe bir öğe dizisi veya bir öğe içerebilir, bu nedenle değerler öğenin altında TraceData bir düğüm kümesi DataItem olarak yazılır.Veri çıkışı, geçirilen veri nesnelerinin yöntemini kullanır ToString . |
EventID |
Hiçbiri | Her zaman varsın. | Parametre girişi (id ). |
Execution |
ProcessName |
Her zaman varsın. | uygulamasından TraceEventCache. |
ProcessID |
Her zaman varsın. | uygulamasından TraceEventCache. | |
ThreadID |
Her zaman varsın. | uygulamasından TraceEventCache. | |
Level |
Hiçbiri | Her zaman varsın. | Parametre girişi (sayısal değeri eventType ). 255'ten büyük parametre değerleri 255 olarak çıkıştır. |
LogicalOperationStack |
Hiçbiri | Özelliğinde bayrağının LogicalOperationStackTraceOutputOptions varlığına bağlıdır. | Birden fazla mantıksal işlem olabileceğinden, değerler öğesinin altına LogicalOperationStack düğüm olarak LogicalOperation yazılır. |
Message |
Hiçbiri | İzleme yöntemi çağrısında bir iletinin varlığına bağlıdır. | Bu öğe, biçimlendirme bağımsız değişkenleri sağlanıyorsa biçimlendirilmiş bir iletidir. |
Source |
Name |
Her zaman varsın. | Parametre girişi. |
SubType |
Name |
Her zaman varsın. | Parametre girişi. |
TimeCreated |
SystemTime |
Her zaman varsın. | içinde TraceEventCacheyoksa, varsayılan geçerli saattir. |
TimeStamp |
Hiçbiri | Özelliğinde bayrağının TimestampTraceOutputOptions varlığına bağlıdır. | uygulamasından TraceEventCache. |
Type |
Hiçbiri | Her zaman varsın. | Her zaman 3 değeridir. |
Aşağıdaki tabloda, XML çıkışında kaçış karakteri olan karakterler gösterilmektedir. Kaçış, yöntemin parametresine TraceData geçirilen data
nesne bir XPathNavigator nesneyse kaçış olmayan öğesi dışında DataItem
tüm öğelerde ve özniteliklerde gerçekleşir. veri nesnesi MoveToRoot için bir XPathNavigator kullanılırsa, yöntemi çağrılır ve kök düğümün tamamı ayarlanmamış veriler olarak izlenmiş olur.
Kaçan karakter | Değer |
---|---|
& | & |
< | < |
> | > |
" | " |
|' | |
0xD | |
0xA |
Oluşturucular
XmlWriterTraceListener(Stream) |
Hata ayıklama ve izleme çıkışının XmlWriterTraceListener alıcısı olarak belirtilen akışı kullanarak sınıfının yeni bir örneğini başlatır. |
XmlWriterTraceListener(Stream, String) |
Hata ayıklama ve izleme çıkışının XmlWriterTraceListener alıcısı olarak belirtilen akışı kullanarak belirtilen adla sınıfının yeni bir örneğini başlatır. |
XmlWriterTraceListener(String) |
Hata ayıklama ve izleme çıkışının XmlWriterTraceListener alıcısı olarak belirtilen dosyayı kullanarak sınıfının yeni bir örneğini başlatır. |
XmlWriterTraceListener(String, String) |
Hata ayıklama ve izleme çıkışının XmlWriterTraceListener alıcısı olarak belirtilen dosyayı kullanarak belirtilen adla sınıfının yeni bir örneğini başlatır. |
XmlWriterTraceListener(TextWriter) |
Hata ayıklama ve izleme çıkışının XmlWriterTraceListener alıcısı olarak belirtilen yazıcıyı kullanarak sınıfının yeni bir örneğini başlatır. |
XmlWriterTraceListener(TextWriter, String) |
Hata ayıklama ve izleme çıkışının XmlWriterTraceListener alıcısı olarak belirtilen yazıcıyı kullanarak belirtilen adla sınıfının yeni bir örneğini başlatır. |
Özellikler
Attributes |
Uygulama yapılandırma dosyasında tanımlanan özel izleme dinleyicisi özniteliklerini alır. (Devralındığı yer: TraceListener) |
Filter |
İzleme dinleyicisi için izleme filtresini alır veya ayarlar. (Devralındığı yer: TraceListener) |
IndentLevel |
Girinti düzeyini alır veya ayarlar. (Devralındığı yer: TraceListener) |
IndentSize |
Girintideki boşlukların sayısını alır veya ayarlar. (Devralındığı yer: TraceListener) |
IsThreadSafe |
İzleme dinleyicisinin iş parçacığı güvenli olup olmadığını belirten bir değer alır. (Devralındığı yer: TraceListener) |
Name |
Bu TraceListeneriçin bir ad alır veya ayarlar. (Devralındığı yer: TraceListener) |
NeedIndent |
Çıkışı girintileyip girintilemeyeceğini belirten bir değer alır veya ayarlar. (Devralındığı yer: TraceListener) |
TraceOutputOptions |
İzleme çıkışı seçeneklerini alır veya ayarlar. (Devralındığı yer: TraceListener) |
Writer |
İzleme veya hata ayıklama çıkışını alan metin yazıcısını alır veya ayarlar. (Devralındığı yer: TextWriterTraceListener) |
Yöntemler
Close() |
Writer Artık izleme veya hata ayıklama çıkışı almaması için bu dinleyicinin öğesini kapatır. |
CreateObjRef(Type) |
Uzak bir nesneyle iletişim kurmak için kullanılan bir ara sunucu oluşturmak için gereken tüm ilgili bilgileri içeren bir nesne oluşturur. (Devralındığı yer: MarshalByRefObject) |
Dispose() |
TraceListener tarafından kullanılan tüm kaynakları serbest bırakır. (Devralındığı yer: TraceListener) |
Dispose(Boolean) |
Bu TextWriterTraceListener nesneyi atar. (Devralındığı yer: TextWriterTraceListener) |
Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
Fail(String) |
sınıfını uygularken oluşturduğunuz dinleyiciye bir hata iletisi yayar TraceListener . (Devralındığı yer: TraceListener) |
Fail(String, String) |
Bir hata iletisi ve ayrıntılı bir hata iletisi dahil olmak üzere izleme bilgilerini dosyaya veya akışa yazar. |
Flush() |
için çıkış arabelleği temizler Writer. (Devralındığı yer: TextWriterTraceListener) |
GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
GetLifetimeService() |
Geçersiz.
Bu örnek için yaşam süresi ilkesini denetleen geçerli yaşam süresi hizmet nesnesini alır. (Devralındığı yer: MarshalByRefObject) |
GetSupportedAttributes() |
İzleme dinleyicisi tarafından desteklenen özel öznitelikleri alır. (Devralındığı yer: TraceListener) |
GetType() |
Type Geçerli örneğini alır. (Devralındığı yer: Object) |
InitializeLifetimeService() |
Geçersiz.
Bu örneğin yaşam süresi ilkesini denetlemek için bir yaşam süresi hizmet nesnesi alır. (Devralındığı yer: MarshalByRefObject) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
MemberwiseClone(Boolean) |
Geçerli MarshalByRefObject nesnenin sığ bir kopyasını oluşturur. (Devralındığı yer: MarshalByRefObject) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
TraceData(TraceEventCache, String, TraceEventType, Int32, Object) |
İzleme bilgilerini, veri nesnesini ve olay bilgilerini dosyaya veya akışa yazar. |
TraceData(TraceEventCache, String, TraceEventType, Int32, Object[]) |
İzleme bilgilerini, veri nesnelerini ve olay bilgilerini dosyaya veya akışa yazar. |
TraceEvent(TraceEventCache, String, TraceEventType, Int32) |
dinleyiciye özgü çıkışa izleme ve olay bilgileri yazar. (Devralındığı yer: TraceListener) |
TraceEvent(TraceEventCache, String, TraceEventType, Int32, String) |
İzleme bilgilerini, bir iletiyi ve olay bilgilerini dosyaya veya akışa yazar. |
TraceEvent(TraceEventCache, String, TraceEventType, Int32, String, Object[]) |
İzleme bilgilerini, biçimlendirilmiş bir iletiyi ve olay bilgilerini dosyaya veya akışa yazar. |
TraceTransfer(TraceEventCache, String, Int32, String, Guid) |
İlgili etkinliğin kimliği, bir ileti ve olay bilgileri dahil olmak üzere izleme bilgilerini dosyaya veya akışa yazar. |
Write(Object) |
nesnesinin ToString() yönteminin değerini sınıfını uygularken oluşturduğunuz dinleyiciye TraceListener yazar. (Devralındığı yer: TraceListener) |
Write(Object, String) |
Sınıfını uygularken oluşturduğunuz dinleyiciye bir kategori adı ve nesnenin ToString() yönteminin TraceListener değerini yazar. (Devralındığı yer: TraceListener) |
Write(String) |
Dosyaya veya akışa ek bağlam bilgisi olmadan ayrıntılı bir ileti yazar. |
Write(String, String) |
Sınıfını uygularken TraceListener oluşturduğunuz dinleyiciye bir kategori adı ve ileti yazar. (Devralındığı yer: TraceListener) |
WriteIndent() |
Bu sınıfı uygularken oluşturduğunuz dinleyiciye girintiyi yazar ve özelliğini olarak |
WriteLine(Object) |
nesnesinin ToString() yönteminin değerini sınıfını uygularken oluşturduğunuz dinleyiciye TraceListener yazar ve ardından bir satır sonlandırıcısı yazar. (Devralındığı yer: TraceListener) |
WriteLine(Object, String) |
Sınıfını uygularken oluşturduğunuz dinleyiciye bir kategori adı ve nesnenin ToString() yönteminin TraceListener değerini yazar ve ardından bir satır sonlandırıcısı yazar. (Devralındığı yer: TraceListener) |
WriteLine(String) |
Dosyaya veya akışa ek bağlam bilgisi ve ardından geçerli satır sonlandırıcısı olmadan ayrıntılı bir ileti yazar. |
WriteLine(String, String) |
Sınıfı uygularken TraceListener oluşturduğunuz dinleyiciye bir kategori adı ve ileti yazar ve ardından bir satır sonlandırıcısı yazar. (Devralındığı yer: TraceListener) |