From 4d9a836a37aaf3cfd302968113fe057edc698d4a Mon Sep 17 00:00:00 2001 From: "ohotnikov.ivan" Date: Mon, 29 Dec 2025 11:54:34 +0300 Subject: [PATCH 1/5] fix auto-generation of documentation Signed-off-by: ohotnikov.ivan --- .../services/_include/monitoring.md | 34 ----- .../en/docs/operations/services/monitoring.md | 141 ++++++++++++++++++ 2 files changed, 141 insertions(+), 34 deletions(-) delete mode 100644 content/en/docs/operations/services/_include/monitoring.md create mode 100644 content/en/docs/operations/services/monitoring.md diff --git a/content/en/docs/operations/services/_include/monitoring.md b/content/en/docs/operations/services/_include/monitoring.md deleted file mode 100644 index 1b97f8db..00000000 --- a/content/en/docs/operations/services/_include/monitoring.md +++ /dev/null @@ -1,34 +0,0 @@ ---- -title: "Monitoring Hub Reference" -linkTitle: "Monitoring" ---- - -{{< include "monitoring-overview.md" >}} - -## Monitoring Architecture - -```mermaid -graph TD - A[VMAgent] --> B[VMCluster] - B --> C[Grafana] - B --> D[Alerta] - E[Fluent Bit] --> F[VLogs] - D --> G[Telegram] - D --> H[Slack] -``` - -## Alerting Flow - -```mermaid -sequenceDiagram - participant P as Prometheus - participant AM as Alertmanager - participant A as Alerta - participant T as Telegram - participant S as Slack - P->>AM: Send Alert - AM->>A: Forward Alert - A->>T: Send Notification - A->>S: Send Notification -``` - diff --git a/content/en/docs/operations/services/monitoring.md b/content/en/docs/operations/services/monitoring.md new file mode 100644 index 00000000..9bf7f469 --- /dev/null +++ b/content/en/docs/operations/services/monitoring.md @@ -0,0 +1,141 @@ +--- +title: "Monitoring Hub Reference" +linkTitle: "Monitoring" +--- + +{{< include "monitoring-overview.md" >}} + +## Monitoring Architecture + +```mermaid +graph TD + A[VMAgent] --> B[VMCluster] + B --> C[Grafana] + B --> D[Alerta] + E[Fluent Bit] --> F[VLogs] + D --> G[Telegram] + D --> H[Slack] +``` + +## Alerting Flow + +```mermaid +sequenceDiagram + participant P as Prometheus + participant AM as Alertmanager + participant A as Alerta + participant T as Telegram + participant S as Slack + P->>AM: Send Alert + AM->>A: Forward Alert + A->>T: Send Notification + A->>S: Send Notification +``` + + + + +## Parameters + +### Common parameters + +| Name | Description | Type | Value | +| ------ | ----------------------------------------------------------------------------------------------------- | -------- | ----- | +| `host` | The hostname used to access Grafana externally (defaults to 'grafana' subdomain for the tenant host). | `string` | `""` | + + +### Metrics storage configuration + +| Name | Description | Type | Value | +| ------------------------------------------------ | ------------------------------------------- | ---------- | ------- | +| `metricsStorages` | Configuration of metrics storage instances. | `[]object` | `[...]` | +| `metricsStorages[i].name` | Name of the storage instance. | `string` | `""` | +| `metricsStorages[i].retentionPeriod` | Retention period for metrics. | `string` | `""` | +| `metricsStorages[i].deduplicationInterval` | Deduplication interval for metrics. | `string` | `""` | +| `metricsStorages[i].storage` | Persistent volume size. | `string` | `10Gi` | +| `metricsStorages[i].storageClassName` | StorageClass used for the data. | `string` | `""` | +| `metricsStorages[i].vminsert` | Configuration for vminsert. | `object` | `{}` | +| `metricsStorages[i].vminsert.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | +| `metricsStorages[i].vminsert.minAllowed.cpu` | CPU request. | `quantity` | `""` | +| `metricsStorages[i].vminsert.minAllowed.memory` | Memory request. | `quantity` | `""` | +| `metricsStorages[i].vminsert.maxAllowed` | Maximum allowed resources. | `object` | `{}` | +| `metricsStorages[i].vminsert.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | +| `metricsStorages[i].vminsert.maxAllowed.memory` | Memory limit. | `quantity` | `""` | +| `metricsStorages[i].vmselect` | Configuration for vmselect. | `object` | `{}` | +| `metricsStorages[i].vmselect.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | +| `metricsStorages[i].vmselect.minAllowed.cpu` | CPU request. | `quantity` | `""` | +| `metricsStorages[i].vmselect.minAllowed.memory` | Memory request. | `quantity` | `""` | +| `metricsStorages[i].vmselect.maxAllowed` | Maximum allowed resources. | `object` | `{}` | +| `metricsStorages[i].vmselect.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | +| `metricsStorages[i].vmselect.maxAllowed.memory` | Memory limit. | `quantity` | `""` | +| `metricsStorages[i].vmstorage` | Configuration for vmstorage. | `object` | `{}` | +| `metricsStorages[i].vmstorage.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | +| `metricsStorages[i].vmstorage.minAllowed.cpu` | CPU request. | `quantity` | `""` | +| `metricsStorages[i].vmstorage.minAllowed.memory` | Memory request. | `quantity` | `""` | +| `metricsStorages[i].vmstorage.maxAllowed` | Maximum allowed resources. | `object` | `{}` | +| `metricsStorages[i].vmstorage.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | +| `metricsStorages[i].vmstorage.maxAllowed.memory` | Memory limit. | `quantity` | `""` | + + +### Logs storage configuration + +| Name | Description | Type | Value | +| ---------------------------------- | ---------------------------------------- | ---------- | ------------ | +| `logsStorages` | Configuration of logs storage instances. | `[]object` | `[...]` | +| `logsStorages[i].name` | Name of the storage instance. | `string` | `""` | +| `logsStorages[i].retentionPeriod` | Retention period for logs. | `string` | `1` | +| `logsStorages[i].storage` | Persistent volume size. | `string` | `10Gi` | +| `logsStorages[i].storageClassName` | StorageClass used to store the data. | `string` | `replicated` | + + +### Alerta configuration + +| Name | Description | Type | Value | +| ----------------------------------------- | --------------------------------------------------------------------- | ---------- | ------- | +| `alerta` | Configuration for the Alerta service. | `object` | `{}` | +| `alerta.storage` | Persistent volume size for the database. | `string` | `10Gi` | +| `alerta.storageClassName` | StorageClass used for the database. | `string` | `""` | +| `alerta.resources` | Resource configuration. | `object` | `{}` | +| `alerta.resources.requests` | Resource requests. | `object` | `{}` | +| `alerta.resources.requests.cpu` | CPU request. | `quantity` | `100m` | +| `alerta.resources.requests.memory` | Memory request. | `quantity` | `256Mi` | +| `alerta.resources.limits` | Resource limits. | `object` | `{}` | +| `alerta.resources.limits.cpu` | CPU limit. | `quantity` | `1` | +| `alerta.resources.limits.memory` | Memory limit. | `quantity` | `1Gi` | +| `alerta.alerts` | Alert routing configuration. | `object` | `{}` | +| `alerta.alerts.telegram` | Configuration for Telegram alerts. | `object` | `{}` | +| `alerta.alerts.telegram.token` | Telegram bot token. | `string` | `""` | +| `alerta.alerts.telegram.chatID` | Telegram chat ID(s), separated by commas. | `string` | `""` | +| `alerta.alerts.telegram.disabledSeverity` | List of severities without alerts (e.g. ["informational","warning"]). | `[]string` | `[]` | +| `alerta.alerts.slack` | Configuration for Slack alerts. | `object` | `{}` | +| `alerta.alerts.slack.url` | Configuration uri for Slack alerts. | `string` | `""` | +| `alerta.alerts.slack.disabledSeverity` | List of severities without alerts (e.g. ["informational","warning"]). | `[]string` | `[]` | + + +### Grafana configuration + +| Name | Description | Type | Value | +| ----------------------------------- | ---------------------------------------- | ---------- | ------- | +| `grafana` | Configuration for Grafana. | `object` | `{}` | +| `grafana.db` | Database configuration. | `object` | `{}` | +| `grafana.db.size` | Persistent volume size for the database. | `string` | `10Gi` | +| `grafana.resources` | Resource configuration. | `object` | `{}` | +| `grafana.resources.requests` | Resource requests. | `object` | `{}` | +| `grafana.resources.requests.cpu` | CPU request. | `quantity` | `100m` | +| `grafana.resources.requests.memory` | Memory request. | `quantity` | `256Mi` | +| `grafana.resources.limits` | Resource limits. | `object` | `{}` | +| `grafana.resources.limits.cpu` | CPU limit. | `quantity` | `1` | +| `grafana.resources.limits.memory` | Memory limit. | `quantity` | `1Gi` | + + +### Vmagent configuration + +| Name | Description | Type | Value | +| ------------------------ | ---------------------------------------- | -------- | ----- | +| `vmagent` | Configuration for VictoriaMetrics Agent. | `object` | `{}` | +| `vmagent.externalLabels` | External labels applied to all metrics. | `object` | `{}` | +| `vmagent.remoteWrite` | Remote write configuration. | `object` | `{}` | From 7fc145b969778437bafbdd04ff998183e112ee9a Mon Sep 17 00:00:00 2001 From: "ohotnikov.ivan" Date: Tue, 30 Dec 2025 01:10:12 +0300 Subject: [PATCH 2/5] fix auto-generation of documentation Signed-off-by: ohotnikov.ivan --- .../services/_include/parameters.md | 10 ++ .../services/monitoring/parameters.md | 118 ++++++++++++++++++ 2 files changed, 128 insertions(+) create mode 100644 content/en/docs/operations/services/_include/parameters.md create mode 100644 content/en/docs/operations/services/monitoring/parameters.md diff --git a/content/en/docs/operations/services/_include/parameters.md b/content/en/docs/operations/services/_include/parameters.md new file mode 100644 index 00000000..143a0ede --- /dev/null +++ b/content/en/docs/operations/services/_include/parameters.md @@ -0,0 +1,10 @@ +--- +title: "Monitoring Parameters" +linkTitle: "Parameters" +description: "Configure and manage monitoring parameters in Cozystack." +weight: 1 +menu: + docs: + parent: "Monitoring" + weight: 10 +--- diff --git a/content/en/docs/operations/services/monitoring/parameters.md b/content/en/docs/operations/services/monitoring/parameters.md new file mode 100644 index 00000000..a19d17de --- /dev/null +++ b/content/en/docs/operations/services/monitoring/parameters.md @@ -0,0 +1,118 @@ +--- +title: "Monitoring Parameters" +linkTitle: "Parameters" +description: "Configure and manage monitoring parameters in Cozystack." +weight: 1 +menu: + docs: + parent: "Monitoring" + weight: 10 +--- + + + +## Parameters + +### Common parameters + +| Name | Description | Type | Value | +| ------ | ----------------------------------------------------------------------------------------------------- | -------- | ----- | +| `host` | The hostname used to access Grafana externally (defaults to 'grafana' subdomain for the tenant host). | `string` | `""` | + + +### Metrics storage configuration + +| Name | Description | Type | Value | +| ------------------------------------------------ | ------------------------------------------- | ---------- | ------- | +| `metricsStorages` | Configuration of metrics storage instances. | `[]object` | `[...]` | +| `metricsStorages[i].name` | Name of the storage instance. | `string` | `""` | +| `metricsStorages[i].retentionPeriod` | Retention period for metrics. | `string` | `""` | +| `metricsStorages[i].deduplicationInterval` | Deduplication interval for metrics. | `string` | `""` | +| `metricsStorages[i].storage` | Persistent volume size. | `string` | `10Gi` | +| `metricsStorages[i].storageClassName` | StorageClass used for the data. | `string` | `""` | +| `metricsStorages[i].vminsert` | Configuration for vminsert. | `object` | `{}` | +| `metricsStorages[i].vminsert.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | +| `metricsStorages[i].vminsert.minAllowed.cpu` | CPU request. | `quantity` | `""` | +| `metricsStorages[i].vminsert.minAllowed.memory` | Memory request. | `quantity` | `""` | +| `metricsStorages[i].vminsert.maxAllowed` | Maximum allowed resources. | `object` | `{}` | +| `metricsStorages[i].vminsert.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | +| `metricsStorages[i].vminsert.maxAllowed.memory` | Memory limit. | `quantity` | `""` | +| `metricsStorages[i].vmselect` | Configuration for vmselect. | `object` | `{}` | +| `metricsStorages[i].vmselect.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | +| `metricsStorages[i].vmselect.minAllowed.cpu` | CPU request. | `quantity` | `""` | +| `metricsStorages[i].vmselect.minAllowed.memory` | Memory request. | `quantity` | `""` | +| `metricsStorages[i].vmselect.maxAllowed` | Maximum allowed resources. | `object` | `{}` | +| `metricsStorages[i].vmselect.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | +| `metricsStorages[i].vmselect.maxAllowed.memory` | Memory limit. | `quantity` | `""` | +| `metricsStorages[i].vmstorage` | Configuration for vmstorage. | `object` | `{}` | +| `metricsStorages[i].vmstorage.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | +| `metricsStorages[i].vmstorage.minAllowed.cpu` | CPU request. | `quantity` | `""` | +| `metricsStorages[i].vmstorage.minAllowed.memory` | Memory request. | `quantity` | `""` | +| `metricsStorages[i].vmstorage.maxAllowed` | Maximum allowed resources. | `object` | `{}` | +| `metricsStorages[i].vmstorage.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | +| `metricsStorages[i].vmstorage.maxAllowed.memory` | Memory limit. | `quantity` | `""` | + + +### Logs storage configuration + +| Name | Description | Type | Value | +| ---------------------------------- | ---------------------------------------- | ---------- | ------------ | +| `logsStorages` | Configuration of logs storage instances. | `[]object` | `[...]` | +| `logsStorages[i].name` | Name of the storage instance. | `string` | `""` | +| `logsStorages[i].retentionPeriod` | Retention period for logs. | `string` | `1` | +| `logsStorages[i].storage` | Persistent volume size. | `string` | `10Gi` | +| `logsStorages[i].storageClassName` | StorageClass used to store the data. | `string` | `replicated` | + + +### Alerta configuration + +| Name | Description | Type | Value | +| ----------------------------------------- | --------------------------------------------------------------------- | ---------- | ------- | +| `alerta` | Configuration for the Alerta service. | `object` | `{}` | +| `alerta.storage` | Persistent volume size for the database. | `string` | `10Gi` | +| `alerta.storageClassName` | StorageClass used for the database. | `string` | `""` | +| `alerta.resources` | Resource configuration. | `object` | `{}` | +| `alerta.resources.requests` | Resource requests. | `object` | `{}` | +| `alerta.resources.requests.cpu` | CPU request. | `quantity` | `100m` | +| `alerta.resources.requests.memory` | Memory request. | `quantity` | `256Mi` | +| `alerta.resources.limits` | Resource limits. | `object` | `{}` | +| `alerta.resources.limits.cpu` | CPU limit. | `quantity` | `1` | +| `alerta.resources.limits.memory` | Memory limit. | `quantity` | `1Gi` | +| `alerta.alerts` | Alert routing configuration. | `object` | `{}` | +| `alerta.alerts.telegram` | Configuration for Telegram alerts. | `object` | `{}` | +| `alerta.alerts.telegram.token` | Telegram bot token. | `string` | `""` | +| `alerta.alerts.telegram.chatID` | Telegram chat ID(s), separated by commas. | `string` | `""` | +| `alerta.alerts.telegram.disabledSeverity` | List of severities without alerts (e.g. ["informational","warning"]). | `[]string` | `[]` | +| `alerta.alerts.slack` | Configuration for Slack alerts. | `object` | `{}` | +| `alerta.alerts.slack.url` | Configuration uri for Slack alerts. | `string` | `""` | +| `alerta.alerts.slack.disabledSeverity` | List of severities without alerts (e.g. ["informational","warning"]). | `[]string` | `[]` | + + +### Grafana configuration + +| Name | Description | Type | Value | +| ----------------------------------- | ---------------------------------------- | ---------- | ------- | +| `grafana` | Configuration for Grafana. | `object` | `{}` | +| `grafana.db` | Database configuration. | `object` | `{}` | +| `grafana.db.size` | Persistent volume size for the database. | `string` | `10Gi` | +| `grafana.resources` | Resource configuration. | `object` | `{}` | +| `grafana.resources.requests` | Resource requests. | `object` | `{}` | +| `grafana.resources.requests.cpu` | CPU request. | `quantity` | `100m` | +| `grafana.resources.requests.memory` | Memory request. | `quantity` | `256Mi` | +| `grafana.resources.limits` | Resource limits. | `object` | `{}` | +| `grafana.resources.limits.cpu` | CPU limit. | `quantity` | `1` | +| `grafana.resources.limits.memory` | Memory limit. | `quantity` | `1Gi` | + + +### Vmagent configuration + +| Name | Description | Type | Value | +| ------------------------ | ---------------------------------------- | -------- | ----- | +| `vmagent` | Configuration for VictoriaMetrics Agent. | `object` | `{}` | +| `vmagent.externalLabels` | External labels applied to all metrics. | `object` | `{}` | +| `vmagent.remoteWrite` | Remote write configuration. | `object` | `{}` | + From e5055752100b230e2c73ee223f5d5e7b679e5f5a Mon Sep 17 00:00:00 2001 From: "ohotnikov.ivan" Date: Tue, 30 Dec 2025 01:11:32 +0300 Subject: [PATCH 3/5] fix auto-generation of documentation Signed-off-by: ohotnikov.ivan --- .../services/_include/monitoring-overview.md | 5 - .../en/docs/operations/services/monitoring.md | 141 ------------------ .../operations/services/monitoring/_index.md | 122 +-------------- .../operations/services/monitoring/setup.md | 4 +- 4 files changed, 3 insertions(+), 269 deletions(-) delete mode 100644 content/en/docs/operations/services/monitoring.md diff --git a/content/en/docs/operations/services/_include/monitoring-overview.md b/content/en/docs/operations/services/_include/monitoring-overview.md index a12542e5..5475d5c2 100644 --- a/content/en/docs/operations/services/_include/monitoring-overview.md +++ b/content/en/docs/operations/services/_include/monitoring-overview.md @@ -1,8 +1,3 @@ ---- -title: "Monitoring Overview" -linkTitle: "Monitoring Overview" ---- - ## Data Flow Architecture ```mermaid diff --git a/content/en/docs/operations/services/monitoring.md b/content/en/docs/operations/services/monitoring.md deleted file mode 100644 index 9bf7f469..00000000 --- a/content/en/docs/operations/services/monitoring.md +++ /dev/null @@ -1,141 +0,0 @@ ---- -title: "Monitoring Hub Reference" -linkTitle: "Monitoring" ---- - -{{< include "monitoring-overview.md" >}} - -## Monitoring Architecture - -```mermaid -graph TD - A[VMAgent] --> B[VMCluster] - B --> C[Grafana] - B --> D[Alerta] - E[Fluent Bit] --> F[VLogs] - D --> G[Telegram] - D --> H[Slack] -``` - -## Alerting Flow - -```mermaid -sequenceDiagram - participant P as Prometheus - participant AM as Alertmanager - participant A as Alerta - participant T as Telegram - participant S as Slack - P->>AM: Send Alert - AM->>A: Forward Alert - A->>T: Send Notification - A->>S: Send Notification -``` - - - - -## Parameters - -### Common parameters - -| Name | Description | Type | Value | -| ------ | ----------------------------------------------------------------------------------------------------- | -------- | ----- | -| `host` | The hostname used to access Grafana externally (defaults to 'grafana' subdomain for the tenant host). | `string` | `""` | - - -### Metrics storage configuration - -| Name | Description | Type | Value | -| ------------------------------------------------ | ------------------------------------------- | ---------- | ------- | -| `metricsStorages` | Configuration of metrics storage instances. | `[]object` | `[...]` | -| `metricsStorages[i].name` | Name of the storage instance. | `string` | `""` | -| `metricsStorages[i].retentionPeriod` | Retention period for metrics. | `string` | `""` | -| `metricsStorages[i].deduplicationInterval` | Deduplication interval for metrics. | `string` | `""` | -| `metricsStorages[i].storage` | Persistent volume size. | `string` | `10Gi` | -| `metricsStorages[i].storageClassName` | StorageClass used for the data. | `string` | `""` | -| `metricsStorages[i].vminsert` | Configuration for vminsert. | `object` | `{}` | -| `metricsStorages[i].vminsert.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | -| `metricsStorages[i].vminsert.minAllowed.cpu` | CPU request. | `quantity` | `""` | -| `metricsStorages[i].vminsert.minAllowed.memory` | Memory request. | `quantity` | `""` | -| `metricsStorages[i].vminsert.maxAllowed` | Maximum allowed resources. | `object` | `{}` | -| `metricsStorages[i].vminsert.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | -| `metricsStorages[i].vminsert.maxAllowed.memory` | Memory limit. | `quantity` | `""` | -| `metricsStorages[i].vmselect` | Configuration for vmselect. | `object` | `{}` | -| `metricsStorages[i].vmselect.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | -| `metricsStorages[i].vmselect.minAllowed.cpu` | CPU request. | `quantity` | `""` | -| `metricsStorages[i].vmselect.minAllowed.memory` | Memory request. | `quantity` | `""` | -| `metricsStorages[i].vmselect.maxAllowed` | Maximum allowed resources. | `object` | `{}` | -| `metricsStorages[i].vmselect.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | -| `metricsStorages[i].vmselect.maxAllowed.memory` | Memory limit. | `quantity` | `""` | -| `metricsStorages[i].vmstorage` | Configuration for vmstorage. | `object` | `{}` | -| `metricsStorages[i].vmstorage.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | -| `metricsStorages[i].vmstorage.minAllowed.cpu` | CPU request. | `quantity` | `""` | -| `metricsStorages[i].vmstorage.minAllowed.memory` | Memory request. | `quantity` | `""` | -| `metricsStorages[i].vmstorage.maxAllowed` | Maximum allowed resources. | `object` | `{}` | -| `metricsStorages[i].vmstorage.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | -| `metricsStorages[i].vmstorage.maxAllowed.memory` | Memory limit. | `quantity` | `""` | - - -### Logs storage configuration - -| Name | Description | Type | Value | -| ---------------------------------- | ---------------------------------------- | ---------- | ------------ | -| `logsStorages` | Configuration of logs storage instances. | `[]object` | `[...]` | -| `logsStorages[i].name` | Name of the storage instance. | `string` | `""` | -| `logsStorages[i].retentionPeriod` | Retention period for logs. | `string` | `1` | -| `logsStorages[i].storage` | Persistent volume size. | `string` | `10Gi` | -| `logsStorages[i].storageClassName` | StorageClass used to store the data. | `string` | `replicated` | - - -### Alerta configuration - -| Name | Description | Type | Value | -| ----------------------------------------- | --------------------------------------------------------------------- | ---------- | ------- | -| `alerta` | Configuration for the Alerta service. | `object` | `{}` | -| `alerta.storage` | Persistent volume size for the database. | `string` | `10Gi` | -| `alerta.storageClassName` | StorageClass used for the database. | `string` | `""` | -| `alerta.resources` | Resource configuration. | `object` | `{}` | -| `alerta.resources.requests` | Resource requests. | `object` | `{}` | -| `alerta.resources.requests.cpu` | CPU request. | `quantity` | `100m` | -| `alerta.resources.requests.memory` | Memory request. | `quantity` | `256Mi` | -| `alerta.resources.limits` | Resource limits. | `object` | `{}` | -| `alerta.resources.limits.cpu` | CPU limit. | `quantity` | `1` | -| `alerta.resources.limits.memory` | Memory limit. | `quantity` | `1Gi` | -| `alerta.alerts` | Alert routing configuration. | `object` | `{}` | -| `alerta.alerts.telegram` | Configuration for Telegram alerts. | `object` | `{}` | -| `alerta.alerts.telegram.token` | Telegram bot token. | `string` | `""` | -| `alerta.alerts.telegram.chatID` | Telegram chat ID(s), separated by commas. | `string` | `""` | -| `alerta.alerts.telegram.disabledSeverity` | List of severities without alerts (e.g. ["informational","warning"]). | `[]string` | `[]` | -| `alerta.alerts.slack` | Configuration for Slack alerts. | `object` | `{}` | -| `alerta.alerts.slack.url` | Configuration uri for Slack alerts. | `string` | `""` | -| `alerta.alerts.slack.disabledSeverity` | List of severities without alerts (e.g. ["informational","warning"]). | `[]string` | `[]` | - - -### Grafana configuration - -| Name | Description | Type | Value | -| ----------------------------------- | ---------------------------------------- | ---------- | ------- | -| `grafana` | Configuration for Grafana. | `object` | `{}` | -| `grafana.db` | Database configuration. | `object` | `{}` | -| `grafana.db.size` | Persistent volume size for the database. | `string` | `10Gi` | -| `grafana.resources` | Resource configuration. | `object` | `{}` | -| `grafana.resources.requests` | Resource requests. | `object` | `{}` | -| `grafana.resources.requests.cpu` | CPU request. | `quantity` | `100m` | -| `grafana.resources.requests.memory` | Memory request. | `quantity` | `256Mi` | -| `grafana.resources.limits` | Resource limits. | `object` | `{}` | -| `grafana.resources.limits.cpu` | CPU limit. | `quantity` | `1` | -| `grafana.resources.limits.memory` | Memory limit. | `quantity` | `1Gi` | - - -### Vmagent configuration - -| Name | Description | Type | Value | -| ------------------------ | ---------------------------------------- | -------- | ----- | -| `vmagent` | Configuration for VictoriaMetrics Agent. | `object` | `{}` | -| `vmagent.externalLabels` | External labels applied to all metrics. | `object` | `{}` | -| `vmagent.remoteWrite` | Remote write configuration. | `object` | `{}` | diff --git a/content/en/docs/operations/services/monitoring/_index.md b/content/en/docs/operations/services/monitoring/_index.md index 761de461..a3b94f41 100644 --- a/content/en/docs/operations/services/monitoring/_index.md +++ b/content/en/docs/operations/services/monitoring/_index.md @@ -2,124 +2,4 @@ title: "Monitoring Hub Reference" linkTitle: "Monitoring" --- - - - -### Common parameters - -| Name | Description | Type | Value | -| ------ | ----------------------------------------------------------------------------------------------------- | -------- | ----- | -| `host` | The hostname used to access Grafana externally (defaults to 'grafana' subdomain for the tenant host). | `string` | `""` | - - -### Metrics storage configuration - -| Name | Description | Type | Value | -| ------------------------------------------------ | ------------------------------------------- | ---------- | ------- | -| `metricsStorages` | Configuration of metrics storage instances. | `[]object` | `[...]` | -| `metricsStorages[i].name` | Name of the storage instance. | `string` | `""` | -| `metricsStorages[i].retentionPeriod` | Retention period for metrics. | `string` | `""` | -| `metricsStorages[i].deduplicationInterval` | Deduplication interval for metrics. | `string` | `""` | -| `metricsStorages[i].storage` | Persistent volume size. | `string` | `10Gi` | -| `metricsStorages[i].storageClassName` | StorageClass used for the data. | `string` | `""` | -| `metricsStorages[i].vminsert` | Configuration for vminsert. | `object` | `{}` | -| `metricsStorages[i].vminsert.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | -| `metricsStorages[i].vminsert.minAllowed.cpu` | CPU request. | `quantity` | `""` | -| `metricsStorages[i].vminsert.minAllowed.memory` | Memory request. | `quantity` | `""` | -| `metricsStorages[i].vminsert.maxAllowed` | Maximum allowed resources. | `object` | `{}` | -| `metricsStorages[i].vminsert.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | -| `metricsStorages[i].vminsert.maxAllowed.memory` | Memory limit. | `quantity` | `""` | -| `metricsStorages[i].vmselect` | Configuration for vmselect. | `object` | `{}` | -| `metricsStorages[i].vmselect.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | -| `metricsStorages[i].vmselect.minAllowed.cpu` | CPU request. | `quantity` | `""` | -| `metricsStorages[i].vmselect.minAllowed.memory` | Memory request. | `quantity` | `""` | -| `metricsStorages[i].vmselect.maxAllowed` | Maximum allowed resources. | `object` | `{}` | -| `metricsStorages[i].vmselect.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | -| `metricsStorages[i].vmselect.maxAllowed.memory` | Memory limit. | `quantity` | `""` | -| `metricsStorages[i].vmstorage` | Configuration for vmstorage. | `object` | `{}` | -| `metricsStorages[i].vmstorage.minAllowed` | Minimum guaranteed resources. | `object` | `{}` | -| `metricsStorages[i].vmstorage.minAllowed.cpu` | CPU request. | `quantity` | `""` | -| `metricsStorages[i].vmstorage.minAllowed.memory` | Memory request. | `quantity` | `""` | -| `metricsStorages[i].vmstorage.maxAllowed` | Maximum allowed resources. | `object` | `{}` | -| `metricsStorages[i].vmstorage.maxAllowed.cpu` | CPU limit. | `quantity` | `""` | -| `metricsStorages[i].vmstorage.maxAllowed.memory` | Memory limit. | `quantity` | `""` | - - -### Logs storage configuration - -| Name | Description | Type | Value | -| ---------------------------------- | ---------------------------------------- | ---------- | ------------ | -| `logsStorages` | Configuration of logs storage instances. | `[]object` | `[...]` | -| `logsStorages[i].name` | Name of the storage instance. | `string` | `""` | -| `logsStorages[i].retentionPeriod` | Retention period for logs. | `string` | `1` | -| `logsStorages[i].storage` | Persistent volume size. | `string` | `10Gi` | -| `logsStorages[i].storageClassName` | StorageClass used to store the data. | `string` | `replicated` | - - -### Alerta configuration - -| Name | Description | Type | Value | -| ----------------------------------------- | --------------------------------------------------------------------- | ---------- | ------- | -| `alerta` | Configuration for the Alerta service. | `object` | `{}` | -| `alerta.storage` | Persistent volume size for the database. | `string` | `10Gi` | -| `alerta.storageClassName` | StorageClass used for the database. | `string` | `""` | -| `alerta.resources` | Resource configuration. | `object` | `{}` | -| `alerta.resources.requests` | Resource requests. | `object` | `{}` | -| `alerta.resources.requests.cpu` | CPU request. | `quantity` | `100m` | -| `alerta.resources.requests.memory` | Memory request. | `quantity` | `256Mi` | -| `alerta.resources.limits` | Resource limits. | `object` | `{}` | -| `alerta.resources.limits.cpu` | CPU limit. | `quantity` | `1` | -| `alerta.resources.limits.memory` | Memory limit. | `quantity` | `1Gi` | -| `alerta.alerts` | Alert routing configuration. | `object` | `{}` | -| `alerta.alerts.telegram` | Configuration for Telegram alerts. | `object` | `{}` | -| `alerta.alerts.telegram.token` | Telegram bot token. | `string` | `""` | -| `alerta.alerts.telegram.chatID` | Telegram chat ID(s), separated by commas. | `string` | `""` | -| `alerta.alerts.telegram.disabledSeverity` | List of severities without alerts (e.g. ["informational","warning"]). | `[]string` | `[]` | -| `alerta.alerts.slack` | Configuration for Slack alerts. | `object` | `{}` | -| `alerta.alerts.slack.url` | Configuration uri for Slack alerts. | `string` | `""` | -| `alerta.alerts.slack.disabledSeverity` | List of severities without alerts (e.g. ["informational","warning"]). | `[]string` | `[]` | - - -### Grafana configuration - -| Name | Description | Type | Value | -| ----------------------------------- | ---------------------------------------- | ---------- | ------- | -| `grafana` | Configuration for Grafana. | `object` | `{}` | -| `grafana.db` | Database configuration. | `object` | `{}` | -| `grafana.db.size` | Persistent volume size for the database. | `string` | `10Gi` | -| `grafana.resources` | Resource configuration. | `object` | `{}` | -| `grafana.resources.requests` | Resource requests. | `object` | `{}` | -| `grafana.resources.requests.cpu` | CPU request. | `quantity` | `100m` | -| `grafana.resources.requests.memory` | Memory request. | `quantity` | `256Mi` | -| `grafana.resources.limits` | Resource limits. | `object` | `{}` | -| `grafana.resources.limits.cpu` | CPU limit. | `quantity` | `1` | -| `grafana.resources.limits.memory` | Memory limit. | `quantity` | `1Gi` | - - -### Vmagent configuration - -| Name | Description | Type | Value | -| ------------------------ | ---------------------------------------- | -------- | ----- | -| `vmagent` | Configuration for VictoriaMetrics Agent. | `object` | `{}` | -| `vmagent.externalLabels` | External labels applied to all metrics. | `object` | `{}` | -| `vmagent.remoteWrite` | Remote write configuration. | `object` | `{}` | - -## Alerting Flow - -```mermaid -sequenceDiagram - participant P as Prometheus - participant AM as Alertmanager - participant A as Alerta - participant T as Telegram - participant S as Slack - P->>AM: Send Alert - AM->>A: Forward Alert - A->>T: Send Notification - A->>S: Send Notification -``` - +{{< include "docs/operations/services/_include/monitoring-overview.md" >}} \ No newline at end of file diff --git a/content/en/docs/operations/services/monitoring/setup.md b/content/en/docs/operations/services/monitoring/setup.md index 6a391b0b..fc9bba1d 100644 --- a/content/en/docs/operations/services/monitoring/setup.md +++ b/content/en/docs/operations/services/monitoring/setup.md @@ -2,11 +2,11 @@ title: "Monitoring Setup" linkTitle: "Setup" description: "Guide to setting up and configuring monitoring in Cozystack" -weight: 1 +weight: 2 menu: docs: parent: "Monitoring" - weight: 10 + weight: 11 --- ## Overview From 1c8d2689cc1633f78c8f1d3d48de65413d1c61c0 Mon Sep 17 00:00:00 2001 From: "ohotnikov.ivan" Date: Tue, 30 Dec 2025 01:11:46 +0300 Subject: [PATCH 4/5] fix auto-generation of documentation Signed-off-by: ohotnikov.ivan --- hack/update_apps.sh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/hack/update_apps.sh b/hack/update_apps.sh index 916fb678..6bf271c1 100755 --- a/hack/update_apps.sh +++ b/hack/update_apps.sh @@ -79,8 +79,13 @@ for app in "${APPS[@]}"; do src_file="${DEST_DIR%/}/${app}/_include/_index.md" dest_file="${DEST_DIR%/}/${app}/_index.md" else - src_file="${DEST_DIR%/}/_include/${app}.md" - dest_file="${DEST_DIR%/}/${app}.md" + if [[ "$app" == "monitoring" ]]; then + src_file="${DEST_DIR%/}/_include/parameters.md" + dest_file="${DEST_DIR%/}/monitoring/parameters.md" + else + src_file="${DEST_DIR%/}/_include/${app}.md" + dest_file="${DEST_DIR%/}/${app}.md" + fi fi # Ensure template exists (touch if missing) From 10a386e0787619064f9c348e131f81e623c567c0 Mon Sep 17 00:00:00 2001 From: "ohotnikov.ivan" Date: Wed, 31 Dec 2025 12:03:16 +0300 Subject: [PATCH 5/5] fix disabledSeverity syntax Signed-off-by: ohotnikov.ivan --- .../operations/services/monitoring/alerting.md | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/content/en/docs/operations/services/monitoring/alerting.md b/content/en/docs/operations/services/monitoring/alerting.md index 04e33ac0..d69237ba 100644 --- a/content/en/docs/operations/services/monitoring/alerting.md +++ b/content/en/docs/operations/services/monitoring/alerting.md @@ -89,7 +89,8 @@ alerta: telegram: token: "your-telegram-bot-token" chatID: "chat-id-1,chat-id-2" - disabledSeverity: ["informational"] + disabledSeverity: + - informational ``` #### Slack Integration @@ -101,7 +102,9 @@ alerta: alerts: slack: url: "https://hooks.slack.com/services/YOUR/SLACK/WEBHOOK" - disabledSeverity: ["informational", "warning"] + disabledSeverity: + - informational + - warning ``` #### Email Integration @@ -118,7 +121,8 @@ alerta: smtpPassword: "your-password" fromAddress: "alerts@example.com" toAddress: "team@example.com" - disabledSeverity: ["informational"] + disabledSeverity: + - informational ``` #### PagerDuty Integration @@ -130,7 +134,9 @@ alerta: alerts: pagerduty: serviceKey: "YOUR_PAGERDUTY_INTEGRATION_KEY" - disabledSeverity: ["informational", "warning"] + disabledSeverity: + - informational + - warning ``` For detailed configuration options, see [Monitoring Hub Reference]({{% ref "docs/operations/services/monitoring" %}}).