diff --git a/canary-checker/docs/concepts/metrics-exporter.mdx b/canary-checker/docs/concepts/metrics-exporter.mdx
new file mode 100644
index 00000000..f250762f
--- /dev/null
+++ b/canary-checker/docs/concepts/metrics-exporter.mdx
@@ -0,0 +1,18 @@
+---
+title: Metrics Exporter
+slug: /concepts/metrics-exporter
+---
+
+# Metrics Exporter
+
+Canary Checker works well with Prometheus and exports metrics for every check, the standard metrics included are:
+
+| Metric | Type | Description |
+| ---------------------------------------------- | --------- | ------------------------------------------- |
+| canary_check | Gauge | Set to 0 when passing and 1 when failing |
+| canary_check_success_count | Counter | |
+| canary_check_failed_count | Counter | |
+| canary_check_info | Info | |
+| canary_check_duration | Histogram | Histogram of canary durations |
+
+For more information about metrics, including custom metrics and Grafana integration, please visit the [metrics page](/concepts/metrics).
\ No newline at end of file
diff --git a/canary-checker/docs/concepts/metrics/custom-metrics.mdx b/canary-checker/docs/concepts/metrics/custom-metrics.mdx
new file mode 100644
index 00000000..5c13d2c8
--- /dev/null
+++ b/canary-checker/docs/concepts/metrics/custom-metrics.mdx
@@ -0,0 +1,47 @@
+---
+title: Custom Metrics
+slug: /concepts/metrics/custom-metrics
+---
+
+# Custom Metrics
+
+Canary checker can export custom metrics from any check type, replacing and/or consolidating multiple standalone Prometheus Exporters into a single exporter.
+
+In the example below, exchange rates against USD are exported by first calling an HTTP api and then using the values from the JSON response to create the metrics:
+
+```yaml title="exchange-rates-exporter.yaml"
+apiVersion: canaries.flanksource.com/v1
+kind: Canary
+metadata:
+ name: exchange-rates
+spec:
+ interval: 30
+ http:
+ - name: exchange-rates-api
+ url: https://api.exchangerate-api.com/v4/latest/USD
+ responseTime: 300
+ metrics:
+ - name: exchange_rate_api
+ type: gauge
+ value: duration
+ - name: exchange_rate
+ type: gauge
+ value: "1.0"
+ labels:
+ - name: from
+ value: USD
+ - name: to
+ valueExpr: key
+ values: json.rates.*
+```
+
+Which would output:
+
+```shell
+exchange_rate{from=USD, to=GBP} 0.819
+exchange_rate{from=USD, to=EUR} 0.949
+exchange_rate{from=USD, to=ILS} 3.849
+exchange_rate_api 260.000
+```
+
+For more information about custom metrics, please visit the [main metrics page](/concepts/metrics#custom-metrics).
\ No newline at end of file
diff --git a/canary-checker/docs/concepts/metrics/grafana.mdx b/canary-checker/docs/concepts/metrics/grafana.mdx
new file mode 100644
index 00000000..9644112f
--- /dev/null
+++ b/canary-checker/docs/concepts/metrics/grafana.mdx
@@ -0,0 +1,16 @@
+---
+title: Grafana Integration
+slug: /concepts/metrics/grafana
+---
+
+# Grafana
+
+Default grafana dashboards are available. After you deploy Grafana, these dashboards can be installed with
+
+```
+--set grafanaDashboards=true --set serviceMonitor=true
+```
+
+
+
+For more information about metrics and Grafana, please visit the [main metrics page](/concepts/metrics#grafana).
\ No newline at end of file
diff --git a/canary-checker/docs/docs/getting-started/installation.mdx b/canary-checker/docs/docs/getting-started/installation.mdx
new file mode 100644
index 00000000..a5a94af0
--- /dev/null
+++ b/canary-checker/docs/docs/getting-started/installation.mdx
@@ -0,0 +1,8 @@
+---
+title: Getting Started with Installation
+slug: /docs/getting-started/installation
+---
+
+import {Redirect} from '@docusaurus/router';
+
+
\ No newline at end of file
diff --git a/canary-checker/docusaurus.config.js b/canary-checker/docusaurus.config.js
index 70992870..15198ec7 100644
--- a/canary-checker/docusaurus.config.js
+++ b/canary-checker/docusaurus.config.js
@@ -91,22 +91,23 @@ export default async function createConfigAsync() {
['@docusaurus/plugin-client-redirects',
{
redirects: [
- {
- to: '/getting-started',
- from: '/docs/getting-started/installation',
- },
- {
- to: '/concepts/metrics#grafana',
- from: '/concepts/metrics/grafana',
- },
- {
- to: '/concepts/metrics',
- from: '/concepts/metrics/custom-metrics',
- },
- {
- to: '/concepts/metrics',
- from: '/concepts/metrics-exporter',
- }
+ // These redirects are no longer needed as we've created the source files
+ // {
+ // to: '/getting-started',
+ // from: '/docs/getting-started/installation',
+ // },
+ // {
+ // to: '/concepts/metrics#grafana',
+ // from: '/concepts/metrics/grafana',
+ // },
+ // {
+ // to: '/concepts/metrics',
+ // from: '/concepts/metrics/custom-metrics',
+ // },
+ // {
+ // to: '/concepts/metrics',
+ // from: '/concepts/metrics-exporter',
+ // }
],
}
@@ -178,4 +179,4 @@ export default async function createConfigAsync() {
},
}),
};
-}
+}
\ No newline at end of file
diff --git a/mission-control/docs/canary-checker.mdx b/mission-control/docs/canary-checker.mdx
new file mode 100644
index 00000000..554a9370
--- /dev/null
+++ b/mission-control/docs/canary-checker.mdx
@@ -0,0 +1,8 @@
+---
+title: Canary Checker
+slug: /canary-checker
+---
+
+import {Redirect} from '@docusaurus/router';
+
+
\ No newline at end of file
diff --git a/mission-control/docs/guide/topology/concepts/templating.mdx b/mission-control/docs/guide/topology/concepts/templating.mdx
index 8d1c3b37..5dd30c5e 100644
--- a/mission-control/docs/guide/topology/concepts/templating.mdx
+++ b/mission-control/docs/guide/topology/concepts/templating.mdx
@@ -7,7 +7,7 @@ When building a topology, templating enables you to transform data from the cata
**Templating is:**
> Simply a way to represent data in different forms.
-Templating comes in handy when you want the results of your operation displayed in your desired configuration and order. [Canary-checker](/guide/canary-checker/overview) and [Config DB](/guide/config-db/getting-started) supports this feature for rendering results. They can be specified in `display`, `test`, `transform` fields for the `Canary` object, `id`, `test`, `transform`, `display` for `Topology` object. The template can be configured In the next section, you'll see the different supported templates.
+Templating comes in handy when you want the results of your operation displayed in your desired configuration and order. [Canary-checker](/guide/canary-checker) and [Config DB](/guide/config-db/getting-started) supports this feature for rendering results. They can be specified in `display`, `test`, `transform` fields for the `Canary` object, `id`, `test`, `transform`, `display` for `Topology` object. The template can be configured In the next section, you'll see the different supported templates.
## Canary Template Types
diff --git a/mission-control/docs/notifications.mdx b/mission-control/docs/notifications.mdx
new file mode 100644
index 00000000..c14c5dce
--- /dev/null
+++ b/mission-control/docs/notifications.mdx
@@ -0,0 +1,8 @@
+---
+title: Notifications
+slug: /notifications
+---
+
+import {Redirect} from '@docusaurus/router';
+
+
\ No newline at end of file
diff --git a/mission-control/docs/playbooks.mdx b/mission-control/docs/playbooks.mdx
new file mode 100644
index 00000000..629dd2c9
--- /dev/null
+++ b/mission-control/docs/playbooks.mdx
@@ -0,0 +1,8 @@
+---
+title: Playbooks
+slug: /playbooks
+---
+
+import {Redirect} from '@docusaurus/router';
+
+
\ No newline at end of file
diff --git a/mission-control/docs/topology.mdx b/mission-control/docs/topology.mdx
new file mode 100644
index 00000000..039766b9
--- /dev/null
+++ b/mission-control/docs/topology.mdx
@@ -0,0 +1,8 @@
+---
+title: Topology
+slug: /topology
+---
+
+import {Redirect} from '@docusaurus/router';
+
+
\ No newline at end of file
diff --git a/mission-control/docusaurus.config.ts b/mission-control/docusaurus.config.ts
index ac5ddbdd..50455074 100644
--- a/mission-control/docusaurus.config.ts
+++ b/mission-control/docusaurus.config.ts
@@ -67,22 +67,23 @@ export default async function createConfigAsync() {
// from: '/guide/canary-checker/reference/s3-bucket',
// },
- {
- to: '/guide/canary-checker',
- from: '/canary-checker',
- },
- {
- to: '/guide/playbooks',
- from: '/playbooks',
- },
- {
- to: '/guide/notifications/',
- from: '/notifications',
- },
- {
- to: '/guide/topology',
- from: '/topology',
- },
+ // These redirects are no longer needed as we've created the source files
+ // {
+ // to: '/guide/canary-checker',
+ // from: '/canary-checker',
+ // },
+ // {
+ // to: '/guide/playbooks',
+ // from: '/playbooks',
+ // },
+ // {
+ // to: '/guide/notifications/',
+ // from: '/notifications',
+ // },
+ // {
+ // to: '/guide/topology',
+ // from: '/topology',
+ // },
],
@@ -336,4 +337,4 @@ export default async function createConfigAsync() {
},
}),
}
-}
+}
\ No newline at end of file