SpringBoot-監視管理
1.監視と管理
spring-boot-starter-actuatorを導入することで、SpringBootが提供する準本番環境でアプリケーションの監視および管理機能を使用できます。HTTP、JMX、SSHプロトコルを介して動作し、監査、ヘルス、インジケーター情報などを自動的に取得できます。
1.依存関係を導入する
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
2.構成
server:
port: 8015
spring:
application:
name: springboot-actuator
management:
endpoints:
web:
exposure:
include: "*" #打开所有的监控点
base-path: /monitor #自定义监控路径默认为http://localhost:8015/actuator
endpoint:
health:
show-details: always
shutdown:
enabled: true #通过指定接口关闭springboot
# 描述项目基础信息
info:
app:
name: boot-actuator
port: 8015
version: 1.0.0
author: glp
個々の権限を個別に構成することもできます。
# 开启beans 、 mappings 访问
management.endpoints.web.exposure.include=beans,mappings
3.httpを介して監視エンドポイントにアクセスします
詳細は以下のとおりです。
/auditevents
:アプリケーションによって公開された監査イベントを表示します(認証エントリと同様)/beans
:アプリケーション内のすべてのSpringBeanの完全なリストを表示します/caches
:公開されているキャッシュ/条件:構成クラスと自動構成クラスで評価された条件と、それらが一致する理由または一致しない理由を示します/configprops
:すべての@ConfigurationPropertieの照合リストを表示します/env
:すべての環境プロパティを取得します/flyway
:Flywayデータベースの移行情報のコピーを提供する/health
:アプリケーションの実行ステータスに関する情報を表示します/httptrace
:HTTP追跡情報を表示します(デフォルトでは、最後の100個のHTTP要求/応答交換)/info
:アプリケーションのカスタマイズされた情報を取得します。これは、情報の先頭にある属性によって提供されます。/integrationgraph
:Spring Integrationダイアグラムを表示し、spring-integration-
coreに依存する必要があります/loggers
:アプリケーションの構成を表示および変更します/liquibase
:適用されたすべてのLiquibaseデータベースの移行を表示します/metrics/{name}
:指定された名前のアプリケーションメトリックをレポートします/mappings
:すべての@RequestMappingパスのリストを表示します/scheduledtasks
:アプリケーションでスケジュールされたタスクを表示する/sessions
:Spring Sessionでサポートされているセッションストレージからのユーザーセッションの取得と削除を許可し、SpringSessionサーブレットベースのWebアプリケーションを使用する必要があります/shutdown
:アプリケーションを通常どおり閉じます。デフォルトでは無効になっています/threaddump
:スレッドアクティビティのスナップショットを作成します
(1)プロジェクトの説明情報
http:// localhost:8015 / monitor / info
にアクセスして、git関連情報を説明するgit.propertiesを記述します。
git.branch =master
git.commit.id = 3333
git.commit.time = 2017-12-12 12:12:12
(2)スレッド情報にアクセスする
http:// localhost:8015 / monitor / threaddump
(3)HeapDumpインターフェース
JvmヒープダンプファイルHeapDumpを自動的に生成します。監視ツールVisualVMを使用してこのファイルを開き、メモリスナップショットを表示できます。
http:// localhost:8015 / monitor / headdump
(4)ヘルス
ヘルスは主にアプリケーションの実行ステータスを確認するために使用されます
http:// localhost:8015 / monitor / health
{
"status":"UP","components":
{
"diskSpace":
{
"status":"UP","details":
{
"total":149264121856,
"free":78478319616,
"threshold":10485760,
"exists":true}},
"ping":{
"status":"UP"}}}
(5)マッピングインターフェイス
説明リクエストマッピング情報
http:// localhost:8015 / monitor / mappings
{
"contexts":{
"springboot-actuator":
{
"mappings":
{
"dispatcherServlets":
{
"dispatcherServlet":
[{
"handler":"Actuator web endpoint 'health'",
"predicate":
"{
GET [/monitor/health], produces
(6)Beansインターフェース
は、Beanのタイプ、シングルトンの複数インスタンス、エイリアス、クラスのフルパス、依存関係Jarなどを表示します。
http:// localhost:8015 / monitor / Beans
(7)条件インターフェース
設定が有効な条件、または自動設定が無効な理由を確認してください。
http:// localhost:8015 / monitor / Conditions
(8)ShutDownインターフェースはSpringBootアプリケーションを
正常にシャットダウンします。デフォルトではPOSTリクエストのみがサポートされています
POSTによるアクセス:http:// localhost:8015 / monitor / shutdown