В WSO2 IS 5.7.0 появился сервис HealthCheck. Документация по нему на сайте WSO2: https://docs.wso2.com/display/ADMIN44x/Monitoring+Server+Health
Вместо того, чтобы тянуть zip из аттачментов - можно взять его из мавеновского репозитория:
http://maven.wso2.org/nexus/content/repositories/releases/org/wso2/carbon/healthcheck/org.wso2.carbon.healthcheck.server.feature/1.0.0/ (это актуальная версия на текущий момент)
Но под WSO2 EI 6.4.0 не взлетел - выдает NPE:
Caused by: java.lang.NullPointerException at org.wso2.carbon.healthcheck.api.core.impl.DataSourceHealthChecker.lambda$testDBConnectivity$9(DataSourceHealt hChecker.java:235) at org.wso2.carbon.healthcheck.api.core.util.LambdaExceptionUtils.lambda$rethrowConsumer$4(LambdaExceptionUtils. java:130) at java.util.HashMap$Values.forEach(HashMap.java:981) at org.wso2.carbon.healthcheck.api.core.impl.DataSourceHealthChecker.testDBConnectivity(DataSourceHealthChecker. java:232) at org.wso2.carbon.healthcheck.api.core.impl.DataSourceHealthChecker.checkHealth(DataSourceHealthChecker.java:94 ) at org.wso2.carbon.healthcheck.api.core.CarbonHealthCheckService.lambda$executeHealthCheckers$1(CarbonHealthChec kService.java:98) at org.wso2.carbon.healthcheck.api.core.util.LambdaExceptionUtils.lambda$rethrowConsumer$4(LambdaExceptionUtils. java:130) at java.util.ArrayList.forEach(ArrayList.java:1257) at org.wso2.carbon.healthcheck.api.core.CarbonHealthCheckService.executeHealthCheckers(CarbonHealthCheckService. java:90) at org.wso2.carbon.healthcheck.api.core.CarbonHealthCheckService.healthCheck(CarbonHealthCheckService.java:69) at org.wso2.carbon.healthcheck.api.endpoint.impl.HealthApiServiceImpl.getHealthCheckResponseDTO(HealthApiService Impl.java:66) at org.wso2.carbon.healthcheck.api.endpoint.impl.HealthApiServiceImpl.healthGet(HealthApiServiceImpl.java:35) at org.wso2.carbon.healthcheck.api.endpoint.HealthApi.healthGet(HealthApi.java:41) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:179) at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96) ... 42 more |
Исходники тут: https://github.com/wso2/carbon-health-check
Ошибка летит отсюда - https://github.com/wso2/carbon-health-check/blob/master/components/org.wso2.carbon.healthcheck.api.core/src/main/java/org/wso2/carbon/healthcheck/api/core/impl/DataSourceHealthChecker.java#L235 - видимо что-то datasource не может вернуть.
Надо будет разобраться - штука в принципе полезная.
А вот в WSO2 API-M 2.6.0 прекрасно заработало - об этом и запишем в блоге ЕМДЕВ