Query Azure Application Insights and Azure Data Explorer with natural language using AI
AppInsights Detective is an intelligent CLI tool that transforms natural language questions into KQL queries for Azure Application Insights and Azure Data Explorer, powered by Azure OpenAI.
- 🗣️ Natural Language Queries - Ask questions in plain English
- 🤖 AI-Powered KQL Generation - Advanced query generation with confidence scoring
- 🔐 Secure Authentication - Azure Managed Identity with multi-tenant support
- 📊 Rich Visualization - Console charts, tables, and multiple output formats
- 🕵️ Interactive Mode - Step-by-step query building with guided assistance
- 🌐 Web Interface - Modern web UI for visual query building (🧪 experimental)
- 📋 Template System - Create and reuse query templates
- 🌐 Azure Portal Integration - One-click query execution in the portal
- 🗃️ Multiple Data Sources - Support for Application Insights, Log Analytics, and Azure Data Explorer
- Node.js 18.0.0 or higher
- One or more of:
- Azure Application Insights resource
- Azure Data Explorer (ADX) cluster
- Azure Log Analytics workspace
- Azure OpenAI resource
- Appropriate Azure permissions (see setup guide)
npm install -g appinsights-detective
git clone https://github.com/georgeOsdDev/AppInsightsDetective.git
cd AppInsightsDetective
npm install && npm run build && npm install -g .
# 1. Setup configuration
aidx setup
# 2. Ask your first question
aidx "show me errors from the last hour"
# 3. Try interactive mode
aidx --interactive
Command | Description | Example |
---|---|---|
aidx setup |
Configure Application Insights and OpenAI settings | aidx setup |
aidx status |
Check configuration and connection status | aidx status --verbose |
aidx "question" |
Ask a natural language question | aidx "top 10 slowest requests" |
aidx --interactive |
Start guided interactive session | aidx -i |
aidx webui |
🧪 Start web-based interface (experimental) | aidx webui --port 3000 |
aidx --raw "kql" |
Execute raw KQL query | aidx --raw "requests | take 5" |
aidx template list |
Manage query templates | aidx template use performance-overview |
→ See complete command reference
# Different output formats
aidx "errors" --format json --pretty
aidx "requests" --format csv --output data.csv
aidx "performance" --format table # default with charts
# Interactive mode for complex analysis
aidx --interactive
- Setup Guide - Installation, configuration, and troubleshooting
- Commands Reference - Complete command documentation
- Interactive Mode - Guided query experience
- Query Examples - Real-world use cases and examples
For developers looking to contribute or extend AppInsights Detective:
- Architecture Overview - System design and patterns
- Provider Development - Creating custom providers
Current Version: 1.0.0 Stability: Experimental - Active development, breaking changes possible
We welcome contributions! Please see our development documentation for technical details.
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests and documentation
- Submit a pull request
- License: MIT
- Issues: GitHub Issues
- Discussions: GitHub Discussions
Made with ❤️ for Azure Application Insights users who want to query their data naturally.