Bejelentkezés a Graylogba a tavaszi indítással

1. Bemutatkozás

A Graylog egy napló összesítő szolgáltatás. Egyszerűen fogalmazva, naplóüzenetek millióit képes összegyűjteni több forrásból, és egyetlen felületen megjeleníteni.

Ezenkívül számos egyéb funkciót is kínál, például valós idejű riasztásokat, grafikonokkal és diagramokkal ellátott irányítópultokat és még sok minden mást.

Ebben az oktatóanyagban megtudhatjuk, hogyan állítsunk be egy Graylog szervert és hogyan küldjünk naplóüzeneteket neki egy Spring Boot alkalmazásból.

2. A Graylog beállítása

A Graylog telepítésének és futtatásának számos módja van. Ebben az oktatóanyagban a két leggyorsabb módszert tárgyaljuk: a Docker és az Amazon Web Services szolgáltatásokat.

2.1. Dokkmunkás

A következő parancsok letöltik az összes szükséges Docker-képet, és elindítanak egy tárolót az egyes szolgáltatásokhoz:

$ docker run --name mongo -d mongo: 3 $ docker run --name elasticsearch -p 9200: 9200 -p 9300: 9300 \ -e ES_JAVA_OPTS = "- Xms2g -Xmx4g" \ -e "discovery.type = single- csomópont "-e" xpack.security.enabled = false "\ -e" bootstrap.memory_lock = true "- memulimulimit = -1: -1 \ -d docker.elastic.co/elasticsearch/elasticsearch:5.6.11 $ docker run --name graylog --link mongo --link elasticsearch \ -p 9000: 9000 -p 12201: 12201 -p 514: 514 -p 5555: 5555 \ -e GREYLOG_WEB_ENDPOINT_URI = "// 127.0.0.1:9000/api "\ -d graylog / graylog: 2.4.6-1

A Graylog irányítópult már elérhető az URL használatával // helyi gazda: 9000 / és az alapértelmezett felhasználónév és jelszó egyaránt admin.

Bár a Docker beállítása a legegyszerűbb, jelentős memória szükséges. Nem működik a Docker for Mac rendszeren sem, ezért lehet, hogy nem minden platformra alkalmas.

2.2. Amazon Web Services

A Graylog tesztelésre történő beállításának legegyszerűbb lehetősége az Amazon Web Services. A Graylog hivatalos AMI-t biztosít, amely tartalmazza az összes szükséges függőséget, bár a telepítés után további konfigurációt igényel.

Gyorsan telepíthetünk egy EC2 példányt a Graylog AMI segítségével ide kattintva és kiválasztva egy régiót. A Graylog legalább 4 GB memóriával rendelkező példány használatát javasolja.

A példány elindulása után SSH-t kell beírnunk a gazdagépre, és néhány módosítást kell végrehajtanunk. Az alábbi parancsok konfigurálják számunkra a Graylog szolgáltatást:

$ sudo graylog-ctl kényszerítés-ssl $ sudo graylog-ctl set-external-ip //: 443 / api / $ sudo graylog-ctl újrakonfigurálás

Frissítenünk kell az EC2 példánnyal létrehozott biztonsági csoportot is, hogy engedélyezzük a hálózati forgalmat bizonyos portokon. Az alábbi ábra az engedélyezni kívánt portokat és protokollokat mutatja:

A Graylog irányítópult már elérhető az URL használatával /// és az alapértelmezett felhasználónév és jelszó egyaránt admin.

2.3. Egyéb Graylog telepítések

A Docker és az AWS mellett a különböző operációs rendszerek számára is léteznek Graylog csomagok. Ezzel a megközelítéssel fel kell állítanunk egy ElasticSearch és MongoDB szolgáltatást is.

Emiatt a Docker és az AWS telepítése sokkal könnyebb, különösen fejlesztési és tesztelési célokra.

3. Küldés naplóüzenetekben

A Graylog beüzemelésével konfigurálnunk kell a Spring Boot alkalmazást, hogy naplóüzeneteket küldjön a Graylog szerverre.

Bármely Java naplózási keretrendszer támogatja az üzenetek küldését a Graylog szerverre a GELF protokoll használatával.

3.1. Log4J

Jelenleg az egyetlen hivatalosan támogatott naplózási keretrendszer a Log4J. A Graylog egy alkalmazót biztosít, amely a Maven központi oldalán érhető el.

Engedélyezhetjük, ha bármelyikhez hozzáadjuk a következő Maven-függőséget pom.xml fájl:

 org.graylog2 gelfj 1.1.16 

Ki kell zárnunk a naplózó indító modult bárhonnan, ahol Spring Boot indító modult használunk:

 org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-logging 

Most meghatározhatunk egy új függeléket a log4j.xml fájl:

Ez úgy konfigurálja az összes naplóüzenetet, amelynek INFO szintje vagy magasabb, hogy a Graylog alkalmazáshoz menjen, amely viszont elküldi a naplóüzenetet a Graylog szervernek.

3.2. Egyéb naplózási keretrendszerek

A Graylog piactér további könyvtárakkal rendelkezik, amelyek számos más naplózási keretrendszert támogatnak, például a Logback, a Log4J2 és így tovább. Csak vigyázzon, hogy ezeket a könyvtárakat nem a Graylog tartja fenn. Némelyiket elhagyják, másoknak pedig alig vagy egyáltalán nincs dokumentációjuk.

Óvatosan kell eljárni, ha a harmadik fél könyvtáraira támaszkodik.

3.3. Graylog gyűjtő oldalkocsi

A naplógyűjtés másik lehetősége a Graylog Collector Sidecar. Az oldalkocsi egy fájlgyűjtő mentén futó folyamat, amely a naplófájl tartalmát egy Graylog szerverre küldi.

Az oldalkocsi remek lehetőség azokhoz az alkalmazásokhoz, ahol a napló konfigurációs fájlok megváltoztatása nem lehetséges. Mivel a naplófájlokat közvetlenül a lemezről olvassa, bármely platform és programozási nyelv naplóüzeneteinek integrálására is használható.

4. Üzenetek megtekintése a Graylogban

Használhatjuk a Graylog irányítópultot a naplóüzenetek sikeres kézbesítésének megerősítésére. A szűrő használata forrás: localhost megmutatja a mintánkból származó naplóüzeneteket log4j fenti konfiguráció:

5. Következtetés

A Graylog csak egy a sok napló összesítési szolgáltatás közül. Gyorsan kereshet naplóüzenetek millióit, valós időben vizualizálhatja a naplóadatokat, és riasztásokat küldhet, ha bizonyos feltételek teljesülnek.

A Graylog integrálása a Spring Boot alkalmazásba csak néhány soros konfigurációt igényel, új kód nélkül.

A kódminták, mint mindig, a GitHubon találhatók.


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