Pogon vzmetnega zagona
Pogon vzmetnega zagona je podprojekt Spring Boot Framework. Vključuje številne dodatne funkcije, ki nam pomagajo spremljati in upravljati aplikacijo Spring Boot. Vsebuje končne točke aktuatorja (kraj, kjer živijo viri). Lahko uporabimo HTTP in JMX končne točke za upravljanje in spremljanje aplikacije Spring Boot. Če želimo v aplikaciji dobiti funkcije, pripravljene za proizvodnjo, bi morali uporabiti S pring Zagonski aktuator.
Funkcije vzmetnega zagonskega aktuatorja
obstajajo tri glavne značilnosti vzmetnega zagonskega aktuatorja:
Končna točka: Končne točke aktuatorja nam omogočajo spremljanje in interakcijo z aplikacijo. Spring Boot ponuja številne vgrajene končne točke. Ustvarimo lahko tudi lastno končno točko. Vsako končno točko lahko omogočimo in onemogočimo posebej. Večino aplikacij izberite HTTP , kjer je ID končne točke skupaj s predpono /pogon, je preslikan v URL.
Na primer, /zdravje končna točka zagotavlja osnovne podatke o zdravju aplikacije. Aktuator ga je privzeto preslikal na /aktuator/zdravje .
Meritve: Spring Boot Actuator zagotavlja dimenzijske meritve z integracijo z mikrometer . Mikrometer je integriran v Spring Boot. To je knjižnica instrumentov, ki poganja dostavo metrik aplikacij od pomladi. Zagotavlja vmesnike, nevtralne glede prodajalca časovniki, merilniki, števci, distribucijski povzetki, in dolgi časovniki opravil z dimenzijskim podatkovnim modelom.
Revizija: Spring Boot ponuja prilagodljiv revizijski okvir, ki objavlja dogodke v AuditEventRepository. Samodejno objavi dogodke preverjanja pristnosti, če se izvaja spring-security.
Omogočanje vzmetnega zagonskega aktuatorja
Aktivator lahko omogočimo z vbrizgavanjem odvisnosti vzmetni-zagonski-zaganjalnik v datoteki pom.xml.
org.springframework.boot spring-boot-starter-actuator 2.2.2.RELEASE
Končne točke vzmetnega zagonskega aktuatorja
Končne točke aktuatorjev nam omogočajo spremljanje in interakcijo z našo aplikacijo Spring Boot. Spring Boot vključuje številne vgrajene končne točke, v aplikaciji Spring Boot pa lahko dodamo tudi končne točke po meri.
Naslednja tabela opisuje pogosto uporabljene končne točke.
Id | Uporaba | Privzeto |
---|---|---|
aktuator | Zagotavlja hipermedijsko zasnovano stran odkritja za druge končne točke. Zahteva, da je Spring HATEOAS na poti razreda. | Prav |
revizijski dogodki | Izpostavlja informacije o revizijskih dogodkih za trenutno aplikacijo. | Prav |
autoconfig | Uporablja se za prikaz poročila o samodejni konfiguraciji, ki prikazuje vse kandidate za samodejno konfiguracijo in razlog, zakaj so 'bili' ali 'niso bili' uporabljeni. | Prav |
fižol | Uporablja se za prikaz celotnega seznama vseh spomladanskih fižolov v vaši aplikaciji. | Prav |
configprops | Uporablja se za prikaz združenega seznama vseh @ConfigurationProperties. | Prav |
smetišče | Uporablja se za izvedbo izpisa niti. | Prav |
okolj | Uporablja se za izpostavljanje lastnosti iz okolja Spring ConfigurableEnvironment. | Prav |
preletna pot | Uporablja se za prikaz vseh uporabljenih selitev baze podatkov Flyway. | Prav |
zdravje | Uporablja se za prikaz informacij o zdravju aplikacije. | False |
info | Uporablja se za prikaz poljubnih informacij o aplikaciji. | False |
drvarji | Uporablja se za prikaz in spreminjanje konfiguracije zapisovalcev v aplikaciji. | Prav |
tekoča baza | Uporablja se za prikaz vseh uporabljenih selitev baze podatkov Liquibase. | Prav |
meritve | Uporablja se za prikaz informacij o meritvah za trenutno aplikacijo. | Prav |
preslikave | Uporablja se za prikaz združenega seznama vseh poti @RequestMapping. | Prav |
ugasniti | Uporablja se za omogočanje elegantne zaustavitve aplikacije. | Prav |
sled | Uporablja se za prikaz informacij o sledenju. | Prav |
Za Spring MVC se uporabljajo naslednje dodatne končne točke.
Id | Opis | Privzeto |
---|---|---|
dokumenti | Uporablja se za prikaz dokumentacije, vključno z vzorčnimi zahtevami in odgovori za končne točke aktuatorja. | False |
heapdump | Uporablja se za vrnitev stisnjene GZip datoteke izpisa kopice hprof. | Prav |
jolokia | Uporablja se za izpostavljanje gradnikov JMX prek HTTP (ko je Jolokia na poti razreda). | Prav |
dnevniška datoteka | Uporablja se za vrnitev vsebine dnevniške datoteke. | Prav |
prometej | Uporablja se za izpostavitev metrik v formatu, ki ga lahko strga strežnik prometheus. Zahteva odvisnost od micrometer-registry- prometheus. | Prav |
Lastnosti aktuatorja Spring Boot
Spring Boot omogoča varnost za vse končne točke aktuatorja. Uporablja se na podlagi obrazca avtentikacijo, ki zagotavlja Uporabniško ime kot uporabnik in naključno ustvarjen geslo . Dostopamo lahko tudi do končnih točk, omejenih z aktuatorji, tako da prilagodimo varnost osnovnega avtoriziranja za končne točke. To konfiguracijo moramo preglasiti z upravljanje.varnostne.vloge premoženje. Na primer:
globalna var. v js
management.security.enabled=true management.security.roles=ADMIN security.basic.enabled=true security.user.name=admin security.user.passowrd=admin
Primer vzmetnega zagonskega aktuatorja
Razumejmo koncept aktuatorja na primeru.
Korak 1: Odpri Spring Initializr https://start.spring.io/ in ustvarite a Maven projekt.
2. korak: Zagotovite skupina ime. Zagotovili smo com.javatpoint.
3. korak: Zagotovite Artefakt Id. Zagotovili smo vzmetni-zagonski-aktuator-primer.
4. korak: Dodajte naslednje odvisnosti: Spring Web, Spring Boot Starter Actuator, in Brskalnik Spring Data Rest HAL .
5. korak: Kliknite na Ustvari gumb. Ko kliknemo na gumb Generiraj, zavije vse specifikacije, povezane s projektom, v a Jar datoteko in jo prenese v naš lokalni sistem.
6. korak: Ekstrahirajte datoteko Jar in jo prilepite v delovni prostor STS.
7. korak: Uvozite mapo projekta.
Datoteka -> Uvoz -> Obstoječi projekti Maven -> Prebrskaj -> Izberite mapo spring-boot-actuator-example -> Končaj
Uvoz traja nekaj časa. Po uvozu projekta lahko vidimo imenik projekta v razdelku raziskovalca paketov.
8. korak: Ustvarite razred krmilnika. Ustvarili smo razred krmilnika z imenom DemoRestController.
DemoRestController.java
package com.javatpoint; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RestController; @RestController public class DemoRestController { @GetMapping('/hello') public String hello() { return 'Hello User!'; } }
9. korak: Odprite aplikacija.lastnosti datoteko in onemogočite varnostno funkcijo aktuatorja, tako da dodate naslednjo izjavo.
aplikacija.lastnosti
management.security.enabled=false
10. korak: Zaženite SpringBootActuatorExampleApplication.java mapa.
11. korak: Odprite brskalnik in pokličite URL http://localhost:8080/actuator. Vrne naslednjo stran:
{'_links':{'self':{'href':'http://localhost:8080/actuator','templated':false},'health':{'href':'http://localhost:8080/actuator/health','templated':false},'health-path':{'href':'http://localhost:8080/actuator/health/{*path}','templated':true},'info':{'href':'http://localhost:8080/actuator/info','templated':false}}}
Aplikacija privzeto deluje na vratih 8080. Ko se aktuator zažene, lahko vidimo seznam vseh končnih točk, izpostavljenih prek HTTP.
Prikličimo zdravje končno točko s klicem URL-ja http://localhost:8080/actuator/health. Označuje status GOR . To pomeni, da je aplikacija zdrava in deluje brez prekinitev.
Podobno lahko prikličemo druge končne točke, ki nam pomagajo spremljati in upravljati aplikacijo Spring Boot.
Prenesi projekt