client.adoc 5.33 KB
Newer Older
1 2 3 4 5 6
[[client-applications]]
== Client applications ==

[[show-version-in-application-list]]
=== Show version in application list ===

7
To have the version show up in the application list you can use the `build-info` goal from the `spring-boot-maven-plugin`, which generates the `META-INF/build-info.properties`. See also the http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#howto-build-info[Spring Boot Reference Guide].
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

[source,xml]
.pom.xml
----
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <executions>
                <execution>
                    <goals>
                        <goal>build-info</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
----

[[jmx-bean-management]]
=== JMX-bean management ===

Johannes Edmeier committed
32 33
To interact with JMX-beans in the admin UI you have to include https://jolokia.org/[Jolokia] in your application. As Jolokia is servlet based there is no support for reactive applications.
In case you are using the `spring-boot-admin-starter-client` it will be pulled in for you, if not add Jolokia to your dependencies:
34 35 36 37 38 39 40 41 42 43 44 45 46

[source,xml]
.pom.xml
----
<dependency>
    <groupId>org.jolokia</groupId>
    <artifactId>jolokia-core</artifactId>
</dependency>
----

[[spring-boot-admin-client]]
=== Spring Boot Admin Client ===

47
The Spring Boot Admin Client registers the application at the admin server. This is done by periodically doing a HTTP post request to the SBA Server providing information about the application. It also adds Jolokia to your application, so that JMX-beans are accessible via HTTP.
48

49
TIP: There are plenty of properties to influence the way how the SBA Client registers your application. In case that doesn't fit your needs, you can provide your own `AppliationFactory` implementation.
50 51 52 53 54 55 56 57 58

.Spring Boot Admin Client configuration options
|===
| Property name |Description |Default value

| spring.boot.admin.client.enabled
| Enables the Spring Boot Admin Client.
| `true`

59
| spring.boot.admin.client.url
60 61 62
| Comma separated ordered list of URLs of the Spring Boot Admin server to register at. This triggers the AutoConfiguration. *Mandatory*.
|

63
| spring.boot.admin.client.api-path
64
| Http-path of registration endpoint at your admin server.
Johannes Edmeier committed
65
| `"instances"`
66

67 68
| spring.boot.admin.client.username +
spring.boot.admin.client.password
69
| Username and password in case the SBA Server api is protected with HTTP Basic authentication.
70 71
|

72
| spring.boot.admin.client.period
73
| Interval for repeating the registration (in ms).
Johnny Lim committed
74
| `10,000`
75

Johannes Edmeier committed
76
| spring.boot.admin.client.connect-timeout
77
| Connect timeout for the registration (in ms).
Johnny Lim committed
78
| `5,000`
79

Johannes Edmeier committed
80
| spring.boot.admin.client.read-timeout
81
| Read timeout for the registration (in ms).
Johnny Lim committed
82
| `5,000`
83

Johannes Edmeier committed
84
| spring.boot.admin.client.auto-registration
85 86 87
| If set to true the periodic task to register the application is automatically scheduled after the application is ready.
| `true`

88
| spring.boot.admin.client.auto-deregistration
89 90
| Switch to enable auto-deregistration at Spring Boot Admin server when context is closed. If the value is unset the feature is active if a running CloudPlatform was detected.
| `null`
91

92 93
| spring.boot.admin.client.register-once
| If set to true the client will only register against one admin server (in order defined by `spring.boot.admin.instance.url`); if that admin server goes down, will automatically register against the next admin server. If false, will register against all admin servers.
94 95
| `true`

96 97
| spring.boot.admin.client.instance.health-url
| Health-url to register with. Can be overridden in case the reachable URL is different (e.g. Docker). Must be unique in registry.
98 99
| Guessed based on management-url and `endpoints.health.id`.

100
| spring.boot.admin.client.instance.management-base-url
101 102 103
| Base url for computing the management-url to register with. The path is inferred at runtime, and appended to the base url.
| Guessed based on `management.port`, service-url and `server.servlet-path`.

104
| spring.boot.admin.client.instance.management-url
105
| Management-url to register with. Can be overridden in case the reachable url is different (e.g. Docker).
Johnny Lim committed
106
| Guessed based on management-base-url and `management.context-path`.
107

108
| spring.boot.admin.client.instance.service-base-url
109 110
| Base url for computing the service-url to register with. The path is inferred at runtime, and appended to the base url.
| Guessed based on hostname, `server.port`.
111

112 113
| spring.boot.admin.client.instance.service-url
| Service-url to register with. Can be overridden in case the reachable url is different (e.g. Docker).
114
| Guessed based on service-base-url and `server.context-path`.
115

116
| spring.boot.admin.client.instance.name
117 118 119
| Name to register with.
| `${spring.application.name}` if set, `"spring-boot-application"` otherwise.

120
| spring.boot.admin.client.instance.prefer-ip
121 122
| Use the ip-address rather then the hostname in the guessed urls. If `server.address` / `management.address` is set, it get used. Otherwise the IP address returned from `InetAddress.getLocalHost()` gets used.
| `false`
123

124 125
| spring.boot.admin.client.instance.metadata.*
| Metadata key-value-pairs to be asscoiated with this instance.
126
|
127
|===
128

129 130 131 132 133 134 135 136 137
.Instance metadata options
|===
| Key |Value |Default value

| user.name +
user.password
| Credentials being used to access the endpoints.
|
|===