FileLogTraceListener Klass

Definition

Tillhandahåller en enkel lyssnare som dirigerar loggningsutdata till filen.

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
Arv
FileLogTraceListener
Attribut

Kommentarer

Klassen FileLogTraceListener tillhandahåller automatiserade underhållsfunktioner för att arkivera loggfiler efter behov, dagligen eller per program. Den här automatiska arkiveringsfunktionen hjälper till att minska underhållsansvaret för utvecklare och administratörer.

En instans av FileLogTraceListener kan läggas till i samlingarna Debug.Listeners eller Trace.Listeners för att omdirigera utdata från loggning till en textfil. Instanser av den här klassen kan också läggas till i My.Application.Log eller My.Log (för webbprogram) i Visual Basic program. Mer information finns i Genomgång: Ändra var my.application.log skriver information.

De viktigaste funktionerna i den här klassen är:

  1. Arkiveringsfunktioner. Loggfilerna som genereras av den här klassen namnges enligt basnamnet och datumet, tillsammans med ett tal för att skilja loggfilen från efterföljande versioner av loggen. Nya loggfiler skapas efter behov.

    Den explicita formen av filnamnet är baseName[-dateStamp][-version].log, där:

    • Delen baseName är det grundläggande loggnamnet som anges av BaseFileName egenskapen.
    • Delen dateStamp har formatet "ÅÅÅÅ-MM-DD", och det visas när LogFileCreationSchedule är Daily eller Weekly.
    • Om mer än en loggfil behövs med samma baseName och dateStamp, version läggs delen, en positiv Integer, till i filnamnet.
  2. Flera klassinstanser. Om en instans av FileLogTraceListener klassen skriver till en fil som används:

    • Klassen delar filen om den används av en annan instans av FileLogTraceListener klassen i samma process.
    • Klassen skapar en ny loggfil med nästa tillgängliga namn om filen används av en annan process.
  3. Trådsäkerhet. Klassen FileLogTraceListener är trådsäker. På så sätt kan du på ett säkert sätt skriva meddelanden till loggen från flera trådar utan att använda lås.

Log-File plats

  • Egenskapen Location tar en LogFileLocation uppräkning för att ange en av de typiska kataloger som loggfilen ska skrivas till.

  • Om du vill skriva loggen till en annan plats anger du egenskapen till den CustomLocation platsen.

Log-File namn

  • Basnamnet för loggfilen anges av BaseFileName egenskapen .
  • Det aktuella loggfilnamnet kan läsas från egenskapen FullLogFileName . Den härleds från flera andra egenskaper och det aktuella tillståndet för loggarna i filsystemet.

Loggunderhåll

  • Den minsta frekvensen för att skapa nya loggfiler bestäms av LogFileCreationSchedule egenskapen . När värdet är Daily eller Weeklyskapas en ny loggfil minst en gång varje dag eller vecka och en datumstämpel införlivas i FullLogFileName namnet.
  • Den maximala storleken (i byte) för loggfilen bestäms av MaxFileSize egenskapen . Om loggfilens storlek överskrider den här storleken ignoreras ytterligare meddelanden som skrivits till loggen och, beroende på DiskSpaceExhaustedBehavior egenskapen, genereras ett undantag.
  • Egenskapen ReserveDiskSpace avgör hur mycket ledigt utrymme (i byte) som måste vara tillgängligt. Detta säkerställer att FileLogTraceListener klassen inte förbrukar allt tillgängligt diskutrymme. Använd egenskapen DiskSpaceExhaustedBehavior för att ange beteendet för loggskrivningar när det är mindre än ReserveDiskSpace byte kostnadsfritt.

Log-File utdatainställningar

  • Egenskapen AutoFlush anger om den underliggande strömmen ska tömmas automatiskt efter varje skrivning till loggfilen.
  • Egenskapen Append anger om meddelanden ska läggas till i den aktuella loggfilen, om det tillåts eller skriva dem till en ny loggfil.
  • Egenskapen Delimiter anger vilken sträng som ska användas för att avgränsa fälten i ett loggmeddelande.
  • Egenskapen Encoding anger vilken kodning som ska användas när du skapar en ny loggfil.

Log-File utdata

  • Metoderna TraceData och TraceEvent skriver meddelanden till loggfilen. Dessa metoder kontrollerar LogFileCreationSchedule egenskapen, tillsammans med befintliga loggar med samma basnamn för att avgöra om en ny logg ska skapas.
  • Metoden Flush rensar alla meddelanden som för närvarande finns i utdatabufferten till loggfilen.
  • Metoden Close stänger loggfilen så att den kan användas av andra processer.

Aktivera utdata

Du måste aktivera spårning eller felsökning för att kunna använda en spårningslyssnare. Följande syntax är kompilatorspecifik. Om du använder andra kompilatorer än C# eller Visual Basic läser du dokumentationen för kompilatorn.

  • Om du vill aktivera felsökning i C# lägger du till /d:DEBUG flaggan på kommandoraden för kompilatorn när du kompilerar koden, eller så kan du lägga till #define DEBUG överst i filen. I Visual Basic lägger du till flaggan /d:DEBUG=True på kommandoraden för kompilatorn.
  • Om du vill aktivera spårning i C# lägger du till /d:TRACE flaggan på kommandoraden för kompilatorn när du kompilerar koden eller lägger till #define TRACE den överst i filen. I Visual Basic lägger du till flaggan /d:TRACE=True på kommandoraden för kompilatorn.

I .NET Framework-appar kan du ange lyssnarnivån genom att redigera konfigurationsfilen för ditt program. I den här filen kan du lägga till en lyssnare, ange dess typ och ange dess parametrar, ta bort en lyssnare eller rensa alla lyssnare som tidigare angetts av programmet. Konfigurationsfilen ska formateras som i följande exempel.

<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>

För att det här exemplet ska kunna köras måste du ange det fullständigt kvalificerade sammansättningsnamnet. Information om hur du hämtar det fullständigt kvalificerade sammansättningsnamnet finns i Sammansättningsnamn.

Konstruktorer

Name Description
FileLogTraceListener()

Initierar en ny instans av FileLogTraceListener klassen med standardnamnet.

FileLogTraceListener(String)

Initierar en ny instans av FileLogTraceListener klassen med det angivna namnet.

Egenskaper

Name Description
Append

Avgör om utdata ska läggas till i den aktuella filen eller skrivas till en ny eller befintlig fil.

Attributes

Hämtar attributen för anpassad spårningslyssnare som definierats i programkonfigurationsfilen.

(Ärvd från TraceListener)
AutoFlush

Anger om skrivning till loggfilsströmmen tömmer bufferten eller inte.

BaseFileName

Hämtar eller anger basnamnet för loggfilerna, som används för att skapa det fullständiga loggfilsnamnet.

CustomLocation

Hämtar eller anger loggfilkatalogen när egenskapen Location är inställd på Custom.

Delimiter

Hämtar eller anger avgränsare som används för att avgränsa fält i ett loggmeddelande.

DiskSpaceExhaustedBehavior

Avgör vad du ska göra när du skriver till loggfilen och det finns mindre ledigt diskutrymme än vad som anges av ReserveDiskSpace egenskapen.

Encoding

Hämtar eller ställer in kodningen som ska användas när du skapar en ny loggfil.

Filter

Hämtar eller anger spårningsfiltret för spårningslyssnaren.

(Ärvd från TraceListener)
FullLogFileName

Hämtar det aktuella fullständiga loggfilsnamnet.

IncludeHostName

Anger om värdnamnet för loggningsdatorn ska ingå i utdata.

IndentLevel

Hämtar eller anger indragsnivån.

(Ärvd från TraceListener)
IndentSize

Hämtar eller anger antalet blanksteg i ett indrag.

(Ärvd från TraceListener)
IsThreadSafe

Hämtar ett värde som anger om spårningslyssnaren är trådsäker.

(Ärvd från TraceListener)
Location

Hämtar eller anger platsen för loggfilerna.

LogFileCreationSchedule

Avgör vilket datum som ska inkluderas i namnen på loggfilerna.

MaxFileSize

Hämtar eller anger den maximala tillåtna storleken på loggfilen i byte.

Name

Hämtar eller anger ett namn för den här TraceListener.

(Ärvd från TraceListener)
NeedIndent

Hämtar eller anger ett värde som anger om utdata ska dras in.

(Ärvd från TraceListener)
ReserveDiskSpace

Hämtar eller anger mängden ledigt diskutrymme i byte som krävs innan meddelanden kan skrivas till loggfilen.

TraceOutputOptions

Hämtar eller anger alternativen för spårningsutdata.

(Ärvd från TraceListener)

Metoder

Name Description
Close()

Stänger den underliggande dataströmmen för den aktuella loggfilen och släpper alla resurser som är associerade med den aktuella strömmen.

CreateObjRef(Type)

Skapar ett objekt som innehåller all relevant information som krävs för att generera en proxy som används för att kommunicera med ett fjärrobjekt.

(Ärvd från MarshalByRefObject)
Dispose()

Släpper alla resurser som används av TraceListener.

(Ärvd från TraceListener)
Dispose(Boolean)

Stänger den underliggande dataströmmen och släpper eventuellt de hanterade resurserna.

Equals(Object)

Avgör om det angivna objektet är lika med det aktuella objektet.

(Ärvd från Object)
Fail(String, String)

Genererar ett felmeddelande och ett detaljerat felmeddelande till lyssnaren som du skapar när du implementerar TraceListener klassen.

(Ärvd från TraceListener)
Fail(String)

Genererar ett felmeddelande till lyssnaren som du skapar när du implementerar TraceListener klassen.

(Ärvd från TraceListener)
Flush()

Tömmer den underliggande dataströmmen som skriver till den aktuella loggfilen.

GetHashCode()

Fungerar som standard-hash-funktion.

(Ärvd från Object)
GetLifetimeService()
Föråldrad.

Hämtar det aktuella livslängdstjänstobjektet som styr livslängdsprincipen för den här instansen.

(Ärvd från MarshalByRefObject)
GetSupportedAttributes()

Hämtar anpassade XML-konfigurationsattribut som stöds av spårningslyssnaren.

GetType()

Hämtar den aktuella instansen Type .

(Ärvd från Object)
InitializeLifetimeService()
Föråldrad.

Hämtar ett tjänstobjekt för livslängd för att styra livslängdsprincipen för den här instansen.

(Ärvd från MarshalByRefObject)
MemberwiseClone()

Skapar en ytlig kopia av den aktuella Object.

(Ärvd från Object)
MemberwiseClone(Boolean)

Skapar en ytlig kopia av det aktuella MarshalByRefObject objektet.

(Ärvd från MarshalByRefObject)
ToString()

Returnerar en sträng som representerar det aktuella objektet.

(Ärvd från Object)
TraceData(TraceEventCache, String, TraceEventType, Int32, Object)

Skriver spårningsinformation, ett dataobjekt och händelseinformation till utdatafilen eller strömmen.

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

Skriver spårningsinformation, en matris med dataobjekt och händelseinformation till utdatafilen eller strömmen.

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

Skriver spårningsinformation, en formaterad matris med objekt och händelseinformation till utdatafilen eller strömmen.

TraceEvent(TraceEventCache, String, TraceEventType, Int32, String)

Skriver spårningsinformation, ett meddelande och händelseinformation till utdatafilen eller strömmen.

TraceEvent(TraceEventCache, String, TraceEventType, Int32)

Skriver spårnings- och händelseinformation till lyssnarens specifika utdata.

(Ärvd från TraceListener)
TraceTransfer(TraceEventCache, String, Int32, String, Guid)

Skriver spårningsinformation, ett meddelande, en relaterad aktivitetsidentitet och händelseinformation till lyssnarens specifika utdata.

(Ärvd från TraceListener)
Write(Object, String)

Skriver ett kategorinamn och värdet för objektets ToString() metod till lyssnaren som du skapar när du implementerar TraceListener klassen.

(Ärvd från TraceListener)
Write(Object)

Skriver värdet för objektets ToString() -metod till lyssnaren som du skapar när du implementerar TraceListener klassen.

(Ärvd från TraceListener)
Write(String, String)

Skriver ett kategorinamn och ett meddelande till lyssnaren som du skapar när du implementerar TraceListener klassen.

(Ärvd från TraceListener)
Write(String)

Skriver ett ordagrant meddelande till disken, utan ytterligare kontextinformation.

WriteIndent()

Skriver indraget till lyssnaren som du skapar när du implementerar den här klassen och återställer NeedIndent egenskapen till false.

(Ärvd från TraceListener)
WriteLine(Object, String)

Skriver ett kategorinamn och värdet för objektets ToString() metod till lyssnaren som du skapar när du implementerar TraceListener klassen, följt av en radavgränsare.

(Ärvd från TraceListener)
WriteLine(Object)

Skriver värdet för objektets ToString() -metod till lyssnaren du skapar när du implementerar TraceListener klassen, följt av en radavslutare.

(Ärvd från TraceListener)
WriteLine(String, String)

Skriver ett kategorinamn och ett meddelande till lyssnaren som du skapar när du implementerar TraceListener klassen, följt av en radavgränsare.

(Ärvd från TraceListener)
WriteLine(String)

Skriver ett ordagrant meddelande till disken, följt av den aktuella radavgränsaren, utan ytterligare kontextinformation.

Gäller för

Se även