Opslane is a tool that helps make the on-call experience less stressful.
It reduces alert fatigue by classifying alerts as actionable or noisy and providing contextual information for handling alerts.
- Alert Classification: Opslane can classify alerts as actionable or noisy using LLMs. We analyze alert history and Slack conversations to determine if an alert is actionable.
- Slack Integration: Opslane operates in a Slack channel where a team receives alerts. We provide insights and additional resources for debugging actionable alerts.
- Analytics: Opslane provides weekly reporting data for the quality of alerts in a Slack channel. We analyze the pattern of alerts and provide an option to silence noisy alerts directly from Slack.
- Open Source: Opslane is open source and welcomes contributions from the community.
Opslane uses a modular architecture designed for efficient alert processing and seamless integration with existing tools:
- Alert Ingestion: Datadog sends alerts via webhooks to our FastAPI server.
- FastAPI Server: The core of our system, processing incoming alerts, interacting with Slack, and managing data flow.
- Slack Integration: Provides a user interface for alert management and interaction.
- Database: Utilizes Postgres with pgvector for storing alert data and embeddings.
Here's a high-level overview of the Opslane architecture:
We use a flexible data model so that we can support multiple integrations. Currently, Opslane supports Datadog.
- Docker
- Slack workspace
- Datadog account
- Clone the repository:
git clone https://github.com/yourusername/opslane.git
- Configure environment variables:
bash
cp .env.example .env
# Edit .env with your Slack, Datadog, and OpenAI API keys
- Build and run the Docker container:
docker-compose up --build
- Add the Opslane bot to the Slack channel where you receive alerts
- Configure Datadog to send alerts to Opslane's webhook endpoint
- Opslane will automatically analyze incoming alerts and post insights in your Slack channel
We capture anonymized telemetry to understand usage patterns.
This helps us:
- Improve Opslane based on usage patterns
- Track usage for internal metrics
We collect minimal, non-sensitive data and do not share it with third parties.
If you prefer to opt out of telemetry, set ANONYMIZED_TELEMETRY=False
in the .env file.