Megosztás a következőn keresztül:


Útmutató: A My.Application.Log írási adatainak módosítása (Visual Basic)

Az és az My.Application.LogMy.Log objektumokkal naplózhatja az alkalmazásban előforduló események adatait. Ez az útmutató bemutatja, hogyan bírálhatja felül az alapértelmezett beállításokat, és hogyan okozhatja az Log objektum írását más naplófigyelőknek.

Előfeltételek

Az Log objektum több naplófigyelőnek is tud adatokat írni. A konfigurációk módosítása előtt meg kell határoznia a naplófigyelők aktuális konfigurációját. További információért lásd Útmutató: Hol írja My.Application.Log az információt.

Érdemes lehet áttekinteni , hogyan: Eseményadatok írása szövegfájlba vagy útmutató: Írás alkalmazásesemény-naplóba.

Figyelők hozzáadása

  1. Kattintson a jobb gombbal a app.config a Megoldáskezelőben, és válassza a Megnyitás.

    -vagy-

    Ha nincs app.config fájl:

    1. A Projekt menüben válassza az Új elem hozzáadása lehetőséget.

    2. Az Új elem hozzáadása párbeszédpanelen válassza az Alkalmazáskonfigurációs fájl lehetőséget.

    3. Kattintson a Hozzáadás gombra.

  2. Keresse meg a <listeners> szakaszban az <source> szakasz "DefaultSource" attribútummal rendelkező name szakasz alatt található <sources> szakaszt. A <sources> szakasz a <system.diagnostics> felső szintű <configuration> szakaszban található.

  3. Adja hozzá ezeket az elemeket a <listeners> szakaszhoz.

    <!-- Uncomment to connect the application file log. -->
    <!-- <add name="FileLog" /> -->
    <!-- Uncomment to connect the event log. -->
    <!-- <add name="EventLog" /> -->
    <!-- Uncomment to connect the event log. -->
    <!-- <add name="Delimited" /> -->
    <!-- Uncomment to connect the XML log. -->
    <!-- <add name="XmlWriter" /> -->
    <!-- Uncomment to connect the console log. -->
    <!-- <add name="Console" /> -->
    
  4. Vegye ki a megjegyzéseket a meghatározott naplófigyelőknél, amelyektől az Log üzeneteket szeretné fogadni.

  5. Keresse meg a <sharedListeners> szakaszt a <system.diagnostics> felső szintű <configuration> szakaszban.

  6. Adja hozzá ezeket az elemeket a <sharedListeners> szakaszhoz.

    <add name="FileLog"
         type="Microsoft.VisualBasic.Logging.FileLogTraceListener,
               Microsoft.VisualBasic, Version=8.0.0.0,
               Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
         initializeData="FileLogWriter" />
    <add name="EventLog"
         type="System.Diagnostics.EventLogTraceListener,
               System, Version=2.0.0.0,
               Culture=neutral, PublicKeyToken=b77a5c561934e089"
         initializeData="sample application"/>
    <add name="Delimited"
         type="System.Diagnostics.DelimitedListTraceListener,
               System, Version=2.0.0.0,
               Culture=neutral, PublicKeyToken=b77a5c561934e089"
         initializeData="c:\temp\sampleDelimitedFile.txt"
         traceOutputOptions="DateTime" />
    <add name="XmlWriter"
         type="System.Diagnostics.XmlWriterTraceListener,
               System, Version=2.0.0.0,
               Culture=neutral, PublicKeyToken=b77a5c561934e089"
         initializeData="c:\temp\sampleLogFile.xml" />
    <add name="Console"
         type="System.Diagnostics.ConsoleTraceListener,
               System, Version=2.0.0.0,
               Culture=neutral, PublicKeyToken=b77a5c561934e089"
         initializeData="true" />
    
  7. A app.config fájl tartalmának az alábbi XML-fájlhoz hasonlónak kell lennie:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <system.diagnostics>
        <sources>
          <!-- This section configures My.Application.Log -->
          <source name="DefaultSource" switchName="DefaultSwitch">
            <listeners>
              <add name="FileLog"/>
              <!-- Uncomment to connect the application file log. -->
              <!-- <add name="FileLog" /> -->
              <!-- Uncomment to connect the event log. -->
              <!-- <add name="EventLog" /> -->
              <!-- Uncomment to connect the event log. -->
              <!-- <add name="Delimited" /> -->
              <!-- Uncomment to connect the XML log. -->
              <!-- <add name="XmlWriter" /> -->
              <!-- Uncomment to connect the console log. -->
              <!-- <add name="Console" /> -->
            </listeners>
          </source>
        </sources>
        <switches>
          <add name="DefaultSwitch" value="Information" />
        </switches>
        <sharedListeners>
          <add name="FileLog"
               type="Microsoft.VisualBasic.Logging.FileLogTraceListener,
                     Microsoft.VisualBasic, Version=8.0.0.0,
                     Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
               initializeData="FileLogWriter" />
          <add name="EventLog"
               type="System.Diagnostics.EventLogTraceListener,
                     System, Version=2.0.0.0,
                     Culture=neutral, PublicKeyToken=b77a5c561934e089"
               initializeData="sample application"/>
          <add name="Delimited"
               type="System.Diagnostics.DelimitedListTraceListener,
                     System, Version=2.0.0.0,
                     Culture=neutral, PublicKeyToken=b77a5c561934e089"
               initializeData="c:\temp\sampleDelimitedFile.txt"
               traceOutputOptions="DateTime" />
          <add name="XmlWriter"
               type="System.Diagnostics.XmlWriterTraceListener,
                     System, Version=2.0.0.0,
                     Culture=neutral, PublicKeyToken=b77a5c561934e089"
               initializeData="c:\temp\sampleLogFile.xml" />
          <add name="Console"
               type="System.Diagnostics.ConsoleTraceListener,
                     System, Version=2.0.0.0,
                     Culture=neutral, PublicKeyToken=b77a5c561934e089"
               initializeData="true" />
        </sharedListeners>
      </system.diagnostics>
    </configuration>
    

Figyelő újrakonfigurálása

  1. A <add> szakaszból keresse meg a hallgató <sharedListeners> elemét.

  2. Az type attribútum a figyelő típusának nevét adja meg. Ennek a típusnak az TraceListener osztálytól kell örökölnie. Az erősen elnevezett típusnévvel győződjön meg arról, hogy a megfelelő típust használja. További információ: "Erősen elnevezett típusra való hivatkozás" című szakaszban.

    Néhány használható típus:

    További információért arról, hogy a különböző típusú naplófigyelők hová rögzítik az információkat, tekintse meg az adott típus dokumentációját.

  3. Amikor az alkalmazás létrehozza a naplófigyelő objektumot, konstruktorparaméterként átadja az initializeData attribútumot. Az attribútum jelentése a initializeData nyomkövetési figyelőtől függ.

  4. A naplófigyelő létrehozása után az alkalmazás beállítja a figyelő tulajdonságait. Ezeket a tulajdonságokat az elem többi attribútuma <add> határozza meg. Az adott figyelő tulajdonságaival kapcsolatos további információkért tekintse meg az adott figyelő típusának dokumentációját.

Erősen elnevezett típusra való hivatkozás

  1. Annak érdekében, hogy a naplófigyelőben a megfelelő típust használja, győződjön meg arról, hogy a teljes típusnevet és az erősen típusos assemblynevet használja. Az erősen elnevezett típus szintaxisa a következő:

    < típusnév>, <szerelvény neve>, <verziószám>, <kultúra>, <erős név>

  2. Ez a példakód bemutatja, hogyan határozható meg egy teljesen minősített típus erősen nevesített típusneve – ebben az esetben a "System.Diagnostics.FileLogTraceListener".

    Public Sub DisplayStrongName()
        Dim t As Type = GetType(Logging.FileLogTraceListener)
        MsgBox(t.FullName & ", " & t.Assembly.FullName)
    End Sub
    

    Ez a kimenet, és ennek használatával egyedileg hivatkozhat egy egyedi nevű típusra, ahogyan a fenti "Figyelők hozzáadása" eljárásban is.

    Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a

Lásd még