Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az My.Application.Log objektumok és My.Log az objektumok megkönnyítik a naplózási és nyomkövetési információk naplókba való írását.
Hogyan történik az üzenetek naplózása?
Először az üzenet súlyosságát a napló Switch tulajdonságának TraceSource tulajdonságával ellenőrizzük. Alapértelmezés szerint csak az "Információ" súlyosságú és annál magasabb üzenetek kerülnek átadásra a napló TraceListener gyűjteményében megadott nyomkövetési figyelőknek. Ezután minden figyelő összehasonlítja az üzenet súlyosságát a figyelő saját tulajdonságával Switch. Ha az üzenet súlyossága elég magas, a figyelő kiírja az üzenetet.
Az alábbi ábra azt mutatja be, hogyan jut el egy, a WriteEntry metódushoz írt üzenet a WriteLine napló nyomkövetési figyelőinek metódusaihoz:
A napló és a nyomkövetési figyelők viselkedését az alkalmazás konfigurációs fájljának módosításával módosíthatja. Az alábbi ábra a napló részei és a konfigurációs fájl közötti levelezést mutatja be.
Az üzenetek naplózásának helye
Ha a szerelvény nem rendelkezik konfigurációs fájllal, az My.Application.Log és My.Log objektumok az alkalmazás hibakeresési kimenetére írnak (az DefaultTraceListener osztályon keresztül). Emellett az My.Application.Log objektum a szerelvény naplófájljába (az FileLogTraceListener osztályon keresztül) ír, míg az My.Log objektum a ASP.NET weblap kimenetére (az WebPageTraceListener osztályon keresztül) ír.
A hibakeresési kimenet a Visual Studio Kimenet ablakában tekinthető meg, amikor az alkalmazást hibakeresési módban futtatja. A Kimenet ablak megnyitásához kattintson a Hibakeresés menüelemre, mutasson a Windowsra, majd kattintson a Kimenet parancsra. A Kimenet ablakban válassza a Hibakeresés lehetőséget a Kimenet megjelenítése mezőből .
Alapértelmezés szerint My.Application.Log a naplófájlt a felhasználó alkalmazásadatainak elérési útjára írja. Az ú t megtalálható az FullLogFileName tulajdonságából az DefaultFileLogWriter objektumnak. Az elérési út formátuma a következő:
BasePath\CompanyName\ProductName\ProductVersion
Egy tipikus érték a BasePath esetében a következő.
C:\Dokumentumok és beállítások\username\Alkalmazásadatok
A CompanyName, ProductName és ProductVersion-értékek az alkalmazás szerelvényadataiból származnak. A naplófájlnév formája AssemblyName.log, ahol a AssemblyName a bővítmény nélküli szerelvény fájlneve. Ha több naplófájlra van szükség, például ha az eredeti napló nem érhető el, amikor az alkalmazás megpróbál írni a naplóba, a naplófájl nevének űrlapja AssemblyName-iteráció.log, ahol iteration pozitív Integer.
Az alapértelmezett viselkedés felülbírálható a számítógép és az alkalmazás konfigurációs fájljainak hozzáadásával vagy módosításával. További információkért lásd: Útmutató: Ahová a My.Application.Log írja az információkat.
Naplóbeállítások konfigurálása
Az Log objektum alapértelmezett implementációval rendelkezik, amely alkalmazáskonfigurációs fájl nélkül működik, app.config. Az alapértelmezett beállítások módosításához hozzá kell adnia egy konfigurációs fájlt az új beállításokkal. További információ : Útmutató: A My.Application.Log kimenet szűrése.
A naplókonfigurációs szakaszok a <system.diagnostics> csomópontban, a app.config fájl fő <configuration> csomópontjában találhatók. A naplóadatok több csomópontban is definiálva lesznek:
Az objektum figyelői a
Log<sources>DefaultSource nevű csomópontban vannak definiálva.Az objektum súlyossági szűrője a
Log<switches>DefaultSwitch nevű csomópontban van definiálva.A naplófigyelők a
<sharedListeners>csomópontban vannak definiálva.
Példák a <sources>, <switches>és <sharedListeners> csomópontokra az alábbi kódban:
<configuration>
<system.diagnostics>
<sources>
<source name="DefaultSource" switchName="DefaultSwitch">
<listeners>
<add name="FileLog"/>
</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, processorArchitecture=MSIL"
initializeData="FileLogWriter"
/>
</sharedListeners>
</system.diagnostics>
</configuration>
Naplóbeállítások módosítása az üzembe helyezés után
Az alkalmazások fejlesztésekor a konfigurációs beállítások a app.config fájlban lesznek tárolva, ahogyan az a fenti példákban is látható. Az alkalmazás üzembe helyezése után is konfigurálhatja a naplót a konfigurációs fájl szerkesztésével. Windows-alapú alkalmazásokban a fájl neve applicationName.exe.config, és ugyanabban a mappában kell lennie, mint a végrehajtható fájlnak. Webalkalmazás esetén ez a projekthez társított Web.config fájl.
Amikor az alkalmazás végrehajtja azt a kódot, amely első alkalommal hoz létre egy osztálypéldányt, ellenőrzi a konfigurációs fájlt az objektummal kapcsolatos információkért.
Log Az objektum esetében ez történik az objektum első elérésekorLog. A rendszer csak egyszer vizsgálja meg a konfigurációs fájlt egy adott objektum esetében – amikor az alkalmazás először hozza létre az objektumot. Ezért előfordulhat, hogy újra kell indítania az alkalmazást a módosítások érvénybe lépéséhez.
Egy üzembe helyezett alkalmazásban a nyomkövetési kódot úgy engedélyezheti, hogy újrakonfigurálja a kapcsolóobjektumokat az alkalmazás elindítása előtt. Ez általában a kapcsolóobjektumok be- és kikapcsolásával, illetve a nyomkövetési szintek módosításával, majd az alkalmazás újraindításával jár.
Biztonsági szempontok
Az adatok naplóba írásakor vegye figyelembe a következőket:
Kerülje a felhasználói adatok kiszivárgását. Győződjön meg arról, hogy az alkalmazás csak jóváhagyott adatokat ír a naplóba. Elfogadható lehet például, hogy az alkalmazásnapló felhasználóneveket tartalmaz, a felhasználói jelszavakat azonban nem.
A naplóhelyek biztonságossá tétele. A potenciálisan bizalmas adatokat tartalmazó naplókat biztonságos helyen kell tárolni.
Kerülje a félrevezető információkat. Az alkalmazásnak általában ellenőriznie kell a felhasználó által megadott összes adatot az adatok használata előtt. Ez magában foglalja az adatoknak az alkalmazásnaplóba való írását is.
Kerülje a szolgáltatásmegtagadást. Ha az alkalmazás túl sok információt ír a naplóba, az kitöltheti a naplót, vagy megnehezítheti a fontos információk megtalálását.