Küldje el egy Java alkalmazás naplóit az Elastic Stack-nek (ELK)

1. Áttekintés

Ebben a gyors bemutatóban lépésről lépésre megvitatjuk az alkalmazásnaplók kiküldését az Elastic Stack (ELK) részére.

Egy korábbi cikkünkben az Elastic Stack beállítására és a JMX-adatok küldésére összpontosítottunk.

2. Konfigurálja a visszalépést

kezdjük azzal, hogy konfiguráljuk a Logback alkalmazást úgy, hogy alkalmazásnaplókat írjon egy fájlba FileAppender:

 logback / redditApp.log logback / redditApp.% d {éééé-hh-dd} .log 7 

Vegye figyelembe, hogy:

  • Minden naplót külön fájlban vezetünk a használatával RollingFileAppender val vel TimeBasedRollingPolicy (erről az alkalmazásról itt olvashat bővebben)
  • A régi naplókat csak egy hétig (7 napig) tartjuk beállítással maxHistory 7-ig

Figyelje meg, hogyan használjuk a LogstashEncoder a kódolás elvégzése JSON formátumban - ami könnyebben használható a Logstash-szal.

Ennek a kódolónak a használatához hozzá kell adnunk a következő függőséget pom.xml:

 net.logstash.logback logstash-logback-encoder 4.11 

Végül ellenőrizzük, hogy az alkalmazás rendelkezik-e engedélyekkel a naplózási könyvtár eléréséhez:

sudo chmod a + rwx / var / lib / tomcat8 / logback

3. Konfigurálja a Logstash alkalmazást

Most konfigurálnunk kell a Logstash-t, hogy az alkalmazásunk által létrehozott naplófájlokból olvassuk az adatokat, és elküldjük az ElasticSearch-nak.

Itt van a konfigurációs fájlunk logback.conf:

input {fájl {path => "/var/lib/tomcat8/logback/*.log" codec => "json" type => "logback"}} output {if [type] == "logback" {elasticsearch {hosztok => ["localhost: 9200"] index => "visszalépés -% {+ ÉÉÉÉ.HH.dd}"}}}

Vegye figyelembe, hogy:

  • bemenet fájl használatos, mivel a Logstash ezúttal beolvassa a naplókat a naplózó fájlokból
  • pálya a naplózási könyvtárunkra van állítva, és az összes .log kiterjesztésű fájl feldolgozásra kerül
  • index új indexre van állítva: „logback -% {+ YYYY.MM.dd}” az alapértelmezett “logstash -% {+ YYYY.MM.dd}” helyett

A Logstash új konfigurációval történő futtatásához a következőket fogjuk használni:

bin / logstash -f logback.conf

4. A naplók vizualizálása a Kibana használatával

Most már láthatjuk a Visszaadási adatainkat avisszalépés- *’Index.

Létrehozunk egy új keresési „Visszalépési naplót”, hogy biztosan elkülönítsük a Visszaadási adatokat a következő lekérdezéssel:

type: logback

Végül létrehozhatunk egy egyszerű vizualizációt a Logback adatainkról:

  • Lépjen a „Megjelenítés” fülre
  • Válassza a „Függőleges oszlopdiagram” lehetőséget
  • Válassza a „Mentett keresésből” lehetőséget
  • Válassza az imént létrehozott „Visszavonási naplók” keresést

Y tengely esetén feltétlenül válassza az Összesítés lehetőséget: Számol

X tengely esetén válassza:

  • Összesítés: Feltételek
  • Terület: szint

A vizualizálás futtatása után látnia kell, hogy több sáv reprezentálja a naplók számát szintenként (DEBUG, INFO, ERROR,…)

5. Következtetés

Ebben a cikkben megtanultuk a Logstash rendszerünkbeállításának alapjait, hogy az általa generált naplóadatokat az Elasticsearch-be toljuk - és ezeket az adatokat a Kibana segítségével megjelenítsük.