Ich habe Spring Boot bis zu Spring with Kotorin-- 4. REST API Design berührt. Unter dem Gesichtspunkt der Ausführung der Anwendung habe ich das Verfahren gesehen, mit dem es funktioniert, obwohl es sehr einfach ist. Andererseits haben wir im Hinblick auf die Überwachung der Anwendung keine Maßnahmen ergriffen. In Spring Boot gibt es eine Funktion namens ** Actuator **, die ein Überwachungstool einfach implementieren kann, daher werde ich versuchen, es zu verwenden.
Die hier verwendete Version von Spring Boot war übrigens ** 2.x series **. Es gibt verschiedene Verbesserungen und Unterschiede zwischen der 1.x-Serie und der 2.x-Serie. Der Aktuator, den ich dieses Mal verwenden möchte, weist auch Unterschiede zwischen der 1.x-Serie und der 2.x-Serie auf, daher möchte ich auch die Unterschiede sehen.
Spring Dependencies
Definieren Sie zum Aktivieren des Federaktuators die folgende Abhängigkeit in build.gradle.
implementation('org.springframework.boot:spring-boot-starter-actuator')
Sie können es nur damit verwenden. Greifen Sie danach auf den Endpunkt zu, der im folgenden Dokument "Endpunkte" beschrieben ist. Auf diese Weise können Sie verschiedene Informationen über HTTP erhalten.
Beispiel: GESUNDHEIT
$ curl 'http://localhost:8080/actuator/health' -i -X GET
HTTP/1.1 200
Content-Type: application/vnd.spring-boot.actuator.v2+json;charset=UTF-8
Transfer-Encoding: chunked
Date: Sun, 11 Nov 2018 13:08:00 GMT
{"status":"UP"}
Es gibt viele Unterschiede, aber hier sind einige typische Dinge, die bei der Migration von 1.x auf 2.x auftreten können.
In 1.x wurde direkt auf den Endpunkt zugegriffen, um die Informationen anzuzeigen. : http: // localhost: 8080 / health
In 2.x erfolgt der Zugriff durch Angabe des Basispfads vor dem Endpunkt. : http: // localhost: 8080 / <Basispfad> / health
Standardmäßig lautet der Basispfad ** / Aktor **.
Um es zu ändern, definieren Sie es in der Konfigurationsdatei (application.yml). Sie können die Basisperspektive ändern, indem Sie sie wie folgt definieren. Im folgenden Beispiel lautet der Basispfad "/ admin".
management:
endpoints:
web:
base-path: /admin
In 1.x wurden Endpunkte vorveröffentlicht. In 2.x sind die einzigen exponierten Endpunkte "/ health" und "/ info". -> Referenz
Um auch in 2.x alles im Voraus zu veröffentlichen, definieren Sie es in der Einstellungsdatei (application.yml) wie folgt.
management:
endpoints:
web:
exposure:
include: "*"
In diesem Beispiel wird das Veröffentlichungsziel durch Sternchen (\ *) angegeben. Wenn Sie es jedoch einzeln angeben, können Sie es veröffentlichen, indem Sie den Zielendpunkt beschreiben.
include: beans, env
Actuator ist ein praktisches Tool, das Sie nur durch Hinzufügen von Abhängigkeiten verwenden können. Daher denke ich, dass es Möglichkeiten gibt, es in vielen Situationen zu verwenden, aber da sich die Zugriffsmethode und das Ziel zwischen der 1.x-Serie und der 2.x-Serie bei der Migration auf die 2.x-Serie geändert haben Ich möchte aufpassen, dass ich nicht 404 bekomme.
Recommended Posts