You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "Georg Henzler (JIRA)" <ji...@apache.org> on 2018/10/09 12:41:00 UTC
[jira] [Commented] (FELIX-5952) Felix Health Checks
[ https://issues.apache.org/jira/browse/FELIX-5952?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16643281#comment-16643281 ]
Georg Henzler commented on FELIX-5952:
--------------------------------------
The attached zip [^FELIX-5952-new-module-healthcheck-initial-version.zip] comes with a mnew top level module "healthcheck" that contains the api and core module as currently maintained by Sling ([1] and [2]). The following has been adjusted:
* Removed deprecated methods like HealthCheckExecutor.execute(String... tags) and using version 2.x.x for both maven and OSGi packages as starting point in Felix now
* Added simple markdown documentation (slightly restructured and abbreviated, will extend later)
* General cleanup (consistent formatting, imports, etc.)
* Minimised dependencies
** Removed JSON dependency and implemented the simple serialisation "manually" (there is no one simple OSGi bundle to achieve that, geronimo-json_1.0_spec + johnzon seems overkill for what is actually needed here)
** The module org.apache.sling.commons.threads is replaced by a standard java executor (see org.apache.felix.hc.core.impl.executor.HealthCheckExecutorThreadPool)
** The HC property "hc.async.cronExpression" is supported, but then requires the bundle org.apache.servicemix.bundles.quartz to be present (as standard java does not support cron expressions). If the quartz bundle is not available, a warning is logged and the HC falls back to synchronous execution (however with the standard caching mechanisms applied, hence not a problem)
** The HC property "hc.async.intervalInSec" can be used to schedule health checks asynchronously without using quartz
** The dependency org.apache.sling.scripting.api is removed, the HC ScriptableHealthCheck will remain in Sling (as it conceptionally makes sense to use Sling Scripting only in Sling
[1] [https://github.com/apache/sling-org-apache-sling-hc-api]
[2] [https://github.com/apache/sling-org-apache-sling-hc-core]
> Felix Health Checks
> -------------------
>
> Key: FELIX-5952
> URL: https://issues.apache.org/jira/browse/FELIX-5952
> Project: Felix
> Issue Type: New Feature
> Reporter: Georg Henzler
> Priority: Major
> Attachments: FELIX-5952-new-module-healthcheck-initial-version.zip
>
>
> Sling Health Checks [1] allow to check a system's health manually (humans) or technically (load balancers, Kubernetes, etc.). Since Sling HCs have minimal dependencies to Sling, they should be brought to Felix to make them available to a broader audience and to to be able to use the executor runtime for the systemready checks - see [2] for the discussion on the Sling mailing list.
> [1] https://sling.apache.org/documentation/bundles/sling-health-check-tool.html
> [2] http://apache-sling.73963.n3.nabble.com/hackathon-health-checks-td4086283.html
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)