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

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

7 8 9
For *Spring Boot* applications the easiest way to show the version, is to 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].

For *non-Spring Boot* applications you can either add a `version` or `build.version` to the registration metadata and the version will show up in the application list.
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33

[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
34 35
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:
36 37 38 39 40 41 42 43 44 45 46 47 48

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

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

49
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.
50

51
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.
52 53 54 55 56 57 58 59 60

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

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

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

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

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

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

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

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

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

90
| spring.boot.admin.client.auto-deregistration
91 92
| 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`
93

94 95
| 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.
96 97
| `true`

98 99
| 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.
100 101
| Guessed based on management-url and `endpoints.health.id`.

102
| spring.boot.admin.client.instance.management-base-url
103 104 105
| 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`.

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

110
| spring.boot.admin.client.instance.service-base-url
111 112
| 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`.
113

114 115
| 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).
116
| Guessed based on service-base-url and `server.context-path`.
117

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

122
| spring.boot.admin.client.instance.prefer-ip
123 124
| 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`
125

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

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

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