Protokolování Apache Commons - Apache Commons Logging
Vývojáři | Softwarová nadace Apache |
---|---|
Stabilní uvolnění | 1.2 / červenec 2014 |
Úložiště | github |
Napsáno | Jáva |
Operační systém | Cross-platform |
Typ | Nástroj pro protokolování |
Licence | Licence Apache 2.0 |
webová stránka | Commons |
Protokolování Apache Commons (dříve známé jako Jakarta Commons protokolování nebo JCL) je Jáva -na základě protokolování obslužný program a programovací model pro protokolování a pro další sady nástrojů. Poskytuje API, implementace protokolu a obal implementace přes některé další nástroje.[1][2][3]
Úroveň protokolu
Následující tabulka definuje úrovně protokolu a zprávy v protokolování Apache Commons v sestupném pořadí podle závažnosti. V levém sloupci je uvedeno označení úrovně protokolu a v pravém sloupci je uveden stručný popis každé úrovně protokolu.
Úroveň | Popis |
---|---|
fatální | Závažné chyby, které způsobují předčasné ukončení. Očekávejte, že budou okamžitě viditelné na stavové konzole. |
chyba | Další runtime chyby nebo neočekávané podmínky. Očekávejte, že budou okamžitě viditelné na stavové konzole. |
varovat | Používání zastaralých API, špatné používání API, „téměř“ chyby, další běhové situace, které jsou nežádoucí nebo neočekávané, ale ne nutně „špatné“. Očekávejte, že budou okamžitě viditelné na stavové konzole. |
informace | Zajímavé runtime události (spuštění / vypnutí). Očekávejte, že budou okamžitě viditelné na konzole, proto buďte konzervativní a udržujte je na minimu. |
ladit | Podrobné informace o průtoku systémem. Očekávejte, že se budou zapisovat pouze do protokolů. |
stopa | Nejpodrobnější informace. Očekávejte, že se budou zapisovat pouze do protokolů. |
Konfigurace
V protokolování Apache Commons se používají dvě základní abstrakce, Log a LogFactory.[3]
Příklad
Ukázkový kód může vypadat takto:
balík com.cascadetg.ch09;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.apache.commons.logging.impl.Jdk14Logger;veřejnost třída LogGenerator{ // Všimněte si, že předáte instanci této třídy do // generátor protokolu. To vám umožní najít zprávy // generováno touto třídou. soukromé statický Log log = LogFactory.getLog(LogGenerator.třída); veřejnost statický prázdnota configJDKLogger() { Snaž se { ((Jdk14Logger)log).getLogger().setLevel(Jáva.util.protokolování.Úroveň.VŠECHNO); ((Jdk14Logger)log).getLogger().addHandler((Jáva.util.protokolování.FileHandler)Třída .forName(„java.util.logging.FileHandler“) .novýInstance()); Systém.ven.tisk("Přidán obslužný program souborů JDK 1.4"); } chytit (Výjimka E) { Systém.ven.tisk("Nelze načíst protokolování JDK 1.4."); E.printStackTrace(); } } veřejnost statický prázdnota hlavní(Tětiva[] args) { configJDKLogger(); Systém.setErr(Systém.ven); Systém.ven.tisk(); Systém.ven.tisk(„Test fatal log“); Snaž se { Tětiva foo = nula; int X = 0 / (Nový Celé číslo(foo)).intValue(); } chytit (Výjimka E) { log.fatální(E.getMessage(), E); } Systém.ven.tisk(); Systém.ven.tisk(„Test error log“); Snaž se { Objekt foo = nula; foo.toString(); } chytit (Výjimka E) { log.chyba(E.getMessage(), E); } Systém.ven.tisk(); Systém.ven.tisk(„Test warn log“); Snaž se { Třída.forName(„com.cascadetg.NonexistantClass“); } chytit (Výjimka E) { log.varovat(„Nemohu najít neexistující třídu!“); } Systém.ven.tisk(); Systém.ven.tisk("Testovací informační protokol"); log.informace(„Spouštění aplikace!“); log.informace(„Ukončuji aplikaci!“); Systém.ven.tisk(); Systém.ven.tisk(„Test debug log“); -li (1 > 2) { log.ladit(„1> 2 hodnoceno jako pravdivé“); -li (10 % 2 == 0) log.ladit(„10% 2 je 0“); jiný log.ladit(„10% 2 není 0“); } jiný { log.ladit(„1> 2 vyhodnoceno jako nepravdivé“); } Systém.ven.tisk(); Systém.ven.tisk(„Test trace log“); log.stopa(„Volání trasovací metody.“); log.stopa(„Volání trasovací metody.“); log.stopa(„Volání trasovací metody.“); log.stopa(„Volání trasovací metody.“); log.stopa(„Volání trasovací metody.“); Systém.ven.tisk(); Systém.ven.tisk(„Test protokolu dokončen.“); }}
Viz také
Reference
- ^ "společné přihlášení". Apache.org. Apache. Citováno 12. února 2016.
- ^ Zavala, D.A .; Lau, Y.C. (2004). Integrace protokolování Jakarta Commons s produktem IBM WebSphere Application Server V5. Společnost IBM. p. 2.
- ^ A b C "obsah". Apache.org. Apache. Citováno 12. února 2016.
- ^ A b Iverson, W. (2005). Apache Jakarta Commons - opakovaně použitelné komponenty Java. Crawfordsville, Indiana, USA: Pearson Education, Inc. s. 120–122.