Kivételek naplózása az SLF4J használatával

1. Áttekintés

Ebben a gyors bemutatóban megmutatjuk, hogyan kell naplózni a kivételeket a Java-ban az SLF4J API használatával. Használjuk a slf4j-egyszerű API mint naplózás megvalósítása.

Különböző naplózási technikákat fedezhet fel egyik korábbi cikkünkben.

2. Maven-függőségek

Először hozzá kell adnunk a következő függőségeket a sajátunkhoz pom.xml:

 org.slf4j slf4j-api 1.7.30 org.slf4j slf4j-simple 1.7.30 

E könyvtárak legújabb verziói megtalálhatók a Maven Central oldalon.

3. Példák

Általában az összes kivételt a hiba() módszerben elérhető Logger osztály. Ennek a módszernek elég sok változata van. Felfedezzük:

void error (karakterlánc-üzenet); érvénytelen hiba (karakterlánc formátum, objektum ... argumentum); void error (String msg, Throwable t);

Inicializáljuk először a Logger amit használni fogunk:

Naplózó naplózó = LoggerFactory.getLogger (NameOfTheClass.class);

Ha csak meg kell mutatnunk a hibaüzenetet, akkor egyszerűen hozzáadhatjuk:

logger.error ("Kivétel történt!");

A fenti kód kimenete a következő lesz:

ERROR packageName.NameOfTheClass - Kivétel történt!

Ez elég egyszerű. De a kivételt (ideértve a veremnyomot) vonatkozó relevánsabb információk hozzáadásához írhatjuk:

logger.error ("Kivétel történt!", új Kivétel ("Egyedi kivétel"));

A kimenet a következő lesz:

ERROR packageName.NameOfTheClass - Kivétel történt! java.lang.Exception: Egyedi kivétel a packageName.NameOfTheClass.methodName helyen (NameOfTheClass.java:lineNo)

Több paraméter jelenlétében, ha a naplózási utasítás utolsó argumentuma kivétel, akkor az SLF4J feltételezi, hogy a felhasználó azt akarja, hogy az utolsó argumentum kivételként kezelhető legyen egyszerű paraméter helyett:

logger.error ("{}, {}! Kivétel történt!", "Helló", "Világ", új kivétel ("Egyedi kivétel"));

A fenti részletben a Húr üzenet formázása az átadott objektum adatai alapján történik. A göndör zárójeleket helyőrzőként használtuk Húr a módszerhez továbbított paraméterek.

Ebben az esetben a kimenet a következő lesz:

ERROR packageName.NameOfTheClass - Helló, Világ! Kivétel történt! java.lang.Exception: Egyedi kivétel a packageName.NameOfTheClass.methodName helyen (NameOfTheClass.java:lineNo)

4. Következtetés

Ebben a gyors bemutatóban megtudtuk, hogyan kell naplózni a kivételeket az SLF4J API használatával.

A kódrészletek a GitHub adattárban érhetők el.


$config[zx-auto] not found$config[zx-overlay] not found