Attuatore a molla
Attuatore a molla è un sottoprogetto dello Spring Boot Framework. Include una serie di funzionalità aggiuntive che ci aiutano a monitorare e gestire l'applicazione Spring Boot. Contiene gli endpoint dell'attuatore (il luogo in cui vivono le risorse). Possiamo usare HTTP E JMX endpoint per gestire e monitorare l'applicazione Spring Boot. Se vogliamo ottenere funzionalità pronte per la produzione in un'applicazione, dovremmo utilizzare il metodo S pring Attuatore di avvio.
Caratteristiche dell'attuatore a molla
Ci sono tre caratteristiche principali dell'attuatore Spring Boot:
Punto finale: Gli endpoint dell'attuatore ci consentono di monitorare e interagire con l'applicazione. Spring Boot fornisce una serie di endpoint integrati. Possiamo anche creare il nostro endpoint. Possiamo abilitare e disabilitare ciascun endpoint individualmente. La maggior parte delle applicazioni scelgono HTTP , dove l'ID dell'endpoint, insieme al prefisso di /attuatore, è mappato su un URL.
impilare in ds
Ad esempio, il /salute L'endpoint fornisce le informazioni di base sull'integrità di un'applicazione. L'attuatore, per impostazione predefinita, lo ha mappato /attuatore/salute .
Metrica: Spring Boot Actuator fornisce metriche dimensionali integrandosi con micrometro . Il micrometro è integrato in Spring Boot. È la libreria di strumentazione che alimenta la distribuzione delle metriche applicative da Spring. Fornisce interfacce indipendenti dal fornitore per timer, indicatori, contatori, riepiloghi di distribuzione, E timer di attività lunghi con un modello di dati dimensionali.
Verifica: Spring Boot fornisce un framework di controllo flessibile che pubblica eventi su un file Repository degli eventi di controllo. Pubblica automaticamente gli eventi di autenticazione se Spring-Security è in esecuzione.
Abilitazione dell'attuatore Spring Boot
Possiamo abilitare l'attuatore iniettando la dipendenza attuatore-avviamento-molla-boot nel file pom.xml.
org.springframework.boot spring-boot-starter-actuator 2.2.2.RELEASE
Endpoint dell'attuatore Spring Boot
Gli endpoint dell'attuatore ci consentono di monitorare e interagire con la nostra applicazione Spring Boot. Spring Boot include un numero di endpoint integrati e possiamo anche aggiungere endpoint personalizzati nell'applicazione Spring Boot.
La tabella seguente descrive gli endpoint ampiamente utilizzati.
Id | Utilizzo | Predefinito |
---|---|---|
attuatore | Fornisce un servizio basato su ipermedia pagina di scoperta per gli altri endpoint. Richiede che Spring HATEOAS sia sul percorso di classe. | VERO |
eventi di controllo | Espone le informazioni sugli eventi di controllo per l'applicazione corrente. | VERO |
configurazione automatica | Viene utilizzato per visualizzare un report di configurazione automatica che mostra tutti i candidati alla configurazione automatica e il motivo per cui 'erano' o 'non erano' applicati. | VERO |
fagioli | Viene utilizzato per visualizzare un elenco completo di tutti i bean Spring nella tua applicazione. | VERO |
configprops | Viene utilizzato per visualizzare un elenco fascicolato di tutti i @ConfigurationProperties. | VERO |
scarico | Viene utilizzato per eseguire un dump del thread. | VERO |
ambi | Viene utilizzato per esporre le proprietà da ConfigurableEnvironment di Spring. | VERO |
Vola via | Viene utilizzato per mostrare eventuali migrazioni del database Flyway applicate. | VERO |
salute | Viene utilizzato per mostrare informazioni sullo stato dell'applicazione. | Falso |
informazioni | Viene utilizzato per visualizzare informazioni arbitrarie sull'applicazione. | Falso |
logger | Viene utilizzato per mostrare e modificare la configurazione dei logger nell'applicazione. | VERO |
liquibase | Viene utilizzato per mostrare eventuali migrazioni del database Liquibase che sono state applicate. | VERO |
metrica | Viene utilizzato per mostrare le informazioni sulle metriche per l'applicazione corrente. | VERO |
mappature | Viene utilizzato per visualizzare un elenco fascicolato di tutti i percorsi @RequestMapping. | VERO |
fermare | Viene utilizzato per consentire l'arresto regolare dell'applicazione. | VERO |
traccia | Viene utilizzato per visualizzare le informazioni sulla traccia. | VERO |
Per Spring MVC vengono utilizzati i seguenti endpoint aggiuntivi.
Id | Descrizione | Predefinito |
---|---|---|
documenti | Viene utilizzato per visualizzare la documentazione, incluse richieste e risposte di esempio per gli endpoint dell'Attuatore. | Falso |
heapdump | Viene utilizzato per restituire un file di dump heap hprof compresso GZip. | VERO |
jolokia | Viene utilizzato per esporre i bean JMX su HTTP (quando Jolokia è sul classpath). | VERO |
logfile | Viene utilizzato per restituire il contenuto del file di registro. | VERO |
Prometeo | Viene utilizzato per esporre le metriche in un formato che può essere recuperato da un server Prometheus. Richiede una dipendenza dal registro micrometrico-Prometeo. | VERO |
Proprietà dell'attuatore Spring Boot
Spring Boot garantisce la sicurezza per tutti gli endpoint dell'attuatore. Utilizza basato su moduli autenticazione che fornisce ID utente come utente e un file generato casualmente parola d'ordine . Possiamo anche accedere agli endpoint limitati dagli attuatori personalizzando la sicurezza di autenticazione di base per gli endpoint. Dobbiamo sovrascrivere questa configurazione tramite ruoli.di.gestione.della.sicurezza proprietà. Per esempio:
management.security.enabled=true management.security.roles=ADMIN security.basic.enabled=true security.user.name=admin security.user.passowrd=admin
Esempio di attuatore con soffietto a molla
Capiamo il concetto di attuatore attraverso un esempio.
Passo 1: Inizializzazione primavera aperta https://start.spring.io/ e creare un Esperto di progetto.
Passo 2: Fornire il Gruppo nome. Abbiamo fornito com.javatpoint.
Passaggio 3: Fornire il Artefatto Id. Abbiamo fornito il esempio di attuatore a molla.
Passaggio 4: Aggiungi le seguenti dipendenze: Spring Web, attuatore di avviamento Spring Boot, E Browser HAL Spring Data Rest .
Passaggio 5: Clicca sul creare pulsante. Quando facciamo clic sul pulsante Genera, racchiude tutte le specifiche relative al progetto in un file Vaso file e lo scarica sul nostro sistema locale.
Passaggio 6: Estrai il file Jar e incollalo nell'area di lavoro STS.
Passaggio 7: Importa la cartella del progetto.
File -> Importa -> Progetti Maven esistenti -> Sfoglia -> Seleziona la cartella spring-boot-actuator-example -> Fine
alya manasa
L'importazione richiede del tempo. Dopo aver importato il progetto, possiamo vedere la directory del progetto nella sezione Explorer pacchetto.
Passaggio 8: Crea una classe Controller. Abbiamo creato la classe controller con il nome 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!'; } }
Passaggio 9: Apri il proprietà.applicazione file e disabilitare la funzionalità di sicurezza dell'attuatore aggiungendo la seguente istruzione.
proprietà.applicazione
management.security.enabled=false
Passaggio 10: Corri il SpringBootActuatorExampleApplication.java file.
stringa in int
Passaggio 11: Aprire il browser e richiamare l'URL http://localhost:8080/actuator. Restituisce la seguente pagina:
{'_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}}}
Per impostazione predefinita, l'applicazione viene eseguita sulla porta 8080. Una volta avviato l'attuatore, possiamo vedere l'elenco di tutti gli endpoint esposti su HTTP.
Invochiamo il salute endpoint richiamando l'URL http://localhost:8080/actuator/health. Denota lo stato SU . Significa che l'applicazione è integra e funziona senza alcuna interruzione.
Allo stesso modo, possiamo invocare altri endpoint che ci aiutano a monitorare e gestire l'applicazione Spring Boot.
Scarica progetto