Actuator veerlaars
Actuator veerlaars is een subproject van het Spring Boot Framework. Het bevat een aantal extra functies die ons helpen de Spring Boot-applicatie te monitoren en te beheren. Het bevat de actuatoreindpunten (de plaats waar de bronnen zich bevinden). We kunnen gebruiken HTTP En JMX eindpunten om de Spring Boot-applicatie te beheren en te monitoren. Als we productieklare functies in een applicatie willen krijgen, moeten we de S pring Boot-actuator.
alfa-bèta-snoeien
Kenmerken van veerlaarzenactuator
Er zijn drie belangrijkste kenmerken van Spring Boot Actuator:
Eindpunt: Met de actuatoreindpunten kunnen we de applicatie monitoren en ermee communiceren. Spring Boot biedt een aantal ingebouwde eindpunten. We kunnen ook ons eigen eindpunt creëren. We kunnen elk eindpunt afzonderlijk in- en uitschakelen. Het grootste deel van de applicatie kiest HTTP , waarbij de ID van het eindpunt, samen met het voorvoegsel van /actuator, wordt toegewezen aan een URL.
Bijvoorbeeld de /gezondheid eindpunt biedt de basisgezondheidsinformatie van een toepassing. De actuator heeft deze standaard toegewezen /actuator/gezondheid .
Statistieken: Spring Boot Actuator biedt dimensionale statistieken door te integreren met de micrometer . De micrometer is geïntegreerd in Spring Boot. Het is de instrumentatiebibliotheek die de levering van applicatiestatistieken vanuit Spring mogelijk maakt. Het biedt leveranciersneutrale interfaces voor timers, meters, tellers, distributieoverzichten, En lange taaktimers met een dimensionaal datamodel.
Controle: Spring Boot biedt een flexibel auditframework dat gebeurtenissen publiceert naar een AuditEventRepository. Het publiceert automatisch de authenticatiegebeurtenissen als spring-security wordt uitgevoerd.
Spring Boot Actuator inschakelen
We kunnen de actuator inschakelen door de afhankelijkheid te injecteren spring-boot-starter-actuator in het pom.xml-bestand.
org.springframework.boot spring-boot-starter-actuator 2.2.2.RELEASE
Spring Boot Actuator-eindpunten
Met de actuatoreindpunten kunnen we onze Spring Boot-applicatie monitoren en ermee communiceren. Spring Boot bevat een aantal ingebouwde eindpunten en we kunnen ook aangepaste eindpunten toevoegen aan de Spring Boot-toepassing.
In de volgende tabel worden de veelgebruikte eindpunten beschreven.
ID kaart | Gebruik | Standaard |
---|---|---|
aandrijving | Het biedt een op hypermedia gebaseerd ontdekkingspagina voor de andere eindpunten. Het vereist dat Spring HATEOAS zich op het klassenpad bevindt. | WAAR |
auditgebeurtenissen | Het geeft informatie over auditgebeurtenissen weer voor de huidige toepassing. | WAAR |
autoconfig | Het wordt gebruikt om een autoconfiguratierapport weer te geven waarin alle kandidaten voor autoconfiguratie worden weergegeven en de reden waarom ze wel of niet zijn toegepast. | WAAR |
bonen | Het wordt gebruikt om een volledige lijst weer te geven van alle Spring Beans in uw applicatie. | WAAR |
configuratieprops | Het wordt gebruikt om een verzamelde lijst van alle @ConfigurationProperties weer te geven. | WAAR |
dumpen | Het wordt gebruikt om een threaddump uit te voeren. | WAAR |
omg | Het wordt gebruikt om eigenschappen uit Spring's ConfigurableEnvironment beschikbaar te maken. | WAAR |
vliegroute | Het wordt gebruikt om eventuele Flyway-databasemigraties weer te geven die zijn toegepast. | WAAR |
gezondheid | Het wordt gebruikt om informatie over de status van applicaties weer te geven. | Vals |
informatie | Het wordt gebruikt om willekeurige applicatie-informatie weer te geven. | Vals |
houthakkers | Het wordt gebruikt om de configuratie van loggers in de applicatie te tonen en te wijzigen. | WAAR |
vloeibare basis | Het wordt gebruikt om eventuele Liquibase-databasemigraties weer te geven die zijn toegepast. | WAAR |
statistieken | Het wordt gebruikt om metrische gegevens voor de huidige toepassing weer te geven. | WAAR |
toewijzingen | Het wordt gebruikt om een verzamelde lijst van alle @RequestMapping-paden weer te geven. | WAAR |
afsluiten | Het wordt gebruikt om ervoor te zorgen dat de applicatie netjes wordt afgesloten. | WAAR |
spoor | Het wordt gebruikt om traceerinformatie weer te geven. | WAAR |
Voor Spring MVC worden de volgende aanvullende eindpunten gebruikt.
ID kaart | Beschrijving | Standaard |
---|---|---|
documenten | Het wordt gebruikt om documentatie weer te geven, inclusief voorbeeldverzoeken en antwoorden voor de eindpunten van de Actuator. | Vals |
hoop | Het wordt gebruikt om een met GZip gecomprimeerd hprof-heapdumpbestand terug te sturen. | WAAR |
jolokia | Het wordt gebruikt om JMX-bonen via HTTP beschikbaar te stellen (wanneer Jolokia zich op het klassenpad bevindt). | WAAR |
logbestand | Het wordt gebruikt om de inhoud van het logbestand terug te geven. | WAAR |
Prometheus | Het wordt gebruikt om statistieken weer te geven in een formaat dat door een prometheus-server kan worden geschraapt. Het vereist een afhankelijkheid van micrometer-register-prometheus. | WAAR |
Eigenschappen van Spring Boot-actuator
Spring Boot maakt beveiliging voor alle actuatoreindpunten mogelijk. Het gebruikt op vorm gebaseerd authenticatie die biedt gebruikersnaam als gebruiker en een willekeurig gegenereerde wachtwoord . We hebben ook toegang tot door de actuator beperkte eindpunten door de basicauth-beveiliging aan te passen aan de eindpunten. We moeten deze configuratie overschrijven door management.beveiliging.rollen eigendom. Bijvoorbeeld:
management.security.enabled=true management.security.roles=ADMIN security.basic.enabled=true security.user.name=admin security.user.passowrd=admin
Voorbeeld van veerlaarzenactuator
Laten we het concept van de actuator begrijpen aan de hand van een voorbeeld.
datamining
Stap 1: Open Spring Initializr https://start.spring.io/ en maak een Maven project.
Stap 2: Lever de Groep naam. Wij hebben voorzien com.javatpoint.
Stap 3: Lever de Artefact ID kaart. Wij hebben de spring-boot-actuator-voorbeeld.
Stap 4: Voeg de volgende afhankelijkheden toe: Spring Web, Spring Boot-startactuator, En Spring Data Rest HAL-browser .
bomen spreiden
Stap 5: Klik op de Genereer knop. Wanneer we op de knop Genereren klikken, worden alle specificaties met betrekking tot het project in een Kan bestand en downloadt het naar ons lokale systeem.
Stap 6: Pak het Jar-bestand uit en plak het in de STS-werkruimte.
Stap 7: Importeer de projectmap.
Verilog-zaakverklaring
Bestand -> Importeren -> Bestaande Maven-projecten -> Bladeren -> Selecteer de map spring-boot-actuator-example -> Voltooien
Het importeren duurt enige tijd. Na het importeren van het project kunnen we de projectmap zien in de pakketverkenner.
Stap 8: Maak een Controller-klasse. We hebben de controllerklasse gemaakt met de naam 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!'; } }
Stap 9: Open de applicatie.eigenschappen bestand en schakel de beveiligingsfunctie van de actuator uit door de volgende verklaring toe te voegen.
applicatie.eigenschappen
management.security.enabled=false
Stap 10: Voer de ... uit SpringBootActuatorExampleApplication.java bestand.
Stap 11: Open de browser en roep de URL http://localhost:8080/actuator op. Het retourneert de volgende 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}}}
De applicatie draait standaard op poort 8080. Zodra de actuator is gestart, kunnen we de lijst zien met alle eindpunten die via HTTP worden weergegeven.
Laten we een beroep doen op de gezondheid eindpunt door de URL http://localhost:8080/actuator/health aan te roepen. Het geeft de status aan OMHOOG . Het betekent dat de applicatie gezond is en zonder enige onderbreking draait.
Op dezelfde manier kunnen we andere eindpunten aanroepen die ons helpen de Spring Boot-applicatie te controleren en te beheren.
tekenreeks toevoegen
Project downloaden