aboutsummaryrefslogtreecommitdiff
path: root/kamon-status/src/api/StatusApi.ts
diff options
context:
space:
mode:
Diffstat (limited to 'kamon-status/src/api/StatusApi.ts')
-rw-r--r--kamon-status/src/api/StatusApi.ts41
1 files changed, 41 insertions, 0 deletions
diff --git a/kamon-status/src/api/StatusApi.ts b/kamon-status/src/api/StatusApi.ts
new file mode 100644
index 00000000..540c1c53
--- /dev/null
+++ b/kamon-status/src/api/StatusApi.ts
@@ -0,0 +1,41 @@
+import axios, { AxiosResponse } from 'axios'
+
+export interface Environment {
+ service: string
+ host: string
+ instance: string
+ tags: { [key: string]: string }
+}
+
+export interface BaseInfo {
+ version: string
+ environment: Environment
+ config: any
+}
+
+export interface Module {
+ name: string
+ description: string
+ enabled: boolean
+ started: boolean
+}
+
+export interface ModuleRegistryStatus {
+ modules: Array<Module>
+}
+
+
+export class StatusApi {
+
+ public baseInfo(): Promise<BaseInfo> {
+ return axios.get("/status/base-info").then(response => {
+ return response.data as BaseInfo
+ })
+ }
+
+ public moduleRegistryStatus(): Promise<ModuleRegistryStatus> {
+ return axios.get("/status/modules").then(response => {
+ return response.data as ModuleRegistryStatus
+ })
+ }
+} \ No newline at end of file