diff --git a/opsimate-docs/docs/alerts/adding-alerts.md b/opsimate-docs/docs/alerts/adding-alerts.md index a01a500..84fc364 100644 --- a/opsimate-docs/docs/alerts/adding-alerts.md +++ b/opsimate-docs/docs/alerts/adding-alerts.md @@ -8,38 +8,28 @@ Learn how to set up alerts for your services through integration providers like ## How It Works -Alerts in OpsiMate are created through integrations with external alert providers. When you configure an integration like Grafana, alerts from that system are automatically pulled into OpsiMate and associated with your services. +Alerts in OpsiMate are created by **connecting integrations** to your alert sources. -## Setting Up Alerts +There are **two types of integrations**, depending on how alerts flow into OpsiMate: -### 1. Tag Your Services -First, ensure your services have proper tags that match your alert configuration: +- **Pull integrations** (for example Grafana): + - Once configured, OpsiMate automatically **pulls alerts** from the source. + - New alerts appear in OpsiMate without extra setup. + - When the alert status changes in the source (e.g., resolves), the status is **updated in OpsiMate** as well. +- **Push integrations** (for example GCP webhook): + - The external system **pushes alerts** to OpsiMate, usually via a webhook URL. + - Each alert event is sent directly from the source into OpsiMate. -- Navigate to your service in the dashboard -- Add relevant tags that correspond to your alert rules -- Common tags include: `environment`, `team`, `criticality`, `component` - -### 2. Configure Integration -Set up your alert provider integration: - -- Go to **Integrations** โ†’ **External Integrations** -- Configure your alert provider (e.g., Grafana) -- Ensure the integration has access to your alert rules -- Map alert tags to service tags for proper association - -### 3. Alert Association -OpsiMate automatically associates alerts with services based on: - -**Tag matching**: Alerts with tags that match service tags +For an overview of all supported integrations and how they behave, see the +**[Integrations Overview](/docs/integrations/overview)** page. ## Viewing Alerts -Once configured, you can view alerts directly in the **Service Menu** within the dashboard: +Once your integrations are configured, you can view alerts from the **Alerts tab**: -- Navigate to any service in your dashboard -- Click on the service to open the Service Menu -- Alerts will appear in the alerts section -- View alert status, severity, and details +- Open the **Alerts** tab in OpsiMate +- Use the **alerts table** to see all active alerts +- Filter and sort by status, source, or service ## Alert States diff --git a/opsimate-docs/docs/alerts/alert-management.md b/opsimate-docs/docs/alerts/alert-management.md index ddc150e..8df156f 100644 --- a/opsimate-docs/docs/alerts/alert-management.md +++ b/opsimate-docs/docs/alerts/alert-management.md @@ -17,20 +17,38 @@ The Alert Management page provides a centralized view of all alerts across your Access the Alert Management page to: - **View all alerts**: See alerts from all integration sources in one place -- **Filter and search**: Find specific alerts by service, severity, or status +- **Filter and search**: Find specific alerts by service or status ## Alert Dashboard Features -### All Active Alerts -View currently active alerts across all your services: -- Real-time status updates from integration providers -- Severity levels (Critical, Warning, Info) +### Active Alerts +View currently active alerts: +- Real-time status updates - Associated services and tags - Time since alert started -## Integration Sources +### Dismissing and Restoring Alerts -Alerts are aggregated from all configured integrations: -- Grafana alert rules +You can temporarily hide alerts that youโ€™ve reviewed by **dismissing** them: + +- Click the **X icon** on an alert row to move it to a dismissed state. +- Dismissed alerts are removed from the active alerts list. +- If you dismissed an alert by mistake, you can **restore** it back to the active list. + +### Grouping Alerts + +Use **group by** to organize alerts based on what matters to you: + +- Group alerts by any field (for example service, status, source, or severity) +- Group by **nested fields** inside the alert payload for more advanced views +- Quickly spot patterns, noisy sources, or services with repeated issues + +### Alert Details Sidebar + +Click any alert row to open a **details sidebar** on the right: + +- See full alert information, including labels, payload, and timestamps +- Follow a direct **link to the source** alert in the original monitoring tool +- Use a **runbook link** to jump straight to the documentation or procedure for handling that alert Each alert shows its source integration for easy traceability back to the original monitoring system. diff --git a/opsimate-docs/docs/alerts/archived-alerts.md b/opsimate-docs/docs/alerts/archived-alerts.md new file mode 100644 index 0000000..13402e4 --- /dev/null +++ b/opsimate-docs/docs/alerts/archived-alerts.md @@ -0,0 +1,42 @@ +--- +sidebar_position: 3 +--- + +# Archived Alerts + +The **Archived Alerts** view is where you can see alerts that have **ended** or were **deleted/dismissed**. + +Instead of losing context once an alert is no longer active, OpsiMate keeps a history so you can review what happened and learn from past incidents. + +## What You See in Archived Mode + +In the Archived Alerts view, you can: + +- Browse alerts that are no longer active +- See when an alert started and when it ended +- Review severity, source integration, and affected services +- Inspect labels and other metadata for deeper analysis + +This makes it easy to understand **what happened in the past**, not just what is happening right now. + +## Analyzing Past Alerts + +Use archived alerts to: + +- Identify recurring problems and noisy services +- Spot patterns around specific integrations or environments +- Support post-incident reviews and long-term reliability improvements + +You can filter and search archived alerts to quickly find the time ranges, services, or integrations you care about. + +--- + +## ๐Ÿ”ฎ Coming Soon: Alert Reports + +We are working on a feature to generate **alert reports** directly from your archived alerts: + +- Export summary **PDF reports** of alerts for a given time range +- Share alert history with managers or stakeholders +- Use reports to support audits, reviews, and planning + +This will make it even easier to turn your alert history into clear, shareable insights. diff --git a/opsimate-docs/docs/alerts/tv-mode.md b/opsimate-docs/docs/alerts/tv-mode.md new file mode 100644 index 0000000..fc3c520 --- /dev/null +++ b/opsimate-docs/docs/alerts/tv-mode.md @@ -0,0 +1,46 @@ +--- +sidebar_position: 4 +--- + +# TV Mode View + +The **TV Mode** view is the simplest way to see the alert status of your organization at a glance. + +It is designed for **wall-mounted screens**, NOC rooms, and managers who want to understand +"what is the status of our systems right now?" in a single look. + +## Why TV Mode + +- Show the current alert situation on a dedicated screen +- Give managers and teams a clear, shared view of system health +- Reduce the need to click around dashboards during incidents + +## Views in TV Mode + +There are **two main views** available in TV Mode: + +### 1. Simple Grid View + +A clean grid that focuses on the most important information: + +- List of active alerts in a compact table-like layout +- Key fields only (service, status, severity, source, time since started) +- Optimized for readability from a distance on large screens + +Use this view when you want a straightforward overview that anyone can understand quickly. + +### 2. Map View (Beta) + +A **beta** visualization that shows alerts on a map-like layout: + +- Visual clusters of alerts to highlight problem areas +- Ability to **group alerts** by different dimensions (for example service, environment, or region) +- Quickly see where issues are concentrated and how they relate to each other + +Use this view when you want to explore patterns and relationships between alerts, +while still keeping a screen-friendly presentation. + +--- + +TV Mode is ideal for always-on displays and shared spaces, so everyone can see at a glance +**how your organization is doing right now**. diff --git a/opsimate-docs/docs/core-features.md b/opsimate-docs/docs/core-features.md index 2c628a7..6400d46 100644 --- a/opsimate-docs/docs/core-features.md +++ b/opsimate-docs/docs/core-features.md @@ -4,41 +4,57 @@ sidebar_position: 2 # ๐Ÿš€ Core Features -OpsiMate brings everything together in one powerful platform - your complete infrastructure command center. +OpsiMate is your alerts command center โ€“ bringing every signal from every source into one focused workspace. -## ๐ŸŒ All in the Same Place +## ๐Ÿ”” All Your Alerts in One Place -**Every Infrastructure, Everywhere** -- From bare metal servers to Kubernetes clusters -- AWS Lambda functions and cloud services -- Docker containers and virtual machines -- All your monitoring tools and 3rd party integrations -- One unified view of your entire technology stack +**Centralize alerts from every source** +- Connect alerts from monitoring tools, cloud providers, and services +- Unify noisy, scattered alerts into a single, consistent view +- Filter by service, team, or severity to see what actually matters -## ๐Ÿ’ One Ring to Rule Them All +## ๐Ÿ•’ Learn from Historical Alerts -**Control Everything from One Place** -- Want to run a script on a server? โœ… -- Need to restart a Docker container? โœ… -- Trigger a Jenkins pipeline? โœ… -- Scale your Kubernetes deployment? โœ… -- Execute any action across your entire infrastructure and toolchain +**Study the past to build a better future** +- Browse historical alerts, including resolved and deleted ones +- Analyze trends and recurring patterns over time +- Generate reports to understand reliability, MTTR, and noisy sources + +## ๐Ÿ“บ TV Mode Dashboards + +**Your alerts on the big screen** +- Display alerts on wall-mounted TVs in NOC or office spaces +- Create dedicated views for managers, NOC teams, and on-call engineers +- Build multiple dashboards for different stakeholders and contexts ## ๐Ÿ‘ฅ Simple for Everyone -**User Interface Made for All** -- **Project Owners & Customers**: Clear status dashboards to understand system health -- **DevOps Engineers**: Powerful controls to manage and fix issues quickly -- **Software Engineers**: Easy access to logs, metrics, and troubleshooting tools -- **Non-Technical Users**: Simple, intuitive interface that anyone can understand +**A view that works for technical and non-technical users** +- Clear, human-friendly summaries for managers and stakeholders +- Detailed, actionable context for engineers and on-call teams +- One shared view so everyone talks about the same reality + +--- + +## ๐Ÿ”ฎ Coming Soon + +### ๐Ÿง‘โ€๐Ÿ’ผ Alert Ownership +- Assign alerts to on-call engineers or teams +- Add notes and context directly on the alert +- Keep a full alert activity log for better collaboration + +### โšก Actionable Alerts +- Attach runbooks, links, and actions to alerts +- Trigger predefined workflows to resolve incidents faster -## ๐Ÿ“Š Unified Monitoring View +### ๐Ÿท๏ธ Custom Fields & Labels +- Add custom fields to alerts to fit your processes +- Label and group alerts the way your teams work -**Connect All Your Tools** -- Integrate monitoring tools, alerts, metrics, and logs -- See exactly what impacts your environment -- Correlate data from multiple sources -- Get the complete picture in one consolidated view +### ๐Ÿค– AI-Powered Alert Intelligence +- Detect anomalies and unusual patterns automatically +- Reduce noise by grouping related alerts +- Get AI-assisted suggestions to investigate and resolve issues --- diff --git a/opsimate-docs/docs/integrations/gcp.md b/opsimate-docs/docs/integrations/gcp.md new file mode 100644 index 0000000..cc70bae --- /dev/null +++ b/opsimate-docs/docs/integrations/gcp.md @@ -0,0 +1,50 @@ +--- +sidebar_position: 4 +tags: [Alerts] +--- + +# GCP Integration + +The **GCP integration** lets you send alerts from Google Cloud Platform into OpsiMate using **webhook-based push notifications**. + +Instead of OpsiMate pulling alerts from GCP, your GCP alerting policies **push alerts** directly to OpsiMate. + +## Webhook URL + +Configure your GCP notification channel to send alerts to your OpsiMate server: + +```text +http://localhost:3001/api/v1/alerts/custom/gcp?api_token={your_api_token} +``` + +Replace `{your_api_token}` with the API token configured in your OpsiMate server. + +## API Token Configuration + +The API token used in the webhook URL is managed by OpsiMate through an environment variable: + +- **Env var**: `API_TOKEN` +- **Default value**: `opsimate` + +Make sure your OpsiMate server is started with `API_TOKEN` set (or rely on the default), and use the same value in the GCP webhook URL. + +## Setting Up the Webhook in GCP + +To send alerts from GCP to OpsiMate via webhook: + +1. In the **Google Cloud Console**, go to **Monitoring โ†’ Alerting**. +2. Open **Notification channels**. +3. Create or edit a **Webhook** notification channel. +4. Set the **Webhook URL** to your OpsiMate endpoint, for example: + - `http://your-opsimate-host/api/v1/alerts/custom/gcp?api_token={your_api_token}` +5. Save the notification channel. +6. Attach this webhook notification channel to the alerting policies you want to forward to OpsiMate. + +## Important Disclaimer + +GCP sends alerts via webhook only to **publicly reachable HTTP endpoints**. + +- If you are running OpsiMate locally (for example at `http://localhost:3001`), GCP **cannot** call this URL directly from the internet. +- For production use, deploy OpsiMate behind a **publicly accessible URL** (or expose it securely via tunneling / reverse proxy) so that GCP can reach the webhook endpoint. + +Once configured, alerts pushed from GCP will appear in the **alerts table** in OpsiMate with the **GCP integration icon**, so you can easily identify their source. diff --git a/opsimate-docs/docs/integrations/grafana.md b/opsimate-docs/docs/integrations/grafana.md index 94e13d0..94a5ba9 100644 --- a/opsimate-docs/docs/integrations/grafana.md +++ b/opsimate-docs/docs/integrations/grafana.md @@ -7,28 +7,26 @@ tags: [Links, Monitoring Data, Alerts] **Grafana** is an open-source analytics and interactive visualization platform. It provides charts, graphs, and alerts for monitoring data from various sources. -**Integration Capabilities:** -- ๐Ÿ”— **Links**: Direct access to Grafana dashboards from services -- ๐Ÿšจ **Alerts**: Receive Grafana alerts in OpsiMate - ## Configuration Parameters Required credentials to connect to Grafana: - **Grafana URL**: Your Grafana instance URL (e.g., `https://grafana.company.com`) -- **API Key**: Generated from Grafana with Admin or Editor role +- **API Key**: Generated from Grafana with viewer role -## Functionality +### How to Generate an API Token (Service Account) -### Dashboard Links -- Access Grafana dashboards directly from OpsiMate services -- Automatic linking based on service names and tags -- Open dashboards in new tabs or embedded views +1. In Grafana, log in with an account that can manage **service accounts**. +2. In the left menu, go to **Administration โ†’ Users and access โ†’ Service accounts**. +3. Click **New service account**, give it a name (for example `opsimate-alerts`), and create it. +4. Open the new service account and click **Generate token**. +5. Choose a **Viewer**-level scope (or the minimal permissions you need) and an expiration time. +6. Copy the generated token **once** and paste it into the **API Key** field in OpsiMateโ€™s configuration. +7. Save your settings in OpsiMate. -### Alert Integration -- Receive Grafana alerts in OpsiMate notification system -- Correlate alerts with service status and events -- Unified alert management across monitoring tools +## Alerts +- OpsiMate **pulls alerts from Grafana**, so alert rules defined in Grafana automatically surface inside OpsiMate. +- Receive Grafana alerts in OpsiMate ## Official Resources diff --git a/opsimate-docs/docs/integrations/kibana.md b/opsimate-docs/docs/integrations/kibana.md deleted file mode 100644 index 126fbb8..0000000 --- a/opsimate-docs/docs/integrations/kibana.md +++ /dev/null @@ -1,29 +0,0 @@ ---- -sidebar_position: 4 -tags: [Links, Monitoring Data] ---- - -# Kibana Integration - -**Kibana** is a data visualization dashboard for Elasticsearch. It provides search and data visualization capabilities for data indexed in Elasticsearch clusters. - -**Integration Capabilities:** -- ๐Ÿ”— **Links**: Direct access to Kibana dashboards from services - -## Configuration Parameters - -Required credentials to connect to Kibana: - -- **Kibana URL**: Your Kibana instance URL (e.g., `https://kibana.company.com:5601`) -- **API Key**: Authentication using Elasticsearch API key - -## Functionality - -### Dashboard Links -- Access Kibana dashboards directly from OpsiMate services -- Open dashboards in new tabs or embedded views - -## Official Resources - -- **Kibana Website**: [https://www.elastic.co/kibana](https://www.elastic.co/kibana) -- **Documentation**: [https://www.elastic.co/guide/en/kibana](https://www.elastic.co/guide/en/kibana) diff --git a/opsimate-docs/docs/integrations/overview.md b/opsimate-docs/docs/integrations/overview.md index 8b06286..4ebff6d 100644 --- a/opsimate-docs/docs/integrations/overview.md +++ b/opsimate-docs/docs/integrations/overview.md @@ -4,28 +4,13 @@ sidebar_position: 1 # Integrations Overview -Integrations are the way to connect external tools to OpsiMate. The goal is to leverage existing tools to enable monitoring, control, and interaction with other interfaces. - -## Integration Layers - -
-
- ๐Ÿšจ Receiving Alerts -

Get alerts from external monitoring systems

-
-
- ๐Ÿ”— External Links -

Link external URLs and dashboards to services

-
-
- ๐Ÿ“Š Monitoring Data -

Add logs, metrics, and performance data

-
-
- โšก Actions -

Use tools to control services and run actions

-
-
+Integrations are how you **add alerts into OpsiMate**. + +Some integrations **pull alerts** from external systems (like monitoring or cloud platforms), while others **receive pushed alerts** directly from those tools. + +Alerts that arrive via integrations are shown in the **alerts table**, together with the **icon of the integration** they came from, so you always know which source generated each alert. + + ## Available Integrations @@ -33,9 +18,9 @@ Integrations are the way to connect external tools to OpsiMate. The goal is to l Visualization and dashboarding platform for metrics and monitoring data. -### Kibana +### GCP -Data visualization dashboard for Elasticsearch, used for log analysis and search. +Push-based alerts from Google Cloud Platform into OpsiMate via webhooks. ### DataDog @@ -56,4 +41,4 @@ Cloud monitoring and analytics platform for infrastructure, applications, and lo Select an integration to learn how to set it up: - [Setting up Grafana Integration](/docs/integrations/grafana) -- [Setting up Kibana Integration](/docs/integrations/kibana) +- [Setting up GCP Integration](/docs/integrations/gcp) diff --git a/opsimate-docs/docs/intro.md b/opsimate-docs/docs/intro.md index 46922e2..0018add 100644 --- a/opsimate-docs/docs/intro.md +++ b/opsimate-docs/docs/intro.md @@ -4,45 +4,32 @@ slug: / sidebar_position: 1 --- -# Welcome to OpsiMate +# Wellcome To OpsiMate -
-
- -

- One platform to monitor, manage, and optimize your entire infrastructure -

-
-
+OpsiMate is an **open source alert management platform** that consolidates alerts from every monitoring tool, cloud provider, and service into **one unified dashboard**. -## ๐Ÿš€ The OpsiMate Vision +Stop switching between toolsโ€”see everything, respond faster, and eliminate alert fatigue. -In today's complex infrastructure landscape, teams struggle with fragmented monitoring tools, scattered dashboards, and reactive incident management. **OpsiMate was born from a simple yet powerful idea**: *What if you could manage your entire infrastructure from a single, intuitive platform?* +## ๐Ÿšจ Why OpsiMate -:::tip ๐Ÿ’ก Our Mission -To transform how teams monitor and manage their infrastructure by providing a unified, intelligent platform that turns complexity into clarity. -::: - -## ๐ŸŽฏ Why OpsiMate Exists - -**The Problem We Solve:** -๐Ÿค” **Tired of juggling countless tools and dashboards?** Do you find yourself drowning in data but still struggling to get a clear picture of what's really going on? - -๐Ÿ”ฅ **Constantly playing catch-up with problems?** Are you only finding out about issues *after* they've already affected your users and caused frustration? +Modern teams rely on dozens of monitoring tools, each with its own dashboard, rules, and noisy alerts. That leads to: -โณ **Wasting precious hours on repetitive manual tasks?** Do you wish you could automate the tedious stuff and focus on what truly matters, only to find yourself bogged down by error-prone routines? +- **Scattered visibility** across Grafana, Datadog, Kibana, cloud consoles, and more +- **Slow incident response** because context is spread across multiple systems +- **Alert fatigue** from duplicate, low-signal, or poorly routed alerts -๐Ÿงฉ **Struggling to connect the dots with scattered data?** Are your important metrics, logs, and alerts lost in different silos, making it nearly impossible to see the complete story? +OpsiMate brings everything together so you can: -**Our Solution:** -OpsiMate unifies your entire infrastructure ecosystem into one intelligent platform that not only monitors but actively helps you manage and optimize your services. +- **Centralize alerts** from all your observability and infrastructure tools +- **Route and group alerts intelligently** by service, team, or severity +- **Act quickly** using a single, focused alerts workspace instead of 5โ€“10 dashboards ## ๐ŸŒฑ Getting Started -Ready to transform your infrastructure management? OpsiMate is designed to get you up and running quickly: +Ready to consolidate your alerts into a single pane of glass? -1. **๐Ÿ“ [Installation Guide](./getting-started/deploy)** - Set up OpsiMate in minutes -2. **๐Ÿ“š [Explore Features](./core-features)** - Discover what OpsiMate can do for your team +1. **๐Ÿ“ [Installation Guide](./getting-started/deploy)** โ€“ Deploy OpsiMate in your environment +2. **๐Ÿ“š [Explore Features](./core-features)** โ€“ Learn how alert routing, grouping, and dashboards work :::info ๐Ÿ‘ฅ Join Our Community Have questions? Join our [Slack Community](https://join.slack.com/t/opsimate/shared_invite/zt-39bq3x6et-NrVCZzH7xuBGIXmOjJM7gA) or check out our [GitHub](https://github.com/Fifaboyz/OpsiMate) repository. @@ -50,4 +37,4 @@ Have questions? Join our [Slack Community](https://join.slack.com/t/opsimate/sha --- -*Ready to simplify your infrastructure management? Let's get started! ๐Ÿš€* +*OpsiMate turns noisy alerts into clear, actionable signalsโ€”so your team can focus on what matters.* diff --git a/opsimate-docs/sidebars.js b/opsimate-docs/sidebars.js index 83d13b9..b174965 100644 --- a/opsimate-docs/sidebars.js +++ b/opsimate-docs/sidebars.js @@ -26,35 +26,35 @@ const sidebars = { 'getting-started/system-requirements', ], }, - { - type: 'category', - label: 'Providers & Services', - collapsed: true, - items: [ - 'providers-services/overview', - { - type: 'category', - label: 'Providers', - collapsed: true, - items: [ - 'providers-services/providers/add-provider', - 'providers-services/providers/server-provider', - 'providers-services/providers/kubernetes-provider', - ], - }, - { - type: 'category', - label: 'Services', - collapsed: true, - items: [ - 'providers-services/services/add-services', - 'providers-services/services/container-services', - 'providers-services/services/systemd-services', - 'providers-services/services/kubernetes-pods', - ], - }, - ], - }, + // { + // type: 'category', + // label: 'Providers & Services', + // collapsed: true, + // items: [ + // 'providers-services/overview', + // { + // type: 'category', + // label: 'Providers', + // collapsed: true, + // items: [ + // 'providers-services/providers/add-provider', + // 'providers-services/providers/server-provider', + // 'providers-services/providers/kubernetes-provider', + // ], + // }, + // { + // type: 'category', + // label: 'Services', + // collapsed: true, + // items: [ + // 'providers-services/services/add-services', + // 'providers-services/services/container-services', + // 'providers-services/services/systemd-services', + // 'providers-services/services/kubernetes-pods', + // ], + // }, + // ], + // }, { type: 'category', label: 'Integrations', @@ -62,25 +62,25 @@ const sidebars = { items: [ 'integrations/overview', 'integrations/grafana', - 'integrations/kibana', + 'integrations/gcp', 'integrations/datadog', ], }, + // { + // type: 'category', + // label: 'Dashboard', + // collapsed: true, + // items: [ + // 'dashboards/overview', + // 'dashboards/service-menu', + // 'dashboards/saving-views', + // ], + // }, { type: 'category', - label: 'Dashboard', - collapsed: true, - items: [ - 'dashboards/overview', - 'dashboards/service-menu', - 'dashboards/saving-views', - ], - }, - { - type: 'category', - label: 'Alerts', + label: 'Alerts Dashboard', collapsed: true, - items: ['alerts/adding-alerts', 'alerts/alert-management'], + items: ['alerts/adding-alerts', 'alerts/alert-management', 'alerts/archived-alerts', 'alerts/tv-mode'], }, { type: 'category',