Tavaszi csomagtartó beágyazott Tomcat naplók

1. Bemutatkozás

A Spring Boot egy beágyazott Tomcat szerverrel érkezik, ami nagyon hasznos. Alapértelmezés szerint azonban nem láthatjuk Tomcat naplóit.

Ebben az oktatóanyagban megtanuljuk, hogyan kell konfigurálja a Tavaszi indítást úgy, hogy megjelenítse a Tomcat belső és hozzáférési naplóit játékalkalmazás útján.

2. Minta alkalmazás

Először hozzunk létre egy REST API-t. Meghatározzuk a GreetingsController üdvözölni a felhasználót:

@GetMapping ("/ greetings / {felhasználónév}") public String getGreetings (@PathVariable ("felhasználónév") String userName) {return "Hello" + userName + ", Jó napot ... !!!"; }

3. Tomcat Naplótípusok

A beágyazott Tomcat kétféle naplót tárol:

  • Hozzáférési naplók
  • Belső szerver naplók

A hozzáférési naplók nyilvántartást vezet az alkalmazás által feldolgozott összes kérelemről. Ezeket a naplókat fel lehet használni nyomon követheti az olyan dolgokat, mint az oldalak száma és felhasználói munkamenet-tevékenység. Ellentétben, belső szerver naplók segít a futó alkalmazás bármilyen problémájának elhárításában.

4. Hozzáférési naplók

Alapértelmezés szerint a hozzáférési naplók nincsenek engedélyezve.

Könnyen engedélyezhetjük őket, ha hozzáadunk egy tulajdonságot alkalmazás.tulajdonságok:

server.tomcat.accesslog.enabled = true

Hasonlóképpen használhatunk virtuális gép argumentumokat is a hozzáférési naplók engedélyezéséhez:

java -jar -Dserver.tomcat.basedir = tomcat -Dserver.tomcat.accesslog.enabled = true app.jar

Ezek a naplófájlok egy ideiglenes könyvtárban jönnek létre. Például Windows rendszeren a hozzáférési naplók könyvtárának valami hasonló lesz AppData \ Local \ Temp \ tomcat.2142886552084850151.40123 \ logs

4.1. Formátum

Tehát, ha engedélyezve van ez a tulajdonság, akkor valami hasonlót látunk a futó alkalmazásunkban:

0: 0: 0: 0: 0: 0: 0: 1 - - [13 / május / 2019: 23: 14: 51 +0530] "GET / üdvözlet / Harry HTTP / 1.1" 200 27 0: 0: 0: 0: 0: 0: 0: 1 - - [13 / május / 2019: 23: 17: 23 +0530] "GET / üdvözlet / Harry HTTP / 1.1" 200 27

Ezek a hozzáférési naplók, és a következő formátumúak:

% h% l% u% t \ "% r \"%> s% b

Amit úgy értelmezhetünk:

% h - a kérést elküldő kliens IP, 0:0:0:0:0:0:0:1 ebben az esetben

% l - a felhasználó kiléte

% u - a HTTP-hitelesítéssel meghatározott felhasználónév

% t - a kérelem beérkezésének időpontja

% r - az ügyfél kérési sora, GET / üdvözlet / Harry HTTP / 1.1 ebben az esetben

%> s - a szerverről az ügyfélnek elküldött állapotkód, mint a 200 itt

% b - az ügyfélnek adott válasz nagysága, vagy 27 ezekre a kérésekre

Mivel ennek a kérésnek nem volt hitelesített felhasználója, % l és% u nyomtatott kötőjelek.

Valójában, ha bármilyen információ hiányzik, a Tomcat kötőjelet nyomtat az adott nyíláshoz.

4.2. Hozzáférési naplók testreszabása

Néhány tulajdonság hozzáadásával felülírhatjuk az alapértelmezett Spring Boot konfigurációt alkalmazás.tulajdonságok.

Először az alapértelmezett naplófájl nevének megváltoztatása:

server.tomcat.accesslog.suffix = .log server.tomcat.accesslog.prefix = access_log server.tomcat.accesslog.file-date-format = .yyyy-MM-dd

Megváltoztathatjuk a naplófájlok helyét is:

server.tomcat.basedir = tomcat server.tomcat.accesslog.directory = naplók

Végül felülírhatjuk a naplók beírását a naplófájlba:

server.tomcat.accesslog.pattern = gyakori

Van még néhány konfigurálható tulajdonság a Spring Boot-ban is.

5. Belső naplók

A Tomcat szerver belső naplói nagyon hasznosak a szerver oldali problémák megoldásában.

Ezen naplók megtekintéséhez hozzá kell adnunk az alábbi naplózási konfigurációt: alkalmazás.tulajdonságok:

logging.level.org.apache.tomcat = DEBUG logging.level.org.apache.catalina = DEBUG

És akkor valami ilyesmit fogunk látni:

2019-05-17 15: 41: 07.261 DEBUG 31160 --- [0124-Acceptor-0] o.apache.tomcat.util.threads.LimitLatch: Összeszámlálás [http-nio-40124-Acceptor-0] retesz = 1 2019-05-17 15: 41: 07.262 DEBUG 31160 --- [0124-Acceptor-0] o.apache.tomcat.util.threads.LimitLatch: Számlálás [http-nio-40124-Acceptor-0] retesz = 2 2019-05-17 15: 41: 07.278 DEBUG 31160 --- [io-40124-exec-1] org.apache.tomcat.util.modeler.Registry: Managed = Tomcat: type = RequestProcessor, worker = "http-nio -40124 ", name = HttpRequest1 ... 2019-05-17 15: 41: 07.279 HIBAKeresés 31160 --- [io-40124-exec-1] mmMbeansDescriptorsIntrospectionSource: Felügyelt attribútum virtualHost public java.lang.String org.apache. coyote.RequestInfo.getVirtualHost () null ... 2019-05-17 15: 41: 07.280 DEBUG 31160 --- [io-40124-exec-1] oatomcat.util.modeler.BaseModelMBean: preRegister [email protected] Tomcat : type = RequestProcessor, worker = "http-nio-40124", name = HttpRequest1 2019-05-17 15: 41: 07.292 DEBUG 31160 --- [io-40124-exec-1] org.apache.tomcat.util. http.Paraméterek: Állítsa be a várólistát ry sztring kódolás UTF-8-hoz 2019-05-17 15: 41: 07.294 DEBUG 31160 --- [io-40124-exec-1] oatutil.http.Rfc6265CookieProcessor: Cookie-k: Parsing b []: jenkins-timestamper-offset = -19800000 2019-05-17 15: 41: 07.296 DEBUG 31160 --- [io-40124-exec-1] oacauthenticator.AuthenticatorBase: Biztonsági ellenőrzési kérelem GET / üdvözlet / Harry 2019-05-17 15: 41: 07.296 DEBUG 31160 --- [io-40124-exec-1] org.apache.catalina.realm.RealmBase: Nincsenek meghatározva alkalmazható korlátozások

6. Következtetés

Ebben a rövid cikkben megtudtuk a különbséget a Tomcat belső és hozzáférési naplói között. Aztán láttuk, hogyan lehet ezeket engedélyezni és testre szabni.

Ügyeljen arra, hogy ellenőrizze a mintát a GitHubon.


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