diff --git a/src/content/docs/docs/getting-started/sending-data-to-kloudmate.mdx b/src/content/docs/docs/getting-started/sending-data-to-kloudmate.mdx index 5dafd65b..4cfd9218 100644 --- a/src/content/docs/docs/getting-started/sending-data-to-kloudmate.mdx +++ b/src/content/docs/docs/getting-started/sending-data-to-kloudmate.mdx @@ -33,7 +33,7 @@ Choose the ingestion path below that best matches your existing architecture, yo @@ -57,7 +57,7 @@ If you are unsure where to begin, use this table to map your immediate goal to t | --- | --- | | Fastest overall onboarding | [KloudMate Agent](../../kloudmate-agent/) | | Reuse existing OTel pipelines | [OpenTelemetry Collector](../../opentelemetry/) | -| Import Prometheus metrics | [Prometheus Integration](../../infrastructure/prometheus-integration/) | +| Import Prometheus metrics | [Prometheus Integration](../../infrastructure/integrations/prometheus-integration/) | | Onboard AWS with minimal setup | [AWS Integration](../../aws-integration/) | | Onboard Azure services | [Azure Integration](../../azure-integration/) | @@ -67,7 +67,7 @@ For teams starting from scratch, we recommend this phased approach: 1. **Infrastructure First:** Start with the [KloudMate Agent](../../kloudmate-agent/) to get baseline telemetry, host metrics, and zero-code visibility. 2. **Application Tracing:** Add [OpenTelemetry](../../opentelemetry/) instrumentation to your applications where you need richer distributed tracing or custom metrics. -3. **Cloud Integrations:** Layer in cloud-specific integrations for [AWS](../../aws-integration/), [Azure](../../azure-integration/), or [Prometheus](../../infrastructure/prometheus-integration/) to centralize your remaining data sources. +3. **Cloud Integrations:** Layer in cloud-specific integrations for [AWS](../../aws-integration/), [Azure](../../azure-integration/), or [Prometheus](../../infrastructure/integrations/prometheus-integration/) to centralize your remaining data sources. *** diff --git a/src/content/docs/docs/infrastructure/index.mdx b/src/content/docs/docs/infrastructure/index.mdx index 91abfbb0..35e9c5ab 100644 --- a/src/content/docs/docs/infrastructure/index.mdx +++ b/src/content/docs/docs/infrastructure/index.mdx @@ -22,8 +22,10 @@ This section covers common infrastructure ingestion paths, whether you are monit - [Hosts & Containers](./hosts/) - [Advanced Host Configuration](./server-metrics-to-kloudmate/) - [Kubernetes Monitoring](./kubernetes/) -- [Prometheus Integration](./prometheus-integration/) -- [vCenter Integration](./vcenter-integration/) +- [Prometheus Integration](./integrations/prometheus-integration/) +- [vCenter Integration](./integrations/vcenter-integration/) +- [Kafka Integration](./integrations/kafka-integration/) +- [Keycloak Integration](./integrations/keycloak-integration/) - [AWS Integration](../../aws-integration/) - [Azure Integration](../../azure-integration/) diff --git a/src/content/docs/docs/infrastructure/integrations/_meta.json b/src/content/docs/docs/infrastructure/integrations/_meta.json new file mode 100644 index 00000000..18901ba9 --- /dev/null +++ b/src/content/docs/docs/infrastructure/integrations/_meta.json @@ -0,0 +1,4 @@ +{ + "label": "Integrations", + "order": 4 +} diff --git a/src/content/docs/docs/infrastructure/integrations/kafka-integration.mdx b/src/content/docs/docs/infrastructure/integrations/kafka-integration.mdx new file mode 100644 index 00000000..0a91ab3c --- /dev/null +++ b/src/content/docs/docs/infrastructure/integrations/kafka-integration.mdx @@ -0,0 +1,116 @@ +--- +title: "Kafka Integration" +description: "Collect Kafka broker, topic, and consumer metrics in KloudMate through the KloudMate Agent." +sidebar: + order: 3 +--- +Use this integration when you want to monitor Kafka brokers, topics, and consumers in KloudMate through the OpenTelemetry `kafkametrics` receiver running in the KloudMate Agent. + +## Prerequisites + +1. Install and run the [KloudMate Agent](../../../kloudmate-agent/). +2. Ensure your Kafka brokers are reachable from the node where the Agent is running. +3. Have your Kafka broker addresses, protocol version, and authentication credentials ready. + +## Step 1: Define the Kafka Metrics Receiver + +Add the following `kafkametrics` receiver to your Agent configuration file (typically `/etc/km-agent/config.yaml`). Replace the broker addresses, credentials, and protocol version to match your environment. + +```yaml +extensions: + health_check: + endpoint: 0.0.0.0:13133 + +receivers: + kafkametrics: + brokers: + - kafka.example.com:9095 + - kafka.example.com:9096 + - kafka.example.com:9097 + protocol_version: 2.8.0 + auth: + plain_text: + username: + password: + scrapers: + - brokers + - topics + - consumers + metrics: + kafka.broker.log_retention_period: + enabled: true + kafka.topic.replication_factor: + enabled: true + kafka.topic.log_retention_period: + enabled: true + kafka.topic.log_retention_size: + enabled: true + kafka.topic.min_insync_replicas: + enabled: true +``` + +The `scrapers` block controls which data is collected. `brokers`, `topics`, and `consumers` are the three available options. The metrics listed under the `metrics` block are not enabled by default and must be explicitly set to `enabled: true` to be collected. + +## Step 2: Add to Pipeline + +Add the `kafkametrics` receiver to the metrics pipeline in your Agent configuration. + +```yaml +service: + extensions: + - health_check + telemetry: + metrics: + level: none + pipelines: + metrics/kafkametrics: + receivers: + - kafkametrics + processors: + - batch + exporters: + - otlphttp +``` + +## Step 3: Restart the Agent + +```bash +systemctl restart kmagent +systemctl status kmagent +``` + +## Step 4: Validate in KloudMate + +After the Agent restarts: + +- Open [Explore](../../../visualize-data/explore/) in KloudMate. +- Query one of the scraped Kafka metrics, such as `kafka.brokers` or `kafka.topic.partitions`. +- Build dashboards or alarms once the data is visible. + +## Standard Kafka Dashboards + +KloudMate provides prebuilt Kafka dashboards through [dashboard templates](https://templates.kloudmate.com/kafka/index.html). These dashboards help you visualize broker availability, topic partitions, consumer lag, offsets, and replication health. + +To import and start using these templates, follow the steps described in [Import from Templates](../../../visualize-data/dashboards/create-a-dashboard/). + +## Default Kafka Metrics + +Kafka Monitoring automatically collects commonly used Kafka metrics when enabled. + +Example Metrics + +| **Metric Name** | **Description** | +| --- | --- | +| kafka.brokers | Number of brokers in the cluster. | +| kafka.topic.partitions | Number of partitions in a topic. | +| kafka.partition.current_offset | Current offset of a topic partition. | +| kafka.partition.oldest_offset | Oldest available offset of a topic partition. | +| kafka.partition.replicas | Number of replicas configured for a topic partition. | +| kafka.partition.replicas_in_sync | Number of in-sync replicas for a topic partition. | +| kafka.consumer_group.members | Number of members in a consumer group. | +| kafka.consumer_group.lag | Current approximate lag of a consumer group for a topic partition. | +| kafka.consumer_group.lag_sum | Current approximate sum of consumer group lag across all topic partitions. | +| kafka.consumer_group.offset | Current consumer group offset for a topic partition. | +| kafka.consumer_group.offset_sum | Sum of consumer group offsets across topic partitions. | + +For the complete metrics list, refer to the [metrics reference](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/receiver/kafkametricsreceiver/documentation.md). diff --git a/src/content/docs/docs/infrastructure/integrations/keycloak-integration.mdx b/src/content/docs/docs/infrastructure/integrations/keycloak-integration.mdx new file mode 100644 index 00000000..8ca2ec51 --- /dev/null +++ b/src/content/docs/docs/infrastructure/integrations/keycloak-integration.mdx @@ -0,0 +1,74 @@ +--- +title: "Keycloak Integration" +description: "Collect Keycloak metrics in KloudMate through the KloudMate Agent." +sidebar: + order: 4 +--- +Use this integration when you want to scrape Keycloak metrics from its Prometheus-compatible metrics endpoint and send them to KloudMate through the KloudMate Agent. + +## Prerequisites + +1. Install and run the [KloudMate Agent](../../../kloudmate-agent/). +2. Ensure your Keycloak service exposes the `/auth/metrics` endpoint. If this endpoint is not available, no metrics will be scraped. +3. Keycloak must be reachable from the node where the KloudMate Agent is running. + +## Step 1: Define the Prometheus Receiver + +Add the following Prometheus receiver to your Agent configuration file (typically `/etc/km-agent/config.yaml`). Replace `` and `` with your actual Kubernetes service name and namespace. + +```yaml +extensions: + health_check: + endpoint: 0.0.0.0:13133 + +receivers: + prometheus: + config: + scrape_configs: + - job_name: keycloak + metrics_path: /auth/metrics + scheme: http + static_configs: + - targets: + - ..svc.cluster.local:8080 +``` + +:::info +Validate indentation carefully when copying `scrape_configs` into the Agent configuration. +::: + +## Step 2: Add to Pipeline + +Add the Prometheus receiver to the metrics pipeline in your Agent configuration. + +```yaml +service: + extensions: + - health_check + telemetry: + metrics: + level: none + pipelines: + metrics/keycloak: + receivers: + - prometheus + processors: + - batch + exporters: + - otlphttp +``` + +## Step 3: Restart the Agent + +```bash +systemctl restart kmagent +systemctl status kmagent +``` + +## Step 4: Validate in KloudMate + +After the Agent restarts: + +- Open [Explore](../../../visualize-data/explore/) in KloudMate. +- Query one of the scraped Keycloak metrics. +- Build dashboards or alarms once data is visible. diff --git a/src/content/docs/docs/infrastructure/prometheus-integration.mdx b/src/content/docs/docs/infrastructure/integrations/prometheus-integration.mdx similarity index 90% rename from src/content/docs/docs/infrastructure/prometheus-integration.mdx rename to src/content/docs/docs/infrastructure/integrations/prometheus-integration.mdx index e03240ef..2e1f77ee 100644 --- a/src/content/docs/docs/infrastructure/prometheus-integration.mdx +++ b/src/content/docs/docs/infrastructure/integrations/prometheus-integration.mdx @@ -1,6 +1,8 @@ --- title: "Prometheus Integration" description: "Ingest Prometheus metrics into KloudMate through the KloudMate Agent." +sidebar: + order: 1 --- Use this integration when your workloads already expose Prometheus metrics and you want KloudMate to ingest them without changing application code. @@ -8,7 +10,7 @@ KloudMate does not scrape Prometheus directly. Instead, you configure the KloudM ## Prerequisites -1. Install and run the [KloudMate Agent](../../kloudmate-agent/). +1. Install and run the [KloudMate Agent](../../../kloudmate-agent/). 2. Ensure you can access the Prometheus configuration or know the scrape targets you want the Agent to use. ## Step 1: Define the Prometheus Receiver @@ -65,11 +67,11 @@ systemctl status kmagent After the Agent restarts: -- open [Explore](../../visualize-data/explore/) +- open [Explore](../../../visualize-data/explore/) - query one of the scraped Prometheus metrics - build dashboards or alarms once the data is visible ## Related Paths -- [KloudMate Agent](../../kloudmate-agent/) -- [Explore](../../visualize-data/explore/) +- [KloudMate Agent](../../../kloudmate-agent/) +- [Explore](../../../visualize-data/explore/) diff --git a/src/content/docs/docs/infrastructure/vcenter-integration.mdx b/src/content/docs/docs/infrastructure/integrations/vcenter-integration.mdx similarity index 98% rename from src/content/docs/docs/infrastructure/vcenter-integration.mdx rename to src/content/docs/docs/infrastructure/integrations/vcenter-integration.mdx index 23b3437d..132c563d 100644 --- a/src/content/docs/docs/infrastructure/vcenter-integration.mdx +++ b/src/content/docs/docs/infrastructure/integrations/vcenter-integration.mdx @@ -1,6 +1,8 @@ --- title: "vCenter Integration" description: "Collect VMware vCenter metrics in KloudMate through the OpenTelemetry vCenter receiver." +sidebar: + order: 2 --- Use this guide to collect VMware vCenter metrics in KloudMate with the OpenTelemetry `vcenter` receiver running via the KloudMate Agent. @@ -9,7 +11,7 @@ Use this guide to collect VMware vCenter metrics in KloudMate with the OpenTelem 1. Run vCenter 7.0 or 8.x. 2. Create a read-only vSphere user with access to the vCenter server, clusters, and resources you want to monitor. 3. Identify the vCenter or ESXi endpoint with SDK access enabled. -4. Install the [KloudMate Agent](../../kloudmate-agent/) on a host that can reach vCenter. +4. Install the [KloudMate Agent](../../../kloudmate-agent/) on a host that can reach vCenter. ## Step 1: Configure the Receiver @@ -57,7 +59,7 @@ For Windows, restart the `KloudMate Agent` service from `services.msc`. After the Agent restarts: -- open [Explore](../../visualize-data/explore/) +- open [Explore](../../../visualize-data/explore/) - query vCenter metrics such as `vcenter_host_cpu_utilization` or `vcenter_vm_memory_usage` - build dashboards and alerts once the data is visible diff --git a/src/content/docs/docs/kloudmate-assistant/chat-modes.mdx b/src/content/docs/docs/kloudmate-assistant/chat-modes.mdx new file mode 100644 index 00000000..75fcddd8 --- /dev/null +++ b/src/content/docs/docs/kloudmate-assistant/chat-modes.mdx @@ -0,0 +1,67 @@ +--- +title: "Chat Modes" +description: "Understand the four chat modes available in KloudMate Assistant and when to use each one." +sidebar: + order: 3 +--- +Chat Modes let you choose how KloudMate Assistant should respond before you send a message. Each mode is optimized for a different type of task, whether you want a direct answer, a drafted configuration change, documentation help, or a deeper background investigation. + +## Opening the Mode Picker + +To choose a chat mode, click the sparkle icon in the top-right corner of the Assistant interface. + +![image](./images/chat-modes-14.png) + +Once the Assistant panel opens, use the mode selector in the chat input bar to switch between the available modes. + +## KloudMate Assistant + +KloudMate Assistant is the default real-time assistant mode. Use it when you want fast answers, platform guidance, or operational help across logs, metrics, traces, alarms, and other KloudMate features. + +This mode is best suited for: + +- Understanding product behavior or workflows +- Asking questions about recent errors or issues +- Getting quick explanations without launching a background investigation + +In this example, the Assistant searches the relevant logs and returns a direct explanation of the exporter failure, including the root cause pattern, affected component, signal type, service context, and a short investigation summary. + +![image](./images/chat-modes-13.png) + +## KloudMate Builder + +KloudMate Builder is designed for drafting dashboards and alarms before you apply them. Use this mode when you want help creating or modifying alerting and dashboard configurations from natural-language instructions. + +In this example, KloudMate Builder interprets the request as an alert creation task for frontend CPU usage and prepares a draft configuration based on that intent. + +![image](./images/chat-modes-15.png) + +This helps users move from a natural-language request to a structured alarm draft without manually configuring every field from scratch. The Builder selects an appropriate metric, applies the relevant service filter, and translates the requested threshold into a reviewable alert definition that can be refined and saved. + +## KloudMate Docs + +KloudMate Docs is optimized for documentation search and platform reference questions. Use this mode when you want answers grounded in the KloudMate documentation rather than a general operational conversation. + +This mode is useful for: + +- Getting started and onboarding questions +- Finding instrumentation instructions +- Looking up product concepts, alerting behavior, or setup guides + +The Docs mode searches the indexed documentation and returns an answer based on the documented product behavior. + +![image](./images/chat-modes-5.png) + +## KloudMate Investigator + +KloudMate Investigator is used for deeper, background investigations. Instead of replying with only a quick answer, it collects incident context and helps frame a broader RCA workflow. + +This mode is appropriate when you need: + +- Incident triage over a recent time window +- Correlation across logs, metrics, and traces +- A structured summary of findings for an active issue + +In this example, the Investigator launches a background investigation, tracks its progress, and returns a completed report with overall health status, severity, top suspects, likely causes, affected resources, and recommended fixes. + +![image](./images/chat-modes-11.png) diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-1.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-1.png new file mode 100644 index 00000000..bf8d36e1 Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-1.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-10.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-10.png new file mode 100644 index 00000000..93b626b6 Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-10.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-11.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-11.png new file mode 100644 index 00000000..50a4bc1c Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-11.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-12.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-12.png new file mode 100644 index 00000000..3f6e18f6 Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-12.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-13.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-13.png new file mode 100644 index 00000000..affcbaa4 Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-13.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-14.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-14.png new file mode 100644 index 00000000..dd446b6f Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-14.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-15.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-15.png new file mode 100644 index 00000000..55a85e64 Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-15.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-2.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-2.png new file mode 100644 index 00000000..772e5a63 Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-2.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-3.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-3.png new file mode 100644 index 00000000..ac76df16 Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-3.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-4.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-4.png new file mode 100644 index 00000000..245260b4 Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-4.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-5.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-5.png new file mode 100644 index 00000000..44bfe87e Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-5.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-6.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-6.png new file mode 100644 index 00000000..c1d4e2dc Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-6.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-7.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-7.png new file mode 100644 index 00000000..6c0ef3d8 Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-7.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-8.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-8.png new file mode 100644 index 00000000..4cdbb480 Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-8.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/images/chat-modes-9.png b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-9.png new file mode 100644 index 00000000..7c77f249 Binary files /dev/null and b/src/content/docs/docs/kloudmate-assistant/images/chat-modes-9.png differ diff --git a/src/content/docs/docs/kloudmate-assistant/index.mdx b/src/content/docs/docs/kloudmate-assistant/index.mdx index 7c5f6627..565f656c 100644 --- a/src/content/docs/docs/kloudmate-assistant/index.mdx +++ b/src/content/docs/docs/kloudmate-assistant/index.mdx @@ -9,20 +9,11 @@ KloudMate Assistant is an AI-driven observability assistant designed to simplify The assistant works across your entire observability stack, including metrics, logs, traces, profiles, and connected data sources. It interprets context, correlates signals, and surfaces actionable insights, reducing the need to manually switch between tools or deeply understand each underlying system. - - -### What KloudMate Assistant Can Do - -KloudMate Assistant supports three core modes of operation: - -- **KloudMate Assistant:** Provides real-time guidance and answers across the KloudMate platform. Ask questions, explore your data, and get instant insights through a conversational interface. -- **KloudMate Dashboarding:** Drafts dashboards and alarms on your behalf. For example, you can say “Create a dashboard for Kubernetes” and the Assistant will generate a structured, ready-to-use dashboard. -- **KloudMate Investigator:** Collects an investigation brief and launches a background root cause analysis (RCA) workflow for serious incidents. The Investigator runs asynchronously and surfaces findings when complete. - ### Accessing KloudMate Assistant -To access KloudMate Assistant, click **KloudMate Assistant** in the left sidebar. This expands the section and reveals three sub-pages: +To access KloudMate Assistant, click **KloudMate Assistant** in the left sidebar. This expands the section and reveals the available sub-pages: -- **Investigations** -- **Usage** -- **Settings** +- [Investigations](./investigations/) +- [Chat Modes](./chat-modes/) +- [Settings](./settings/) +- [Usage](./usage/)