A mellékletek listája
A naplózó lehetővé teszi, hogy egyszerre több fájlba mentse az adatokat. Az ilyen kimeneti adatfolyamokat hozzáfűzőknek (append-ből) nevezzük. Elég sok szabványos függelék létezik, ezért csak a legnépszerűbbeket fogjuk ismertetni:
Függelékek | Leírás | |
---|---|---|
1 | Konzol | Adatokat nyomtat a konzolra |
2 | Fájl | Az adatokat egy fájlba adja ki |
3 | DailyRollingFile | Adatokat ad ki egy fájlba, a fájl ciklikusan felülíródik |
4 | async | Lehetővé teszi, hogy aszinkron módon adatokat írjon egy másik csatolóba |
5 | Foglalat | Adatokat ír egy adott aljzatba |
6 | JDBC | Üzeneteket ír az adatbázisba a JDBC protokoll használatával |
7 | JPA | Üzeneteket ír az adatbázisba a JPA protokoll használatával |
8 | HTTP | Az eseményeket HTTP protokollon keresztül küldi el egy távoli szervernek |
9 | SMTP | Az üzeneteket egy pufferben tárolja, majd e-mailként küldi el |
Az összes csatoló jó dokumentációja megtalálható a hivatalos weboldalukon
Az alábbiakban a legnépszerűbb és legegyszerűbbet vesszük figyelembe.
ConsoleAppender
A legegyszerűbb toldalék aConsoleApender
. Amint azt sejteni lehetett, egyszerűen a konzolra írja üzeneteit. Számos érdekes paramétere van számunkra:
Attribútumok | ||
---|---|---|
1 | név | Függelék neve |
2 | szűrő | Lehetővé teszi bizonyos üzenetek szűrését |
3 | elrendezés | Meghatározza az üzenetek formázását a kimenetkor |
4 | cél | Megadja, hogy hova kell írni: SYTEM_OUT vagySYSTEM_ERR |
Nagyon egyszerű konfigurálni:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="MyApp" packages="">
<Appenders>
<Console name="STDOUT" target="SYSTEM_OUT">
<PatternLayout pattern="%m%n"/>
</Console>
</Appenders>
<Loggers>
<Root level="error">
<AppenderRef ref="STDOUT"/>
</Root>
</Loggers>
</Configuration>
FileApender
A leghasznosabb függelék aFileAppender
. Ellentétben ConsoleAppender
azzal, hogy az üzeneteit fájlba írja. Ez nagyon hasznos, ha az alkalmazás fut valahol a szerveren. Nagyon sok paramétere van, mert képesnek kell lennie fájlok írására különböző operációs rendszereken.
De csak a legnépszerűbbeket vesszük figyelembe.
1 | név | Megadja a függelék nevét |
2 | szűrő | Lehetővé teszi bizonyos üzenetek szűrését |
3 | elrendezés | Meghatározza az üzenetek formázását a kimenetkor |
4 | fájl név | Megadja annak a fájlnak a nevét, ahová üzeneteket kell írni |
5 | mellékel | Ha true , akkor az üzenetek hozzáadódnak a régi naplóhoz, if false - a naplófájl minden alkalommal újra létrejön az alkalmazás indításakor. |
6 | pufferméret | Beállítja a puffer méretét bájtokban |
7 | azonnaliFlush | Ha true , akkor minden üzenet ténylegesen azonnal lemezre kerül (puffer nélkül). A napló lassan kezd működni, de ezzel megóvja Önt attól, hogy a program összeomlásakor adatvesztést szenvedjen. |
Már tudja, hogyan kell jól dolgozni a fájlokkal, így ezek a beállítások nem jelentenek újdonságot az Ön számára. Egy ilyen naplózó konfigurálása még egyszerűbb, mint egy konzolnaplózóé:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="warn" name="MyApp" packages="">
<Appenders>
<File name="MyFile" fileName="logs/app.log">
<PatternLayout>
<Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
</PatternLayout>
</File>
</Appenders>
<Loggers>
<Root level="error">
<AppenderRef ref="MyFile"/>
</Root>
</Loggers>
</Configuration>
RollingFileApender
A legnépszerűbb melléklet aRollingFileAppender
. Ezzel ellentétben FileAppender
lehetővé teszi a napló felosztását sok kis fájlra. Ez nagy rönköknél nagyon fontos. Ezenkívül lehetővé teszi, hogy szabályokat állítson fel arra vonatkozóan, hogy mit tegyen a régi fájlokkal, miután újak írása megkezdődött.
És ez a függelék majdnem száz különböző beállítással rendelkezik. A linken tudhatsz meg többet róluk .
Tekintsük ennek a függeléknek a legnépszerűbb attribútumait:
Attribútumok | ||
---|---|---|
1 | név | Megadja a függelék nevét |
2 | szűrő | Lehetővé teszi bizonyos üzenetek szűrését |
3 | elrendezés | Meghatározza az üzenetek formázását a kimenetkor |
4 | fájl név | Megadja annak a fájlnak a nevét, ahová üzeneteket kell írni |
5 | filePattern | Megadja a már nem írt archív fájlok elnevezési mintáját |
6 | irányelv | Megadja azt a feltételt, amikor a fájl felülírása megkezdődik |
7 | stratégia | Leírja, hogy mit kell tenni a régi fájlokkal: archívum, előzmények, hány napig kell megőrizni stb. |
Íme egy jó példa:
<Configuration status="warn" name="MyApp" packages="">
<Appenders>
<RollingFile name="RollingFile" fileName="logs/app.log" filePattern="logs/app-%d{MM-dd-yyyy}-%i.log.gz">
<PatternLayout>
<Pattern>%d %p %c{1.} [%t] %m%n</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="250 MB"/>
</Policies>
</RollingFile>
</Appenders>
<Loggers>
<Root level="error">
<AppenderRef ref="RollingFile"/>
</Root>
</Loggers>
</Configuration>
A paraméter filePattern
megad egy sablont a régi naplók archívumához. Kettő is van, amikor aktiválódik, egy új fájl íródik:
TimeBasedTriggeringPolicy
- akkor működik, ha új nap kezdődik (az aktuális dátum megváltozik)SizeBasedTriggeringPolicy
– akkor működik, ha a fájl mérete eléri a 250 MB-ot
GO TO FULL VERSION