From 5a2f9b769638607278a7090745442f594fbf94d7 Mon Sep 17 00:00:00 2001 From: stephane brossier Date: Fri, 2 Jan 2026 18:34:27 -0800 Subject: [PATCH 1/2] aviate health: Add config endpoint --- source/includes/_aviate-health.md | 99 +++++++++++++++++++++++++++++++ 1 file changed, 99 insertions(+) diff --git a/source/includes/_aviate-health.md b/source/includes/_aviate-health.md index 00e1648..ab8bf8f 100644 --- a/source/includes/_aviate-health.md +++ b/source/includes/_aviate-health.md @@ -343,6 +343,105 @@ None If successful, returns a `HealthData` object. +### Retrieve Runtime Configuration + +This endpoint retrieves the runtime configuration of a running Kill Bill instance and it provides the detail of the configuration source for each property along with its final value; the sources can be - by order of precedence: Immutable system property, Tenant configuration, Environment variable, Runtime configuration or the Default property value from the system. + +**HTTP Request** + +`GET /plugins/aviate-plugin/v1/health/config` + +> Example Request: + +```shell +curl -X GET \ +-H"Authorization: Bearer ${ID_TOKEN}" \ +-H 'Content-Type: application/json' \ +-H 'X-killbill-apiKey: bob' \ +-H 'X-killbill-apisecret: lazar' \ +'http://127.0.0.1:8080/plugins/aviate-plugin/v1/health/config' +``` + +```java +``` + +```ruby +``` + +```python +``` + +````php +```` + +````javacript +```` + +> Example Response: + +```json +{ + "config": { + "ImmutableSystemProperties": { + "values": [ + { + "key": "user.timezone", + "value": "GMT" + } + ] + }, + "RuntimeConfiguration": { + "values": [ + { + "key": "org.killbill.dao.user", + "value": "admin" + }, + { + "key": "org.killbill.persistent.bus.external.sleep", + "value": "300" + }, + { + "key": "org.killbill.billing.plugin.kpm.bundlesPath", + "value": "/var/lib/killbill/bundles" + }, + ... + ] + }, + "KillBillDefaults": { + "values": [ + { + "key": "org.killbill.dao.maxConnectionAge", + "value": "0m" + }, + { + "key": "org.killbill.dao.useServerPrepStmts", + "value": "true" + }, + { + "key": "org.killbill.billing.server.notifications.retries", + "value": "15m,30m,2h,12h,1d" + }, + ... + ] + } + } +} +``` + +**Request Body** + +None + +**Query Parameters** + +None + + +**Response** + +If successful, returns a status code of 200 and the requested runtime configuration data. + + ### Retrieve Metrics This endpoint returns metric data. This data can be used to assess the health of the system and gain visibility into it. The metrics are computed by the aviate plugin when the `com.killbill.billing.plugin.aviate.enableHealthReporter` property is set to true. Each metric is a timeseries that can be analyzed and/or displayed. From 018cb10d28015e152a155ec2cb2c3e87690efb68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Brossier?= Date: Fri, 2 Jan 2026 18:36:23 -0800 Subject: [PATCH 2/2] Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- source/includes/_aviate-health.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/includes/_aviate-health.md b/source/includes/_aviate-health.md index ab8bf8f..01e9074 100644 --- a/source/includes/_aviate-health.md +++ b/source/includes/_aviate-health.md @@ -355,7 +355,7 @@ This endpoint retrieves the runtime configuration of a running Kill Bill instanc ```shell curl -X GET \ --H"Authorization: Bearer ${ID_TOKEN}" \ +-H "Authorization: Bearer ${ID_TOKEN}" \ -H 'Content-Type: application/json' \ -H 'X-killbill-apiKey: bob' \ -H 'X-killbill-apisecret: lazar' \ @@ -374,7 +374,7 @@ curl -X GET \ ````php ```` -````javacript +````javascript ```` > Example Response: