Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez az oktatóanyag bemutatja, hogyan konfigurálhat egy klasszikus Java-alkalmazást úgy, hogy naplókat küldjön a Logz.io szolgáltatásnak a betöltéshez és elemzéshez. Logz.io teljes körű monitorozási megoldást biztosít az Elasticsearch/Logstash/Kibana (ELK) és a Grafana alapján.
Az oktatóanyag feltételezi, hogy Log4J-t vagy Logbacket használ. Ezek a kódtárak a két leggyakrabban használt Java-naplózáshoz, ezért az oktatóanyagnak működnie kell az Azure-ban futó alkalmazások többségénél. Ha már az Elastic stacket használja a Java-alkalmazás figyeléséhez, ez az oktatóanyag bemutatja, hogyan konfigurálhatja újra a rendszerét a Logz.io végpont eléréséhez.
Ebben az oktatóanyagban a következőket sajátíthatja el:
- Naplók küldése a Logz.io-ra egy meglévő Java-alkalmazásból.
- Diagnosztikai naplók és metrikák küldése az Azure-szolgáltatásokból a Logz.io.
Előfeltételek
- Java Developer Kit, 11-es vagy újabb verzió
- Egy Logz.io-fiók az Azure Marketplace
- Meglévő Java-alkalmazás, amely Log4J-t vagy Logbacket használ
Java-alkalmazásnaplók küldése a Logz.io-ra
Először megtanulhatja, hogyan konfigurálhatja a Java-alkalmazást egy olyan jogkivonattal, amely hozzáférést biztosít a Logz.io-fiókjához.
A Logz.io hozzáférési jogkivonat lekérése
A jogkivonat lekéréséhez jelentkezzen be Logz.io fiókjába, válassza a fogaskerék ikont a bal alsó sarokban, majd válassza a Beállítások>A jogkivonatok kezelése lehetőséget, és válassza a Adatszállítási jogkivonatok lapot. Másolja ki a alapértelmezett hozzáférési jogkivonatot és a figyelő URL-címét, hogy később használhassa őket.
A Logz.io-kódtár telepítése és konfigurálása a Log4J-hez vagy a Logbackhez
A Logz.io Java-kódtár elérhető a Maven Centralon, így függőségként hozzáadhatja az alkalmazás konfigurációjához. Ellenőrizze a Verziószámot a Maven Centralon, és használja a legújabb verziót az alábbi konfigurációs beállítások között.
Ha Mavent használ, adja hozzá a következő függőséget a pom.xml fájlhoz:
Log4J:
<dependency>
<groupId>io.logz.log4j2</groupId>
<artifactId>logzio-log4j2-appender</artifactId>
<version>2.0.0</version>
</dependency>
kijelentkezés:
<dependency>
<groupId>io.logz.logback</groupId>
<artifactId>logzio-logback-appender</artifactId>
<version>2.0.0</version>
</dependency>
Ha Gradle-t használ, adja hozzá a következő függőséget a buildszkripthez:
Log4J:
implementation 'io.logz.log4j:logzio-log4j-appender:2.0.0'
kijelentkezés:
implementation 'io.logz.logback:logzio-logback-appender:2.0.0'
Ezután frissítse a Log4J vagy a Logback konfigurációs fájlját:
Log4J:
<Appenders>
<LogzioAppender name="Logzio">
<logzioToken><your-logz-io-token></logzioToken>
<logzioType>java</logzioType>
<logzioUrl>https://<your-logz-io-listener-host>:8071</logzioUrl>
</LogzioAppender>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="Logzio"/>
</Root>
</Loggers>
kijelentkezés:
<configuration>
<!-- Use shutdownHook so that we can close gracefully and finish the log drain -->
<shutdownHook class="ch.qos.logback.core.hook.DelayingShutdownHook"/>
<appender name="LogzioLogbackAppender" class="io.logz.logback.LogzioLogbackAppender">
<token><your-logz-io-token></token>
<logzioUrl>https://<your-logz-io-listener-host>:8071</logzioUrl>
<logzioType>java</logzioType>
<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
<level>INFO</level>
</filter>
</appender>
<root level="debug">
<appender-ref ref="LogzioLogbackAppender"/>
</root>
</configuration>
Cserélje le a <your-logz-io-token> helyőrzőt a hozzáférési tokenre, a <your-logz-io-listener-host> helyőrzőt pedig a régió hallgató gazdagépére – például listener.logz.io. A fiók régiójának megkereséséről további információt Fiókrégiócímű témakörben talál.
A logzioType elem az Elasticsearch egy logikai mezőjére hivatkozik, amely különböző dokumentumok egymástól való elválasztására szolgál. Fontos, hogy ezt a paramétert megfelelően konfigurálja, hogy a lehető legtöbbet hozhassa ki a Logz.io.
A Logz.io "típus" a napló formátumát jelenti – például: Apache, NGinx, MySQL –, és nem a forrást, például: server1, server2, server3. Ebben az oktatóanyagban azért hívjuk meg a típust java, mert Java-alkalmazásokat konfigurálunk, és elvárjuk, hogy ezek az alkalmazások mind ugyanazt a formátumot kapjanak.
A speciális használat érdekében a Java-alkalmazásokat különböző típusokba csoportosíthatja, amelyek mindegyike saját naplóformátummal rendelkezik (a Log4J és a Logback használatával konfigurálható). Lehet például egy spring-boot-monolith és egy spring-boot-microservice típus.
A konfiguráció és a naplóelemzés tesztelése a Logz.io
A Logz.io kódtár konfigurálása után az alkalmazásnak most már közvetlenül is el kell küldenie a naplókat. Annak ellenőrzéséhez, hogy minden megfelelően működik-e, lépjen a Logz.io konzolra, válassza a Naplók>Élő farok lapot, majd válassza a futtatáslehetőséget. A következőhöz hasonló üzenetet kell látnia, amely közli, hogy a kapcsolat működik:
Requesting Live Tail access...
Access granted. Opening connection...
Connected. Tailing...
Ezután indítsa el az alkalmazást, vagy használja a naplók létrehozásához. A naplóknak közvetlenül a képernyőn kell megjelennie. A Spring Boot-alkalmazások első indítási üzenetei például a következők:
2019-09-19 12:54:40.685Z Starting JavaApp on javaapp-default-9-5cfcb8797f-dfp46 with PID 1 (/workspace/BOOT-INF/classes started by cnb in /workspace)
2019-09-19 12:54:40.686Z The following profiles are active: prod
2019-09-19 12:54:42.052Z Bootstrapping Spring Data repositories in DEFAULT mode.
2019-09-19 12:54:42.169Z Finished Spring Data repository scanning in 103ms. Found 6 repository interfaces.
2019-09-19 12:54:43.426Z Bean 'spring.task.execution-org.springframework.boot.autoconfigure.task.TaskExecutionProperties' of type [org.springframework.boot.autoconfigure.task.TaskExecutionProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
Most, hogy Logz.io feldolgozza a naplókat, élvezheti a platform összes szolgáltatását.
Azure-szolgáltatások adatainak küldése Logz.io
Ezután megtudhatja, hogyan küldhet naplókat és metrikákat az Azure-erőforrásokból a Logz.io.
A sablon üzembe helyezése
Az első lépés a Logz.io – Azure-integrációs sablon üzembe helyezése. Az integráció egy kész Azure-telepítési sablonon alapul, amely beállítja a folyamat összes szükséges építőelemét. A sablon létrehoz egy Event Hub-névteret, egy Eseményközpontot, két tárolóblobot, valamint az összes szükséges megfelelő engedélyt és kapcsolatot. Az automatizált üzembe helyezés által beállított erőforrások képesek egyetlen Azure-régió adatait gyűjteni, és ezeket az adatokat továbbítani a Logz.io-hoz.
Keresse meg a Üzembe helyezés az Azure-ban gombot a repo olvasmányának első lépésében.
Amikor a Telepítés az Azurelehetőséget választja, megjelenik a Egyéni telepítés oldal az Azure Portálon, az előre kitöltött mezőket tartalmazó listával.
A legtöbb mezőt as-is hagyhatja, de mindenképpen adja meg a következő beállításokat:
- erőforráscsoport: Válasszon ki egy meglévő csoportot, vagy hozzon létre egy újat.
-
Logzio-naplók/metrikák gazdagépének: Adja meg a Logz.io figyelő URL-címét. Ha nem biztos benne, hogy mi ez az URL-cím, ellenőrizze a bejelentkezési URL-címet. Ha
app.logz.io, használja alistener.logz.io(ez az alapértelmezett beállítás). Haapp-eu.logz.iovan, akkor használja alistener-eu.logz.io. - Logzio Logs/Metrics Token: Adja meg annak a Logz.io fióknak a jogkivonatát, amelyhez Azure-naplókat vagy metrikákat szeretne szállítani. Ezt a tokent a fiókoldalon találja meg a Logz.io felhasználói felületén.
Fogadja el az oldal alján található feltételeket, és válassza a Vásárláslehetőséget. Az Azure ezután üzembe helyezi a sablont, ami eltarthat egy-két percig. Végül a portál tetején megjelenik a "Sikeres üzembe helyezés" üzenet.
A megadott erőforráscsoportot felkeresve áttekintheti az üzembe helyezett erőforrásokat.
Ha tudni szeretné, hogyan konfigurálhatja a logzio-azure-serverless az adatok Azure Blob Storage-ba való biztonsági mentésére, tekintse meg Azure-tevékenységnaplók.
Azure-naplók és metrikák továbbítása a Logz.io-ra
Most, hogy üzembe helyezte az integrációs sablont, konfigurálnia kell az Azure-t, hogy diagnosztikai adatokat streameljen az imént üzembe helyezett Eseményközpontba. Amikor adatok érkeznek az Event Hubba, a függvényalkalmazás továbbítja az adatokat Logz.io.
Írja be a keresősávba Diagnosztikai, majd válassza Diagnosztikai beállításoklehetőséget.
Válasszon egy erőforrást az erőforrások listájából, majd válassza a Diagnosztikai beállítás hozzáadása lehetőséget az erőforrás Diagnosztikai beállítások paneljének megnyitásához.
Adja meg a diagnosztikai beállításokat Név.
Válassza az Adatfolyam küldése eseményközpontbaopciót, majd válassza a Konfigurálás opciót az Eseményközpont kiválasztása panel megnyitásához.
Válassza ki az Event Hubot:
-
Event Hub-névtér kiválasztása: Válassza ki az Logzio (például
LogzioNS6nvkqdcci10p) kezdő névteret. - Válassza ki az eseményközpont nevét: A naplókhoz válassza a insights-operational-logs, a metrikákhoz pedig az insights-operational-metricslehetőséget.
- Event Hub-házirend nevének kiválasztása: Válassza LogzioSharedAccessKey.
-
Event Hub-névtér kiválasztása: Válassza ki az Logzio (például
Válassza OK lehetőséget a Diagnosztikai beállítások panelre való visszatéréshez.
A Napló szakaszban jelölje ki a streamelni kívánt adatokat, majd válassza a Mentéslehetőséget.
A kijelölt adatok mostantól az Eseményközpontba streamelnek.
Az adatok vizualizációja
Ezután adjon egy kis időt az adatoknak, hogy eljussanak a rendszeréből a Logz.io-ra, majd nyissa meg a Kibana-t. Látni fogja, hogy a eventhubtípusú adatok feltöltik az irányítópultjait. További információ az irányítópultok létrehozásáról: Kibana – Irányítópult létrehozása.
Innen lekérdezheti a Felfedezés lapon szereplő adatokat, vagy létrehozhat Kibana-objektumokat az adatok vizualizációjához a Vizualizáció lapon.
Erőforrások törlése
Ha végzett az oktatóanyagban létrehozott Azure-erőforrásokkal, az alábbi paranccsal törölheti őket:
az group delete --name <resource group>
Következő lépések
Ebben az oktatóanyagban megtanulta, hogyan konfigurálhatja a Java-alkalmazást és az Azure-szolgáltatásokat naplók és metrikák Logz.io való küldésére.
A következő lépésben további információ arról, hogyan monitorozhatja az alkalmazást az Event Hub használatával: