Fjærstøvelaktuator
Fjærstøvelaktuator er et delprosjekt av Spring Boot Framework. Den inneholder en rekke tilleggsfunksjoner som hjelper oss med å overvåke og administrere Spring Boot-applikasjonen. Den inneholder aktuatorendepunktene (stedet der ressursene bor). Vi kan bruke HTTP og JMX endepunkter for å administrere og overvåke Spring Boot-applikasjonen. Hvis vi ønsker å få produksjonsklare funksjoner i en applikasjon, bør vi bruke S pring Boot aktuator.
Fjærstøvelaktuatorfunksjoner
Det er tre hovedfunksjoner til Spring Boot Actuator:
Endepunkt: Aktuatorendepunktene lar oss overvåke og samhandle med applikasjonen. Spring Boot gir en rekke innebygde endepunkter. Vi kan også lage vårt eget endepunkt. Vi kan aktivere og deaktivere hvert endepunkt individuelt. De fleste av applikasjonen velger HTTP , hvor Id-en til endepunktet, sammen med prefikset til /aktuator, er tilordnet en URL.
nummer alfabetet
For eksempel /Helse endepunkt gir grunnleggende helseinformasjon for en applikasjon. Aktuatoren, som standard, tilordnet den til /aktuator/helse .
Beregninger: Spring Boot Actuator gir dimensjonale beregninger ved å integrere med mikrometer . Mikrometeret er integrert i Spring Boot. Det er instrumenteringsbiblioteket som driver leveringen av applikasjonsberegninger fra Spring. Det gir leverandørnøytrale grensesnitt for tidtakere, målere, tellere, distribusjonssammendrag, og lange oppgavetidtakere med en dimensjonal datamodell.
Revidere: Spring Boot gir et fleksibelt revisjonsrammeverk som publiserer hendelser til en AuditEventRepository. Den publiserer automatisk autentiseringshendelsene hvis spring-security er i gang.
Aktiverer Spring Boot Actuator
Vi kan aktivere aktuatoren ved å injisere avhengigheten fjær-boot-starter-aktuator i pom.xml-filen.
org.springframework.boot spring-boot-starter-actuator 2.2.2.RELEASE
Fjærstøvelaktuator endepunkter
Aktuatorendepunktene lar oss overvåke og samhandle med vår Spring Boot-applikasjon. Spring Boot inkluderer antall innebygde endepunkter, og vi kan også legge til egendefinerte endepunkter i Spring Boot-applikasjonen.
Tabellen nedenfor beskriver de mye brukte endepunktene.
ID | Bruk | Misligholde |
---|---|---|
aktuator | Det gir en hypermedia-basert oppdagelsesside for de andre endepunktene. Det krever at Spring HATEOAS er på klassestien. | ekte |
revisjonsarrangementer | Den viser informasjon om revisjonshendelser for gjeldende applikasjon. | ekte |
autokonfig | Den brukes til å vise en autokonfigurasjonsrapport som viser alle autokonfigurasjonskandidater og årsaken til at de 'ble' eller 'ikke ble brukt'. | ekte |
bønner | Den brukes til å vise en fullstendig liste over alle vårbønnene i applikasjonen din. | ekte |
configprops | Den brukes til å vise en samlet liste over alle @ConfigurationProperties. | ekte |
dump | Den brukes til å utføre en tråddumping. | ekte |
env | Den brukes til å eksponere egenskaper fra Springs ConfigurableEnvironment. | ekte |
flyway | Den brukes til å vise alle Flyway-databasemigreringer som har blitt brukt. | ekte |
Helse | Den brukes til å vise applikasjonshelseinformasjon. | Falsk |
info | Den brukes til å vise vilkårlig programinformasjon. | Falsk |
loggere | Den brukes til å vise og endre konfigurasjonen av loggere i applikasjonen. | ekte |
liquibase | Den brukes til å vise eventuelle Liquibase-databasemigreringer som har blitt brukt. | ekte |
beregninger | Den brukes til å vise metrikkinformasjon for gjeldende applikasjon. | ekte |
kartlegginger | Den brukes til å vise en samlet liste over alle @RequestMapping-baner. | ekte |
skru av | Den brukes til å tillate at applikasjonen stenges elegant. | ekte |
spore | Den brukes til å vise sporingsinformasjon. | ekte |
For Spring MVC brukes følgende tilleggsendepunkter.
ID | Beskrivelse | Misligholde |
---|---|---|
dokumenter | Den brukes til å vise dokumentasjon, inkludert eksempelforespørsler og svar for aktuatorens endepunkter. | Falsk |
heapdump | Den brukes til å returnere en GZip-komprimert hprof-heap-dump-fil. | ekte |
jolokia | Den brukes til å eksponere JMX-bønner over HTTP (når Jolokia er på klassebanen). | ekte |
loggfil | Den brukes til å returnere innholdet i loggfilen. | ekte |
prometheus | Den brukes til å eksponere beregninger i et format som kan skrapes av en prometheus-server. Det krever en avhengighet av mikrometer-register-prometheus. | ekte |
Spring Boot aktuator egenskaper
Spring Boot muliggjør sikkerhet for alle aktuatorendepunkter. Det bruker skjemabasert autentisering som gir bruker-ID som brukeren og en tilfeldig generert passord . Vi kan også få tilgang til aktuatorbegrensede endepunkter ved å tilpasse grunnleggende autentiseringssikkerhet til endepunktene. Vi må overstyre denne konfigurasjonen med ledelse.sikkerhetsroller eiendom. For eksempel:
management.security.enabled=true management.security.roles=ADMIN security.basic.enabled=true security.user.name=admin security.user.passowrd=admin
Eksempel på fjærstøvelaktuator
La oss forstå konseptet med aktuatoren gjennom et eksempel.
Trinn 1: Open Spring Initializr https://start.spring.io/ og lage en Maven prosjekt.
Steg 2: Gi Gruppe Navn. Vi har gitt com.javatpoint.
Trinn 3: Gi Gjenstand ID. Vi har gitt fjær-boot-aktuator-eksempel.
Trinn 4: Legg til følgende avhengigheter: Spring Web, Spring Boot Starter Actuator, og Spring Data Rest HAL-nettleser .
Trinn 5: Klikk på generere knapp. Når vi klikker på Generer-knappen, pakker den inn alle spesifikasjonene knyttet til prosjektet i en Krukke fil og laster den ned til vårt lokale system.
Trinn 6: Pakk ut Jar-filen og lim den inn i STS-arbeidsområdet.
Trinn 7: Importer prosjektmappen.
Fil -> Importer -> Eksisterende Maven-prosjekter -> Bla gjennom -> Velg mappen spring-boot-actuator-example -> Fullfør
usignert int c-programmering
Det tar litt tid å importere. Etter å ha importert prosjektet, kan vi se prosjektkatalogen i pakkeutforsker-delen.
Trinn 8: Opprett en Controller-klasse. Vi har laget kontrollerklassen med navnet 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!'; } }
Trinn 9: Åpne applikasjonsegenskaper fil og deaktiver sikkerhetsfunksjonen til aktuatoren ved å legge til følgende setning.
applikasjonsegenskaper
management.security.enabled=false
Trinn 10: Kjør SpringBootActuatorExampleApplication.java fil.
.tif-fil
Trinn 11: Åpne nettleseren og påkall URL http://localhost:8080/actuator. Den returnerer følgende side:
{'_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}}}
Programmet kjører på port 8080 som standard. Når aktuatoren har startet, kan vi se listen over alle endepunktene som er eksponert over HTTP.
La oss påkalle Helse endepunkt ved å påkalle URLen http://localhost:8080/actuator/health. Det angir status OPP . Det betyr at applikasjonen er sunn og kjører uten avbrudd.
På samme måte kan vi påkalle andre endepunkter som hjelper oss med å overvåke og administrere Spring Boot-applikasjonen.
Last ned prosjektet