FileLogTraceListener Třída

Definice

Poskytuje jednoduchý naslouchací proces, který směruje výstup protokolování do souboru.

public ref class FileLogTraceListener : System::Diagnostics::TraceListener
[System.Runtime.InteropServices.ComVisible(false)]
public class FileLogTraceListener : System.Diagnostics.TraceListener
[<System.Runtime.InteropServices.ComVisible(false)>]
type FileLogTraceListener = class
    inherit TraceListener
Public Class FileLogTraceListener
Inherits TraceListener
Dědičnost
FileLogTraceListener
Atributy

Poznámky

Třída FileLogTraceListener poskytuje funkce automatizované údržby pro archivaci souborů protokolu podle potřeby, a to každý den nebo pro jednotlivé aplikace. Tato funkce automatické archivace pomáhá snížit odpovědnost vývojářů a správců za údržbu.

Do kolekcí nebo lze přidat instanci objektu FileLogTraceListenerDebug.Listeners nebo Trace.Listeners a přesměrovat tak výstup z protokolování do textového souboru. Instance této třídy lze také přidat do My.Application.Log nebo My.Log (pro webové aplikace) v aplikacích jazyka Visual Basic. Další informace najdete v tématu Návod: Změna místa, kam My.Application.Log zapisuje informace.

Hlavní funkce této třídy jsou:

  1. Funkce archivace. Soubory protokolu vygenerované touto třídou jsou pojmenovány podle základního názvu a data spolu s číslem pro odlišení souboru protokolu od po sobě jdoucích verzí protokolu. Nové soubory protokolů se vytvářejí podle potřeby.

    Explicitní forma názvu souboru je baseName[-dateStamp][-version].log, kde:

    • Část baseName je základní název protokolu určený BaseFileName vlastností.

    • Část dateStamp má formát "RRRR-MM-DD" a zobrazí se, když LogFileCreationSchedule je Daily nebo Weekly.

    • Pokud je se stejným baseName souborem protokolu potřeba více než jeden soubor protokolu a dateStamp, version přidá se k názvu souboru část, kladná Integer.

  2. Více instancí tříd. Pokud instance FileLogTraceListener třídy zapisuje do souboru, který se používá:

    • Třída sdílí soubor, pokud ho FileLogTraceListener používá jiná instance třídy ve stejném procesu.

    • Třída vytvoří nový soubor protokolu pomocí dalšího dostupného názvu, pokud je soubor používán jiným procesem.

  3. Bezpečnost vláken. Třída FileLogTraceListener je bezpečná pro přístup z více vláken. To vám umožní bezpečně zapisovat zprávy do protokolu z více vláken bez použití zámků.

Umístění souboru protokolu

  • Vlastnost Location přebírá LogFileLocation výčet k určení jednoho z typických adresářů pro zápis souboru protokolu do.

  • Pokud chcete protokol zapsat do jiného umístění, nastavte CustomLocation vlastnost na toto umístění.

Název souboru protokolu

  • Základní název souboru protokolu je určen BaseFileName vlastností .

  • Aktuální název souboru protokolu lze načíst z FullLogFileName vlastnosti . Je odvozen z několika dalších vlastností a aktuálního stavu protokolů v systému souborů.

Údržba protokolů

  • Minimální frekvence vytváření nových souborů protokolu je určena LogFileCreationSchedule vlastností . Pokud je Daily hodnota nebo Weekly, vytvoří se nový soubor protokolu alespoň jednou denně nebo týdně a do FullLogFileName názvu se začlení razítko data.

  • Maximální velikost souboru protokolu (v bajtech) je určena MaxFileSize vlastností. Pokud velikost souboru protokolu překročí tuto velikost, další zprávy zapsané do protokolu se zahodí a v závislosti na DiskSpaceExhaustedBehavior vlastnosti dojde k výjimce.

  • Vlastnost ReserveDiskSpace určuje, kolik volného místa (v bajtech) musí být k dispozici. To pomáhá zajistit, že FileLogTraceListener třída nebude využívat veškeré dostupné místo na disku. DiskSpaceExhaustedBehavior Vlastnost slouží k určení chování zápisu protokolu, pokud je méně než ReserveDiskSpace volných bajtů.

Nastavení výstupu souboru protokolu

  • Vlastnost AutoFlush určuje, jestli se má podkladový datový proud automaticky vyprázdnit po každém zápisu do souboru protokolu.

  • Vlastnost Append určuje, zda se mají zprávy přidávat k aktuálnímu souboru protokolu, pokud je to povoleno, nebo je zapisovat do nového souboru protokolu.

  • Vlastnost Delimiter určuje řetězec, který se má použít k oddělení polí ve zprávě protokolu.

  • Vlastnost Encoding určuje kódování, které se má použít při vytváření nového souboru protokolu.

Výstup souboru protokolu

  • Metody TraceData a TraceEvent zapisuje zprávy do souboru protokolu. Tyto metody zkontrolují LogFileCreationSchedule vlastnost spolu se všemi existujícími protokoly se stejným základním názvem a určí, jestli se má vytvořit nový protokol.

  • Metoda Flush vyprázdní všechny zprávy aktuálně ve výstupní vyrovnávací paměti do souboru protokolu.

  • Metoda Close zavře soubor protokolu, aby ho mohly používat jiné procesy.

Povolení výstupu

Pokud chcete používat naslouchací proces trasování, musíte povolit trasování nebo ladění. Následující syntaxe je specifická pro kompilátor. Pokud používáte jiné kompilátory než C# nebo Visual Basic, projděte si dokumentaci k kompilátoru.

  • Pokud chcete povolit ladění v jazyce C#, přidejte /d:DEBUG příznak do příkazového řádku kompilátoru při kompilaci kódu nebo můžete přidat #define DEBUG na začátek souboru. V jazyce Visual Basic přidejte /d:DEBUG=True příznak do příkazového řádku kompilátoru.

  • Pokud chcete povolit trasování v jazyce C#, přidejte /d:TRACE příznak do příkazového řádku kompilátoru při kompilaci kódu nebo přidejte #define TRACE do horní části souboru. V jazyce Visual Basic přidejte /d:TRACE=True příznak do příkazového řádku kompilátoru.

V aplikacích .NET Framework můžete nastavit úroveň naslouchacího procesu úpravou konfiguračního souboru pro vaši aplikaci. V tomto souboru můžete přidat naslouchací proces, nastavit jeho typ a nastavit jeho parametry, odebrat naslouchací proces nebo vymazat všechny naslouchací procesy dříve nastavené aplikací. Konfigurační soubor by měl být formátovaný jako v následujícím příkladu.

<configuration>  
    <system.diagnostics>  
        <sharedListeners>  
            <add name="FileLog"  
                type="Microsoft.VisualBasic.Logging.FileLogTraceListener,   
                      Microsoft.VisualBasic, Version=8.0.0.0,   
                      Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a,   
                      processorArchitecture=MSIL"   
                initializeData="FileLogWriter"/>  
        </sharedListeners>  
    </system.diagnostics>  
</configuration>  

Aby se tento příklad spustil, musíte zadat plně kvalifikovaný název sestavení. Informace o tom, jak získat plně kvalifikovaný název sestavení, naleznete v tématu Názvy sestavení.

Konstruktory

FileLogTraceListener()

Inicializuje novou instanci FileLogTraceListener třídy s výchozím názvem.

FileLogTraceListener(String)

Inicializuje novou instanci FileLogTraceListener třídy se zadaným názvem.

Vlastnosti

Append

Určuje, zda se má výstup připojit k aktuálnímu souboru nebo ho zapsat do nového nebo existujícího souboru.

Attributes

Získá vlastní atributy trasovacího naslouchacího procesu definované v konfiguračním souboru aplikace.

(Zděděno od TraceListener)
AutoFlush

Určuje, jestli zápis do datového proudu souboru protokolu vyprázdní vyrovnávací paměť.

BaseFileName

Získá nebo nastaví základní název pro soubory protokolu, který se používá k vytvoření úplného názvu souboru protokolu.

CustomLocation

Získá nebo nastaví adresář souboru protokolu, když Location je vlastnost nastavena na Custom.

Delimiter

Získá nebo nastaví oddělovač použitý k oddělení polí v protokolu zprávy.

DiskSpaceExhaustedBehavior

Určuje, co dělat při zápisu do souboru protokolu a je k dispozici méně volného místa na disku, než určuje ReserveDiskSpace vlastnost.

Encoding

Získá nebo nastaví kódování použít při vytváření nového souboru protokolu.

Filter

Získá nebo nastaví filtr trasování pro trasovací naslouchací proces.

(Zděděno od TraceListener)
FullLogFileName

Získá aktuální úplný název souboru protokolu.

IncludeHostName

Určuje, jestli má být do výstupu zahrnut název hostitele počítače pro protokolování.

IndentLevel

Získá nebo nastaví úroveň odsazení.

(Zděděno od TraceListener)
IndentSize

Získá nebo nastaví počet mezer v odsazení.

(Zděděno od TraceListener)
IsThreadSafe

Získá hodnotu označující, zda trasovací naslouchací proces je bezpečný z více vláken.

(Zděděno od TraceListener)
Location

Získá nebo nastaví umístění pro soubory protokolu.

LogFileCreationSchedule

Určuje, které datum se má zahrnout do názvů souborů protokolu.

MaxFileSize

Získá nebo nastaví maximální povolenou velikost souboru protokolu v bajtech.

Name

Získá nebo nastaví název pro tento TraceListener.

(Zděděno od TraceListener)
NeedIndent

Získá nebo nastaví hodnotu označující, zda odsadit výstup.

(Zděděno od TraceListener)
ReserveDiskSpace

Získá nebo nastaví množství volného místa na disku v bajtech, které je nutné před zápisem zpráv do souboru protokolu.

TraceOutputOptions

Získá nebo nastaví možnosti výstupu trasování.

(Zděděno od TraceListener)

Metody

Close()

Zavře podkladový datový proud pro aktuální soubor protokolu a uvolní všechny prostředky přidružené k aktuálnímu datovému proudu.

CreateObjRef(Type)

Vytvoří objekt, který obsahuje všechny relevantní informace potřebné k vygenerování proxy používaného ke komunikaci se vzdáleným objektem.

(Zděděno od MarshalByRefObject)
Dispose()

Uvolní všechny prostředky používané nástrojem TraceListener.

(Zděděno od TraceListener)
Dispose(Boolean)

Zavře podkladový datový proud a volitelně uvolní spravované prostředky.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
Fail(String)

Vygeneruje chybovou zprávu do naslouchacího procesu, který vytvoříte při implementaci TraceListener třídy.

(Zděděno od TraceListener)
Fail(String, String)

Vygeneruje chybovou zprávu a podrobnou chybovou zprávu do naslouchacího procesu, který vytvoříte při implementaci TraceListener třídy.

(Zděděno od TraceListener)
Flush()

Vyprázdní podkladový datový proud, který zapisuje do aktuálního souboru protokolu.

GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetLifetimeService()
Zastaralé.

Načte objekt služby aktuální životnosti, který řídí zásady životnosti pro tuto instanci.

(Zděděno od MarshalByRefObject)
GetSupportedAttributes()

Získá vlastní atributy konfigurace XML podporované trasovacím naslouchacím procesem.

GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
InitializeLifetimeService()
Zastaralé.

Získá objekt služby životnosti, který řídí zásady životnosti pro tuto instanci.

(Zděděno od MarshalByRefObject)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
MemberwiseClone(Boolean)

Vytvoří mělkou kopii aktuálního MarshalByRefObject objektu.

(Zděděno od MarshalByRefObject)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)
TraceData(TraceEventCache, String, TraceEventType, Int32, Object)

Zapíše trasovací informace, datový objekt a informace o událostech do výstupního souboru nebo datového proudu.

TraceData(TraceEventCache, String, TraceEventType, Int32, Object[])

Zapíše trasovací informace, pole datových objektů a informace o událostech do výstupního souboru nebo datového proudu.

TraceEvent(TraceEventCache, String, TraceEventType, Int32)

Zapíše trasování a informace o událostech do výstupu specifického pro naslouchací proces.

(Zděděno od TraceListener)
TraceEvent(TraceEventCache, String, TraceEventType, Int32, String)

Zapíše trasovací informace, zprávu a informace o událostech do výstupního souboru nebo datového proudu.

TraceEvent(TraceEventCache, String, TraceEventType, Int32, String, Object[])

Zapíše trasovací informace, formátovanou matici objektů a informace o událostech do výstupního souboru nebo datového proudu.

TraceTransfer(TraceEventCache, String, Int32, String, Guid)

Zapíše trasovací informace, zprávu, související identitu aktivity a informace o událostech do výstupu specifického pro naslouchací proces.

(Zděděno od TraceListener)
Write(Object)

Zapíše hodnotu metody objektu ToString() do naslouchacího procesu, který vytvoříte při implementaci TraceListener třídy.

(Zděděno od TraceListener)
Write(Object, String)

Zapíše název kategorie a hodnotu metody objektu ToString() do naslouchacího procesu, který vytvoříte při implementaci TraceListener třídy.

(Zděděno od TraceListener)
Write(String)

Zapíše doslovnou zprávu na disk bez dalších kontextových informací.

Write(String, String)

Zapíše název kategorie a zprávu do naslouchacího procesu, který vytvoříte při implementaci TraceListener třídy.

(Zděděno od TraceListener)
WriteIndent()

Zapíše odsazení do naslouchacího procesu, který vytvoříte při implementaci této třídy, a resetuje NeedIndent vlastnost na false.

(Zděděno od TraceListener)
WriteLine(Object)

Zapíše hodnotu metody objektu ToString() do naslouchacího procesu, který vytvoříte při implementaci TraceListener třídy, následovaný ukončovacím znakem řádku.

(Zděděno od TraceListener)
WriteLine(Object, String)

Zapíše název kategorie a hodnotu metody objektu ToString() do naslouchacího procesu, který vytvoříte při implementaci TraceListener třídy, následovaný ukončovacím znakem řádku.

(Zděděno od TraceListener)
WriteLine(String)

Zapíše doslovnou zprávu na disk následovanou aktuálním ukončovačem řádku bez jakýchkoli dalších kontextových informací.

WriteLine(String, String)

Zapíše název kategorie a zprávu naslouchacímu procesu, který vytvoříte při implementaci TraceListener třídy, následovaný ukončovacím znakem řádku.

(Zděděno od TraceListener)

Platí pro

Viz také