@stacksleuth/db-agent
v0.2.4
Published
Universal database performance monitoring agent - Multi-database support, query optimization, connection pool monitoring, transaction tracking, and comprehensive database performance analytics.
Maintainers
Readme
@stacksleuth/db-agent
StackSleuth Database Agent
🚀 What is StackSleuth Database Agent?
Universal database performance monitoring agent - Multi-database support, query optimization, connection pool monitoring, transaction tracking, and comprehensive database performance analytics.
✨ Key Features
- 🗄️ Multi-Database Support: PostgreSQL, MySQL, MongoDB, Redis, and more
- 📊 Query Performance Analysis: Slow query detection and optimization
- 🔗 Connection Pool Monitoring: Database connection efficiency tracking
- 💾 Transaction Tracking: Complete transaction performance monitoring
- 📈 Real-time Metrics: Live database performance insights
- 🔍 Index Analysis: Index usage and optimization recommendations
- ⚡ ORM Integration: Seamless integration with popular ORMs
- 🎯 Custom Query Tracking: Application-specific database monitoring
📦 Installation
# npm
npm install @stacksleuth/db-agent
# yarn
yarn add @stacksleuth/db-agent
# pnpm
pnpm add @stacksleuth/db-agentyarn add @stacksleuth/db-agentpnpm add @stacksleuth/db-agent🏁 Quick Start
import { DatabaseAgent } from '@stacksleuth/db-agent';
import { Pool } from 'pg';
// Initialize database agent
const agent = new DatabaseAgent({
enabled: true,
databases: ['postgresql', 'redis'],
slowQueryThreshold: 100, // ms
trackConnections: true
});
// PostgreSQL example
const pool = new Pool({
host: 'localhost',
port: 5432,
database: 'myapp',
user: 'postgres',
password: 'password'
});
// Instrument database connection
agent.instrumentConnection(pool, 'postgresql');
// Start monitoring
agent.startMonitoring();
// Your database queries are now monitored
const result = await pool.query('SELECT * FROM users WHERE active = $1', [true]);🛠️ Troubleshooting
Common Issues
Agent Not Starting
// Enable debug mode
const agent = new DbAgent({
enabled: true,
debug: true
});High Memory Usage
// Optimize memory usage
const agent = new DbAgent({
bufferSize: 500,
flushInterval: 5000,
sampleRate: 0.01
});Missing Metrics
- Check that the agent is enabled
- Verify your API key and project ID
- Ensure sampling rate allows data through
- Check network connectivity to StackSleuth API
Debug Mode
DEBUG=stacksleuth:* node your-app.js📚 Resources
🤝 Contributing
We welcome contributions! Please see our Contributing Guide for details.
📄 License
MIT License - see the LICENSE file for details.
Website • Documentation • NPM Registry • GitHub
Made with ⚡ by StackSleuth
