mirror of
https://github.com/coleam00/Archon.git
synced 2026-01-04 05:38:53 -05:00
172 lines
4.7 KiB
Plaintext
172 lines
4.7 KiB
Plaintext
---
|
|
title: Server Monitoring
|
|
sidebar_position: 6
|
|
---
|
|
|
|
import Admonition from '@theme/Admonition';
|
|
|
|
# 📊 Server Monitoring & Health
|
|
|
|
<div className="hero hero--primary">
|
|
<div className="container">
|
|
<h2 className="hero__subtitle">
|
|
**Monitor your Archon services**: Health checks, performance metrics, and troubleshooting tools
|
|
</h2>
|
|
</div>
|
|
</div>
|
|
|
|
Archon provides built-in monitoring and health checking across all services to help you maintain optimal performance and quickly troubleshoot issues.
|
|
|
|
## 🏥 Health Checks
|
|
|
|
### API Health Endpoints
|
|
|
|
Each service provides health check endpoints:
|
|
|
|
```bash
|
|
# Server API health
|
|
curl http://localhost:8080/api/projects/health
|
|
curl http://localhost:8080/api/settings/health
|
|
|
|
# MCP Server health
|
|
curl http://localhost:8051/health
|
|
|
|
# Database health
|
|
curl http://localhost:8080/api/database/metrics
|
|
```
|
|
|
|
### Service Status
|
|
|
|
Monitor the status of all Archon services:
|
|
|
|
| Service | Port | Health Endpoint | Purpose |
|
|
|---------|------|----------------|---------|
|
|
| **Server** | 8080 | `/api/projects/health` | Main API status |
|
|
| **MCP** | 8051 | `/health` | MCP server status |
|
|
| **Frontend** | 3737 | Direct access | Web UI availability |
|
|
| **Docs** | 3838 | Direct access | Documentation site |
|
|
|
|
## 📈 Performance Monitoring
|
|
|
|
### Key Metrics
|
|
|
|
Archon tracks important performance metrics:
|
|
|
|
- **RAG Query Performance**: Average search times and accuracy
|
|
- **Database Performance**: Connection pool health and query times
|
|
- **Memory Usage**: Adaptive processing based on available resources
|
|
- **API Response Times**: Endpoint performance across all services
|
|
|
|
### Real-Time Updates
|
|
|
|
Socket.IO connections provide real-time monitoring:
|
|
|
|
- **Progress Tracking**: Live updates during document processing
|
|
- **Connection Health**: Automatic reconnection handling
|
|
- **Service Communication**: Inter-service request monitoring
|
|
|
|
## 🔧 Troubleshooting
|
|
|
|
<Admonition type="tip" title="Quick Debugging">
|
|
Use the health endpoints and browser developer tools to quickly diagnose issues with your Archon installation.
|
|
</Admonition>
|
|
|
|
### Common Issues
|
|
|
|
| Symptom | Likely Cause | Solution |
|
|
|---------|--------------|----------|
|
|
| Slow search responses | High memory usage | System automatically adjusts batch sizes |
|
|
| Connection errors | Service startup order | Restart services with `docker-compose restart` |
|
|
| Missing search results | Database connection | Check Supabase configuration |
|
|
| UI not loading | Frontend build issues | Check frontend service logs |
|
|
|
|
### Docker Logs
|
|
|
|
Monitor service logs:
|
|
|
|
```bash
|
|
# All services
|
|
docker-compose logs -f
|
|
|
|
# Specific service
|
|
docker-compose logs -f archon-server
|
|
docker-compose logs -f archon-mcp
|
|
```
|
|
|
|
### Database Monitoring
|
|
|
|
Check database health and metrics:
|
|
|
|
```bash
|
|
# Database metrics
|
|
curl http://localhost:8080/api/database/metrics
|
|
|
|
# Returns:
|
|
# - Table record counts
|
|
# - Connection status
|
|
# - Performance indicators
|
|
```
|
|
|
|
## 🛠️ Configuration
|
|
|
|
### Environment Monitoring
|
|
|
|
Monitor key environment variables:
|
|
|
|
```bash
|
|
# Database connectivity
|
|
SUPABASE_URL=your_supabase_url
|
|
SUPABASE_SERVICE_KEY=your_service_key
|
|
|
|
# AI services
|
|
OPENAI_API_KEY=your_openai_key
|
|
|
|
# Unified Logging Configuration
|
|
LOGFIRE_ENABLED=false # true=Logfire logging, false=standard logging
|
|
LOGFIRE_TOKEN=your_logfire_token # Only required when LOGFIRE_ENABLED=true
|
|
|
|
# Service communication
|
|
API_BASE_URL=http://archon-server:8080
|
|
```
|
|
|
|
### Unified Logging System
|
|
|
|
Archon includes a unified logging system with optional [Logfire](https://logfire.pydantic.dev/) integration:
|
|
|
|
**Standard Logging (Default)**:
|
|
```bash
|
|
LOGFIRE_ENABLED=false
|
|
```
|
|
- Uses Python's standard logging framework
|
|
- Logs to console with structured format
|
|
- Perfect for development and basic monitoring
|
|
- Zero external dependencies
|
|
|
|
**Enhanced Logging with Logfire**:
|
|
```bash
|
|
LOGFIRE_ENABLED=true
|
|
LOGFIRE_TOKEN=your_logfire_token # Get from logfire.pydantic.dev
|
|
```
|
|
- Real-time traces and performance monitoring
|
|
- Advanced debugging for RAG queries and MCP tool calls
|
|
- Automatic request/response tracking
|
|
- Visual dashboards and analytics
|
|
|
|
**Key Benefits**:
|
|
- 🔄 **Seamless Toggle**: Switch between modes with a single environment variable
|
|
- 🛡️ **Graceful Fallback**: Always works even without Logfire
|
|
- 📊 **Consistent Format**: Same log structure in both modes
|
|
- 🚀 **Zero Setup**: Standard logging works out of the box
|
|
|
|
### Resource Management
|
|
|
|
Archon automatically manages resources:
|
|
|
|
- **Memory Adaptive Processing**: Adjusts concurrency based on available memory
|
|
- **Rate Limiting**: Prevents API quota exhaustion
|
|
- **Connection Pooling**: Optimizes database performance
|
|
- **Batch Processing**: Efficiently handles large document sets
|
|
|
|
---
|
|
|
|
**Need Help?** Check the [Troubleshooting Guide](./troubleshooting) for detailed debugging steps. |