aboutsummaryrefslogtreecommitdiff
path: root/kamon-status/src/api/StatusApi.ts
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2019-02-04 23:59:54 +0100
committerIvan Topolnjak <ivantopo@gmail.com>2019-02-04 23:59:54 +0100
commit7e9cb172cb7ead8e5579ffb1f0b0ba3ffef90605 (patch)
tree184174241e960180a06d1b4af982d9630f427a3c /kamon-status/src/api/StatusApi.ts
parent11fc4117be9ef93f3471ed22de596a6bd8088eb9 (diff)
downloadKamon-7e9cb172cb7ead8e5579ffb1f0b0ba3ffef90605.tar.gz
Kamon-7e9cb172cb7ead8e5579ffb1f0b0ba3ffef90605.tar.bz2
Kamon-7e9cb172cb7ead8e5579ffb1f0b0ba3ffef90605.zip
include environment data in the status page, plust skeleton for instrumentation
Diffstat (limited to 'kamon-status/src/api/StatusApi.ts')
-rw-r--r--kamon-status/src/api/StatusApi.ts34
1 files changed, 34 insertions, 0 deletions
diff --git a/kamon-status/src/api/StatusApi.ts b/kamon-status/src/api/StatusApi.ts
index d00761e5..25d525d2 100644
--- a/kamon-status/src/api/StatusApi.ts
+++ b/kamon-status/src/api/StatusApi.ts
@@ -44,6 +44,18 @@ export interface MetricRegistry {
metrics: Metric[]
}
+export interface InstrumentationModule {
+ description: string
+ isEnabled: boolean
+ isActive: boolean
+}
+
+export interface Instrumentation {
+ isActive: boolean
+ modules: { [key: string]: InstrumentationModule }
+ errors: { [key: string]: string[]}
+}
+
export class StatusApi {
@@ -91,4 +103,26 @@ export class StatusApi {
return metricRegistry
})
}
+
+ public static instrumentationStatus(): Promise<Instrumentation> {
+ return axios.get('/status/instrumentation').then(response => {
+ const instrumentation: Instrumentation = {
+ isActive: response.data.isActive as boolean,
+ modules: {},
+ errors: {}
+ }
+
+ const rawModules = response.data.modules
+ Object.keys(rawModules).forEach(key => {
+ instrumentation.modules[key] = JSON.parse(rawModules[key])
+ })
+
+ const rawErrors = response.data.errors
+ Object.keys(rawErrors).forEach(key => {
+ instrumentation.errors[key] = JSON.parse(rawErrors[key])
+ })
+
+ return instrumentation
+ })
+ }
}