From 439f23fc103ef66c7cf28e1a72b28e90876206d6 Mon Sep 17 00:00:00 2001 From: Andrei Kvapil Date: Fri, 16 Jan 2026 19:34:03 +0100 Subject: [PATCH] docs(telemetry): update telemetry payload documentation Update telemetry documentation to reflect the new split architecture: - cozystack-operator collects cluster-level metrics - cozystack-controller collects application-level metrics Updated metrics: - Added cozy_cluster_capacity for cpu, memory, GPU resources - Added cozy_package_info for installed packages - Added cozy_application_count for application instances - Removed cozy_workloads_count (replaced by cozy_application_count) - Removed cozy_tenants_count (now counted as cozy_application_count{kind="Tenant"}) - Removed bundle/oidc labels from cozy_cluster_info Co-Authored-By: Claude Signed-off-by: Andrei Kvapil --- .../operations/configuration/telemetry.md | 35 +++++++++++++------ 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/content/en/docs/operations/configuration/telemetry.md b/content/en/docs/operations/configuration/telemetry.md index d814b4e6..8c491d11 100644 --- a/content/en/docs/operations/configuration/telemetry.md +++ b/content/en/docs/operations/configuration/telemetry.md @@ -18,7 +18,11 @@ Cozystack, as an open source project, thrives on community feedback and usage in Cozystack strives to comply with the [LF Telemetry Data Policy](https://www.linuxfoundation.org/legal/telemetry-data-policy), ensuring responsible data collection practices that respect user privacy and transparency. -Our focus is on gathering non-personal usage metrics about Cozystack components rather than personal user information. We specifically collect information on the most commonly used application packages, the bundle names in use, enabled Cozystack features, as well as kernel versions and operating systems running in the environment. This collected data helps us gain insights into prevalent configurations and usage trends across installations. +Our focus is on gathering non-personal usage metrics about Cozystack components rather than personal user information. We specifically collect information about cluster infrastructure (nodes, storage, networking), installed packages, and application instances. This collected data helps us gain insights into prevalent configurations and usage trends across installations. + +Telemetry is collected by two components: +- **cozystack-operator** — collects cluster-level metrics (nodes, storage, packages) +- **cozystack-controller** — collects application-level metrics (deployed application instances) For a detailed view of what data is collected, you can review the telemetry implementation: - [Telemetry Client](https://github.com/cozystack/cozystack/tree/main/internal/telemetry) @@ -26,21 +30,32 @@ For a detailed view of what data is collected, you can review the telemetry impl ### Example of Telemetry Payload: -Below is how a typical telemetry payload looks like in Cozystack: +Below is how a typical telemetry payload looks like in Cozystack. + +**From cozystack-operator** (cluster infrastructure): ```prometheus -cozy_cluster_info{cozystack_version="v0.22.0",kubernetes_version="v1.31.4",oidc_enabled="true",bundle_name="paas-full",bunde_enable="",bunde_disable=""} 1 +cozy_cluster_info{cozystack_version="v1.0.0",kubernetes_version="v1.31.4"} 1 cozy_nodes_count{os="linux (Talos (v1.8.4))",kernel="6.6.64-talos"} 3 +cozy_cluster_capacity{resource="cpu"} 168 +cozy_cluster_capacity{resource="memory"} 811020009472 +cozy_cluster_capacity{resource="nvidia.com/TU104GL_TESLA_T4"} 3 cozy_loadbalancers_count 1 -cozy_tenants_count 2 cozy_pvs_count{driver="linstor.csi.linbit.com",size="5Gi"} 7 cozy_pvs_count{driver="linstor.csi.linbit.com",size="10Gi"} 6 -cozy_pvs_count{driver="linstor.csi.linbit.com",size="25Gi"} 2 -cozy_workloads_count{uid="6099a6ff-87bd-463b-9deb-6b8dcdc7c47b",kind="etcd",type="etcd",version="2.4.0"} 3 -cozy_workloads_count{uid="17808511-372f-4cb5-ab1e-b3693118df77",kind="ingress",type="controller",version="1.4.0"} 2 -cozy_workloads_count{uid="994df12f-ed0d-4bd2-988e-955b9fa5d451",kind="kubernetes",type="control-plane",version="0.15.0"} 2 -cozy_workloads_count{uid="532cc3b0-84d1-4ad2-be4f-3c5c08c93633",kind="kubernetes",type="worker",version="0.15.0"} 10 -cozy_workloads_count{uid="d0e0fa40-38bd-4e86-9d24-6c8e2f16434c",kind="postgres",type="postgres",version="0.8.0"} 2 +cozy_package_info{name="cozystack.core",variant="default"} 1 +cozy_package_info{name="cozystack.storage",variant="linstor"} 1 +cozy_package_info{name="cozystack.monitoring",variant="default"} 1 +``` + +**From cozystack-controller** (application instances): + +```prometheus +cozy_application_count{kind="Tenant"} 2 +cozy_application_count{kind="Postgres"} 5 +cozy_application_count{kind="Redis"} 3 +cozy_application_count{kind="Kubernetes"} 2 +cozy_application_count{kind="VirtualMachine"} 0 ``` Data is collected by components running within Cozystack that periodically gather and transmit usage statistics to our secure backend. The telemetry system ensures that data is anonymized, aggregated, and stored securely, with strict controls on access to protect user privacy.