Commit Graph

464 Commits

Author SHA1 Message Date
Phillip Webb 14c6243637 Refactor PublicMetrics registration
Rework flexible PublicMetrics registration introduced in 2be6b3e4 to
restore compatibility with v1.1 VanillaPublicMetrics. The new
MetricReaderPublicMetrics class now exposes metrics from a MetricReader
and VanillaPublicMetrics is deprecated. The MetricsEndpoint can now
exposes a collection of PublicMetric interface directly.

See gh-1094
2014-07-29 12:31:40 -07:00
Andy Wilkinson 2abf3ebdc3 Merge branch '1.1.x' 2014-07-29 15:12:11 +01:00
Andy Wilkinson 333bc3e842 Avoid RS.getObject(index, Object.class) as it breaks MySQL on Java 7
Previously, when running on Java 7+, the JDBC query driven by
DataSourceHealthIndicator resulted in a call to
ResultSet.getObject(index, Object.class). When using MySQL's JDBC
driver this failed with an SQLException with the message "Conversion
not supported for type java.lang.Object". The problem does not occur
on Java 6 as the overload of getObject that takes a type does not
exist; ResultSet.getObject(index) is called instead and MySQL happily
returns whatever type it deems to be appropriate for the column.

This commit updates DataSourceHealthIndicator so that
ResultSet.getObject(index) will always be used, irrespective of the
version of Java that Boot is running on.

Closes #1306
2014-07-29 15:11:53 +01:00
Phillip Webb 53d24301d1 Merge branch '1.1.x' 2014-07-28 15:41:42 -07:00
Phillip Webb f8bf0e2031 Polish 2014-07-28 15:40:40 -07:00
Christian Dupuis 68163a66a5 Change query in MongoHealthIndicator
This commit changes the query in MongoHealthIndicator from serverStatus to buildInfo to avoid unprivileged access and corresponding errors.

fixes #1289
2014-07-24 10:07:36 +02:00
Christian Dupuis 13ee41d04d Change query in MongoHealthIndicator
This commit changes the query in MongoHealthIndicator from serverStatus to buildInfo to avoid unprivileged access and corresponding errors.

fixes #1289
2014-07-24 10:06:40 +02:00
Christian Dupuis 99b3240ab2 Ensure custom HTTP code mappings for /health don't remove default mappings
Previously any custom http code mapping would remove the default mappings. With this commit the behaviour is changed so that default mappings will stay if a custom mapping is registered. Certainly a default mapping can be overridden.

fixes #1264
2014-07-21 17:06:41 +02:00
Christian Dupuis 977c5a988c Ensure custom HTTP code mappings for /health don't remove default mappings
Previously any custom http code mapping would remove the default mappings. With this commit the behaviour is changed so that default mappings will stay if a custom mapping is registered. Certainly a default mapping can be overridden.

fixes #1264
2014-07-21 16:11:47 +02:00
Christian Dupuis 2f28a1017c Polish and re-add author name 2014-07-18 12:37:02 +02:00
Stephane Nicoll 2be6b3e419 Flexible registration of additional PublicMetrics
This commit permits the use of several PublicMetrics instances by
default. Previously, only one PublicMetrics service could be specified
and a user configuration would remove all the defaulting.

VanillaPublicMetrics now takes a collection of PublicMetrics and
invokes them in sequence to build the final collection of metrics.
The system-related metrics have been moved to SystemPublicMetrics and
are registered by default.

Also updated the documentation to mention this feature and how it
could be fully overridden.

Fixes gh-1094
2014-07-17 16:19:05 +02:00
Christian Dupuis 99971a6578 Fix HTTP status code mapping in HealthMvcEndpoint
refs #1264
2014-07-17 16:12:06 +02:00
Stephane Nicoll 249e09d9bc Switch master to 1.2.0.BUILD-SNAPSHOT 2014-07-11 10:44:05 +02:00
Spring Buildmaster 40327e1ae6 Next development version 2014-07-08 02:33:36 -07:00
Phillip Webb fa88c481a5 Remote trailing whitespace 2014-07-02 15:17:14 -07:00
Dave Syer 2a1ccfeade Allow /mappings to be disabled (fixes gh-1185) 2014-06-28 07:21:30 +01:00
Spring Buildmaster 981669b7c0 Next development version 2014-06-26 14:09:54 -07:00
Phillip Webb 200cd535c2 Revert "Next development version"
This reverts commit 67189477fe.
2014-06-26 11:03:09 -07:00
Spring Buildmaster 67189477fe Next development version 2014-06-26 10:51:35 -07:00
Phillip Webb 9632abf825 Formatting and cleanup 2014-06-26 09:41:15 -07:00
Dave Syer 123ffd736c Exclude @ManagedResources from Endpoint MBeans
If an Endpoint is already @ManagedResource then it doesn't need
an additional (probably wrong) MBEan registration based on the invoke()
method.
2014-06-26 16:11:56 +01:00
Phillip Webb 1f36d4657f Fix various Windows related issues
Fixes gh-1168
2014-06-25 14:31:41 -07:00
Spring Buildmaster 542f3cbda8 Next development version 2014-06-24 13:53:56 -07:00
Dave Syer 0d5c30fdcc Add instance.uptime to VanillaPublicMetrics 2014-06-24 15:16:49 +01:00
Christian Dupuis b5d65bfc56 Delegate shell access decision to bean named "shellAccessDecisionManager"
In order to solve issues with multiple or incompatible AccessDecisionManagers, the CRaSH integration will now only delegate to an explicit shellAccessDecisionManager bean refs #1121
2014-06-20 13:58:52 +02:00
Christian Dupuis edffabeee4 Make sure Spring related security beans for the shell are not installed if not wanted
refs #1121
2014-06-18 16:58:07 +02:00
Christian Dupuis b439d3522e Fix VanillaHealthIndicator javadoc 2014-06-17 19:57:00 +02:00
Tobias Gesellchen 21846f3bc7 update javadoc and test method to reflect current implementation 2014-06-17 18:10:24 +02:00
Dave Syer 59e177d298 Default endpoints.jmx.domain to the spring.jmx.default_domain 2014-06-17 13:01:04 +01:00
Stephane Nicoll b646231327 Properly close context hierarchy in tests
Prior to this commit, some tests were creating a parent/child
relationship but were only closing the child context. This could
be an issue with the autoconfig module as a lot of auto-config
kicks in by default.

This commit adds a new test utility designed to properly handle
those situations. Updated tests that were creating a context
hierarchy to benefit from that.

Fixes gh-1034
2014-06-17 10:58:33 +01:00
Phillip Webb 24471bc51e Polish 2014-06-16 12:39:15 -07:00
Dave Syer 9cc6bff177 Increase priority of EndpointHandlerMapping
The Actuator endpoints ought to take precedence over others (since
they are important and users can isolate them using management.contextPath
if necessary). This change puts the @Order at -100 (well before the default
order of the RequestMappingHandlerMapping at 0).

Fixes gh-1107
2014-06-16 17:26:54 +01:00
Dave Syer 3378ede231 Ensure CompositePropertySources are listed in EnvironmentEndpoint 2014-06-16 14:45:06 +01:00
Dave Syer 1bf256dd58 Ensure Weblogic and Websphere JMX are covered
To ensure an MBeanServer is available when needed you have to
look in JNDI before resorting to the JDK platform factory.

I had to copy some private code from Spring, but it seems
worth it.

Fixes gh-1092
2014-06-13 11:27:41 +01:00
Spring Buildmaster 4ca26a21dc Next development version 2014-06-11 10:46:27 -07:00
Spring Buildmaster 05ed7b3bcd Next development version 2014-06-10 12:40:35 -07:00
Phillip Webb 3007a777d0 Roll back to 1.1.0.BUILD-SNAPSHOT 2014-06-10 09:00:08 -07:00
Spring Buildmaster c650f2391e Next development version 2014-06-09 21:55:19 -07:00
Phillip Webb b5d267ca89 Polish 2014-06-09 12:33:49 -07:00
Christian Dupuis 5d25588d7b Make properties to sanitize configurable in EnvironmentEndpoint.
Add "key" to default keys that will be sanitized. fixes #1027
2014-06-09 15:07:36 +02:00
Dave Syer aa30fdba18 Add MBeanServer @Bean in case it is needed
Anywhere that an MBeanServer is needed it should be
created @Conditionally, so that user can exclude the
JmxAutoConfiguration and still get the other JMX
behaviours automatically.
2014-06-09 10:21:49 +01:00
Phillip Webb e891aa3525 Polish 2014-06-06 22:58:43 -07:00
Phillip Webb 2df4ead4d6 Convert README.md -> README.adoc 2014-06-06 22:56:44 -07:00
Dave Syer 09200361de Align expectations of various JMX configurations
They all want to create an MBeanServer and when that happens
user sees no MBeans, or sometimes just one set (Spring Core,
Spring Integration or Spring Boot). To harmonise them we
create a @Bean of type MBeanServer and link to it in the
other autoconfigs

Fixes gh-1046
2014-06-06 17:52:14 +01:00
Dave Syer c41fa08a80 Cross link Actuator and User Guide docs
Not having READMEs in github is a mistake IMO, so here's one
restored and with a link to the docs. Docs also updated to
more accurately reflect the location of the actuator features
in implementation.

See https://github.com/spring-guides/gs-actuator-service/pull/7
for the Getting started guide change

Fixes gh-1014
2014-06-04 14:27:29 +01:00
Andy Wilkinson c0c3c78f8d Add missing entries to the tables of auto-configuration classes
Closes #998
2014-06-04 12:53:33 +01:00
Andy Wilkinson 9b44c322d4 Update dependencies to latest maintenance releases
Despite Javassist 3.18.2-GA being available, it has not be upgraded.
This is to keep it in sync with Hibernate.
2014-06-03 17:03:26 +01:00
Dave Syer b31295246c Make WebRequestTraceFilter once per request 2014-06-01 09:47:23 +01:00
Dave Syer 5e3cc95ccf Adjust security.basic.enabled=false behaviour
Actually the web-secure sample is misusing
security.basic.enabled=false (IMO) - it should be a flag
to say that you want to temporarily disable the basic security
fallback on application endpoins, not  way to disable all
security autoconfiguration.

Added test case to web-secure sample to ensure a user
can log in.

Fixes gh-979
2014-05-29 13:25:01 +01:00
Phillip Webb a91e85b848 Add local.management.port when on same port
Add a `local.management.port` alias when the management server is
running on the same port as the main server.

Fixes gh-952
2014-05-27 21:25:33 +01:00
Phillip Webb 91bd78047e Rename TraceWebFilterAutoConfigurationTest
Rename TraceWebFilterAutoConfigurationTest to
TraceWebFilterAutoConfigurationTests
2014-05-27 21:25:33 +01:00
Christian Dupuis 057e149846 Introduce Health.Builder to clean up HealthIndicator implementations 2014-05-27 20:44:54 +02:00
Dave Syer 68448a8c68 Use the ServerProperties to add prefixes to paths
when server.servletPath is set we need to add prefixes to
the security filter paths.

Fixes gh-945
2014-05-24 08:33:14 +01:00
Phillip Webb 96a0d672af Rename SimpleDataSourceHealthIndicator
Rename SimpleDataSourceHealthIndicator to DataSourceHealthIndicator.
2014-05-23 10:58:40 +01:00
Phillip Webb aa03d9a41c Make Health and Status immutable
Update Health and Status objects to be immutable, update the existing
builder methods to return new instances and add static convenience
methods to Health.
2014-05-23 10:58:40 +01:00
Eric Dahl 3457cc4f39 Fix multiple typos in documentation, as well as "thread.deamon" typo in actuator 2014-05-22 21:18:08 -05:00
Christian Dupuis 297d14f5f8 Polish 2014-05-22 22:44:45 +02:00
Phillip Webb 1a475102de Polish 2014-05-22 20:33:08 +01:00
Andy Wilkinson d8e783f856 Update SolrHealthIndicator to extend AbstractHealthIndicator 2014-05-22 19:51:33 +01:00
Christian Dupuis db74d27ea0 Extract AbstractHealthIndicator
to make it more simple to implement HealthIndicator
2014-05-22 19:06:15 +02:00
Andy Wilkinson b76a519f65 Add a HealthIndicator for Solr 2014-05-22 17:29:12 +01:00
Christian Dupuis 40b55b0ff6 Extract AbstractHealthAggregator
This commit makes it easier for users to implement HealthAggregators
2014-05-22 17:40:38 +02:00
Christian Dupuis f9aeb6aefe Polish 2014-05-22 17:31:43 +02:00
Dave Syer 59c108a4b0 Fix bug in group names (again) 2014-05-22 15:48:29 +01:00
Dave Syer 1fabfaa259 Align behaviour of in-memory and redis mult repos
The in-memory version has to force the incoming metric keys to
start with the group name. Redis doesn't have that restriction
but normally we expect both to be used in such a way that
the metric keys already match the prefix. In that case the two
repositories behave the same now in terms of set and get.
2014-05-22 15:35:55 +01:00
Dave Syer 0dca2dd978 Small docs tweaks in metrics 2014-05-22 14:51:19 +01:00
Dave Syer b12d7c705c Improve redis repository implementations
Storing values in zset makes them less prone to races.

Fixes gh-929
2014-05-22 12:41:24 +01:00
Christian Dupuis b77a9c5a8e Remove List.sort usage for Collections.sort 2014-05-22 13:17:20 +02:00
Dave Syer 0cbd0b609a Add increment() to PrefixMetricWriter
In the redis repository we also switch to store the value in the
zset (so it can be atomically incremented) rather than in the
regular key-value.

Fixes gh-929
2014-05-22 12:05:56 +01:00
Christian Dupuis 14899ba3b2 Fix compile problem
Something slipped the recent merge
2014-05-22 12:45:15 +02:00
Christian Dupuis 0c2bc99af3 Return different http return status codes for different system health states
fixes #880
2014-05-22 12:27:03 +02:00
Christian Dupuis 4bc6a0f49e Rename Status.status to Status.code 2014-05-22 12:27:03 +02:00
Christian Dupuis 4648188782 Rework HealthEndpoint and HealthIndicator
With this commit the state of a component or subsystem becomes a first-class citizen in Boot's application health support. HealthIndicators now return a Health instance with status and some contextual details.

An aggregation strategy has been introduced to aggregate several Health instances into one final application Health instance. Out of the box OrderedHealthAggregator can be configured to allow different ordering or a custom HealthAggregator bean can be registered.
2014-05-22 12:27:03 +02:00
Dave Syer d59cbc830a Group resolution for RedisMultiMetricRepository with prefix
The prefix needs to be added before looking for keys. In addition
I rationalized the constructor and final fields (it didn't make
any sense for the prefix to be mutable).

Fixes gh-927
2014-05-22 09:35:08 +01:00
Dave Syer ed2876e931 Add a PrefixMetricWriter interface to cleanly separate write/read
The PrefixMetricGroupExporter only really makes sesne if the writer
is aware of the groups, so it seemed better to use a new interface
than mix read/write.
2014-05-22 09:10:49 +01:00
Dave Syer 94e891e924 Rename method count() -> countGroups()
Fixes gh-923
2014-05-22 09:10:49 +01:00
Phillip Webb 8bcda1bcbe Polish 2014-05-20 18:26:56 +01:00
Christian Dupuis 3f498a4803 Add configuration properties to disable out of the box health checks 2014-05-19 15:54:32 +02:00
Christian Dupuis 4ffe816a21 Fix typo 2014-05-19 15:54:31 +02:00
Christian Dupuis fef998f914 Remove autowired injection of HealthIndicators into HealthEndpoint
Moved into EndpointAutoConfiguration
2014-05-19 15:54:31 +02:00
Phillip Webb 938609fdc0 Merge branch '1.0.x'
Conflicts:
	spring-boot-actuator/src/main/java/org/springframework/boot/actuate/autoconfigure/CrshAutoConfiguration.java
	spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/DataSourceAutoConfiguration.java
2014-05-15 16:35:43 +01:00
Christian Dupuis 875e77d420 Correctly decode URL coming into the Jolokia endpoint
fixes #869
2014-05-15 17:29:21 +02:00
Phillip Webb fa7da5925b Remove checked exceptions from @PostConstructs
Update all @PostConstruct methods to ensure that they don't throw
checked exceptions. Required to allow deployment of Spring Boot
applications on Glassfish.

Fixes gh-868
2014-05-15 15:47:44 +01:00
Dave Syer 5249f54c5a Integrate @ConfigurationProperties @Beans with DataSource configuration
We now have a much simpler DataSourceAutoConfiguration that binds to whatever
DataSource concrete type it finds at runtime. To be able to quickly switch between
Hikari and the other types of DataSource there's a minute shim for translating
the common properties (username, password, url, driverClassName), but actually
only url is different. The shim and also DataSource initialization is supported
through DataSourceProperties, but the other native properties get bound directly
through the concrete runtime type of the DataSource.

The /configprops endpoint works (and is exposed in the actuator sample).

Fixes gh-840, fixes gh-477, see also gh-808.
2014-05-13 16:46:04 +01:00
Dave Syer 660b73b5c6 Ensure only bindable properties are reported in /configprops
Introspects the properties that are being exposed in the report
and only renders the ones that are a) convertible from String
and b) have a setter. That goes a long way to making it a bullet
proof generic renderer of any Java object that can be bound with
@ConfigurationProperties.
2014-05-13 16:46:03 +01:00
Dave Syer 85719f75e4 Add @Bean-level config properties to /configprops 2014-05-13 16:45:48 +01:00
Christian Dupuis 9e56c38b7a Rename DefaulErrorAttributes to DefaultErrorAttributes
fixes #853
2014-05-13 17:43:28 +02:00
Phillip Webb 30ac768cbf Remove @ControllerAdvice from BasicErrorController
Update the BasicErrorController so that it no longer needs to implement
@ControllerAdvice or have an @ExceptionHandler method.

A new ErrorAttributes interface is now used to obtain error details,
the DefaultErrorAttributes implementation uses a
HandlerExceptionResolver to obtain root exception details if the
`javax.servlet.error.*` attributes are missing.

This change also removes the need for the extract(...) method on
ErrorController as classes such as WebRequestTraceFilter can
now use the ErrorAttributes interface directly.

See gh-839, gh-538
Fixes gh-843
2014-05-12 19:46:57 +01:00
Andy Wilkinson fec136e213 Merge branch '1.0.x'
Conflicts:
	spring-boot-dependencies/pom.xml
2014-05-12 10:37:06 +01:00
Andy Wilkinson f761daf253 Upgrade to CRaSH 1.3.0-beta18
Closes #841
2014-05-12 10:35:20 +01:00
Lukasz Kryger e7484c66f5 Registering PID file to be deleted on JVM exit 2014-05-11 09:21:19 -07:00
Phillip Webb bd38893f55 Rename rabbitHealthIndicator bean
Rename the rabbitHealthIndicator bean which was accidentally named
redisHealthIndicator.
2014-05-10 22:34:18 +01:00
Christian Dupuis a62bc9ca60 Polish 2014-05-10 11:15:31 +02:00
Christian Dupuis b026b13c66 Add HealthIndicator for Rabbit 2014-05-10 11:12:04 +02:00
Phillip Webb 1acffdf649 Polish 2014-05-09 08:52:11 +01:00
Christian Dupuis 51dddc2dc4 Add gc information to /metrics endpoint 2014-05-08 17:10:37 +02:00
Christian Dupuis dfd6f91aef Merge pull request #819 from cdupuis/health-indicator
Rework HealthIndicator support
2014-05-08 16:40:44 +02:00
Christian Dupuis 288e7a5d92 Rename missing test 2014-05-08 16:32:50 +02:00
Christian Dupuis 916a85c615 Rename SimpleHealthIndicator to SimpleDataSourceHealthIndicator 2014-05-08 16:20:50 +02:00
Christian Dupuis eeaa96725f Rename SimpleHealthIndicator to SimpleDataSourceHealthIndicator 2014-05-08 16:20:22 +02:00
Christian Dupuis c5ec735afb Add unit test for (Mongo|Redis)HealthIndicator 2014-05-08 15:56:29 +02:00
Dave Syer 14d3b46809 Add constants to SecurityProperties and ManagementServerProperties
For the convenience of users who want to selectively override the
access rules in an application without taking complete control of the
security configuration we now have some constants:

* SecurityProperties.ACCESS_OVERRIDE_ORDER for overriding just the
application endpoint access rules

* ManagementServerProperties.ACCESS_OVERRIDE_ORDER for overriding the
application endpoint and management endpoint access rules

Fixes gh-803
2014-05-08 05:32:43 -07:00
Christian Dupuis 127328a833 Rework HealthEndpoint and HealthIndicators
Refactored HealthEndpoint to be able to take multiple HealthIndicators. Extracted configuration of HealthIndicators out of EndpointAutoConfiguration and added new HealthIndicatorAutoConfiguration class.

Added HealthIndicators for Redis and Mongo.
2014-05-08 12:37:37 +02:00
Christian Dupuis 126fedc14a Add support for disabling crash commands
fixes #587 and #588
2014-05-06 13:32:29 +02:00
Stephane Nicoll 33082fd56d Harmonized maven dependency management
This commit harmonizes the dependency management of internal modules
so that versions can be omitted everywhere. Update the maven coordinates
to provide the full groupId for consistency
2014-05-05 14:29:01 +01:00
Phillip Webb dd7391d07e Add missing @Since tag 2014-05-05 11:45:34 +01:00
Tyler Frederick 43bd42f0f5 Add multi-datasource health indicator support
Update EndpointAutoConfiguration to support multiple datasources.

Fixes gh-783
2014-05-05 11:36:55 +01:00
Tyler Frederick 697afe3842 Add CompositeHealthIndicator
Add CompositeHealthIndicator that allows multiple HealthIndicators
to be combined into a single result.

Fixes gh-782
2014-05-05 11:24:11 +01:00
Stephane Nicoll e26e06d5dd Fix build
Two modules are still relying on the spring-boot test-jar but it was
not generated anymore. Adding the generation of test-jar again as
a workaround until we completely removes the use of it.
2014-04-30 16:39:54 +02:00
Christian Dupuis a66fc3030e Add more runtime metrics like information about heap, class loading and threads to the metrics infrastructure 2014-04-30 15:22:56 +02:00
Dave Syer ef4e83a879 Move ErrorController to autoconfig 2014-04-29 15:23:29 +01:00
Dave Syer 27580e726f Add generic error handling to BasicErrorController
Since Spring supports gobal error handling through
@ControllerAdvice, it is quite easy to set up more meta-data
about an exception for the BasicErrorController. You need
to be careful not to swallow Security exceptions, and probably
others (optionally) so this feature needs a bit more work.

See gh-538
2014-04-29 15:23:28 +01:00
Andy Wilkinson b6cd2c970c Use Jedis rather than Lettuce as preferred Redis client
Salvatore has indicated that Jedis is his Java Redis client of choice.
This commit updates the auto-configuration support, actuator and
Redis starter accordingly.

Completes #745
2014-04-28 14:06:40 +01:00
sopov.ivan 174b654faf minor test fixes
Reverting arguments in assertEquals where constant was placed on
the "actual" place. Replacing assertEquals with assertFalse, assertTrue
and assertNull where applicable.

Fixes gh-735
2014-04-26 14:14:05 +01:00
Phillip Webb 64a835e91a Move master to 1.1.0.BUILD-SNAPSHOT 2014-04-24 12:45:20 +01:00
Spring Buildmaster d3954a1703 Next development version 2014-04-24 02:24:28 -07:00
Phillip Webb 4119ef5cf4 Use random ports for tests
Update remaining tests to use random ports.

Fixes gh-337
2014-04-23 19:11:54 +01:00
Phillip Webb f847ed2b1f Remove getEmbeddedServletContainers()
Remove the mutable getEmbeddedServletContainers() Map from
EmbeddedWebApplicationContext and instead use the `namespace` to
distinguish the management container.

The ServerPortInfoApplicationContextInitializer class replaces the
previous TestExecutionListener to exposes port properties (by
listening for EmbeddedServletContainerInitializedEvents).
2014-04-23 15:41:56 +01:00
Phillip Webb fad5ce45db Polish 2014-04-23 12:35:33 +01:00
Phillip Webb 316cb87583 Create ApplicationPid and remove SystemUtils
Create a new ApplicationPid class to remove the need for SystemUtils
and refactor existing calls.
2014-04-23 12:00:36 +01:00
Dave Syer b291332cd4 Use CountDownLatch instead of Thread.sleep()
... to wait for ApplicationContext to close in the 3 tests
that we needed to do so.

Fixes gh-664
2014-04-23 10:14:38 +01:00
Dave Syer 00b85e8c42 Ensure path starts with "/" in ErrorController
When mapping the ErrorController path to Spring Security it's
important that it starts with "/". This change ensures that is
the case even if the user has omitted the leading "/".

Fixes gh-694
2014-04-19 19:21:45 -07:00
Dave Syer 7b07fe8ce0 Convert remaining samples to use random port
Partial fix for gh-337. See also gh-607 which complements this, but might
conflict on a merge.
2014-04-17 20:29:04 -07:00
Dave Syer f134e96053 Convert Actuator sample to dynamic ports 2014-04-17 17:36:09 -07:00
Dave Syer 41cdb7b48d Add parent directory creation
Also tidied a few other things up (like not needing
SmartApplicationListener).

Fixes gh-550
2014-04-11 06:33:03 +01:00
Jakub Kubrynski f6488c7f66 Now after starting application PID file will be created
Fixes gh-550
2014-04-10 16:30:36 +01:00
Dave Syer 708d5ade9f Fix path stripper in JolokiaEndpoint to account for management.contextPath
When the user sets management.contextPath=/admin the Jolokia
endpoint gets mapped to /admin/jolokia, but that the path stripper it uses
internally makes a false assumption about the form of the request path.
The fix is simple (just use a smarter search for the endpoint path in the
request path).

Fixes gh-642
2014-04-08 09:58:17 +01:00
Spring Buildmaster a5864ebcd0 Next development version 2014-04-06 22:43:18 -07:00
Dave Syer 72d7c286c0 Add Spring MVC-generated path suffixes to endpoint paths
Spring Security doesn't know that Spring MVC maps /foo, /foo.json
and /foo/ all to the same handler. This change explicitly adds
suffixes to the actuator endpoint matchers so they are properly
protected.
2014-04-03 14:03:09 +01:00
Spring Buildmaster 15e9dbe98b Next development version 2014-04-01 03:05:51 -07:00
Phillip Webb 1e68b7e0a9 Remove superfluous <packaging> tags from POMs 2014-04-01 02:07:43 -07:00
Phillip Webb 0af7f7e347 Add missing POM info 2014-04-01 02:07:42 -07:00
Phillip Webb 488b03387f Polish POM formatting 2014-04-01 02:07:36 -07:00
Phillip Webb 6f9bb233ad Revert "Next development version"
This reverts commit b67bb70ee3.
2014-04-01 00:38:48 -07:00
Spring Buildmaster b67bb70ee3 Next development version 2014-03-31 22:38:42 -07:00
Dave Syer 499f54893b Add @Conditionals to switch off non-generic endpoints
Fixes gh-601
2014-03-31 17:33:39 -07:00
Phillip Webb ac4cdd33c3 Revert "Next development version"
This reverts commit 1d0eea12eb.
Returning to 1.0.0.BUILD-SNAPSHOT for an updated release.
2014-03-31 17:14:30 -07:00
Spring Buildmaster 1d0eea12eb Next development version 2014-03-28 11:47:09 -07:00
Phillip Webb d117a6b22b Polish 2014-03-27 11:21:51 -07:00
Dave Syer 71c2c69c92 Return actual status code not 200 to machine client
Machine clients are much more fussy than browsers and we
should take care to preserve the HTTP status for them.

Fixes gh-596
2014-03-27 17:23:47 +00:00
Dave Syer d13827c45c Switch default query to 'select 1'
Fixes gh-555
2014-03-27 17:23:37 +00:00
Phillip Webb beaddb2362 Polish 2014-03-26 13:29:26 -07:00
Dave Syer e059d0cd5f Re-order security auto configuration so the fallback can be applied
The management security autoconfiguration wanted to come last in the chain
but that won't suit the fallback that was already in place for gh-568. This
change re-orders the autoconfig so that @EnableWebSecurity is still added
if the user sets security.basic.enabled=false and includes the actuator
endpoints.

Fixes gh-568
2014-03-25 17:03:10 +00:00
Phillip Webb d42bedf295 Rename @ConfigurationProperties attributes
Rename `name` to `prefix` and `path` to `locations`.
2014-03-24 11:44:52 -07:00
Dave Syer 45315a97ff Prevent accidental failure of deployed war when management.port is set
We can't support (yet) embedded containers inside a deployed war (class
loader conflicts are inevitable, really). Until we figure out a way to
do it, we should just log a warning and advise the user to switch to
JMX for the actuator endpoints.

See gh-552
2014-03-24 08:07:39 +00:00
Dave Syer b824a6ea05 Tweak to support finer grained locking
Fixes gh-543
2014-03-22 14:58:18 +00:00
Nicholas Hagen 8d442b1fbc Fix issue with paralellism and CodaHale metrics
Since there is no atomic remove/register operation for
Gauges, we need to synchronize.
2014-03-22 14:57:38 +00:00
Christian Dupuis d08d98492d Add Environment to shell context; disable shell banner if spring.main.show_banner is set to false 2014-03-20 15:23:24 +01:00
Christian Dupuis b760722234 Add endpoint command to shell
fixex #461
2014-03-20 11:05:27 +01:00
Phillip Webb c5ee3c7eba Remove duplicate documentation
Remove README files that have been since been migrated to the reference
documentation. Also updated remaining markdown files to asciidoctor to
save having a mix of different formats.

Fixed gh-503
2014-03-16 23:00:12 -07:00