hakam/ai-log-inspector-agent

There is no license information available for the latest version (dev-main) of this package.

AI-powered log inspector agent for PHP

dev-main 2025-09-12 19:35 UTC

This package is auto-updated.

Last update: 2025-09-12 19:35:59 UTC


README

Tests PHP Version Symfony AI Status License ๐Ÿ‡ต๐Ÿ‡ธ Free Palestine

๐Ÿค–๐Ÿ’ฌ Chat With Your Logs Using Smart AI ๐Ÿ’ฌ๐Ÿค–

Transform debugging from tedious to effortless! ๐Ÿ” โ†’ โšก
Stop digging through dashboards and complex queries. Just ask your logs directly in plain English.

๐ŸŒ Traditional vs โšก AI-Powered

๐ŸŒ Traditional Way

  • Open Kibana/ElasticSearch dashboards
  • Write complex Datadog queries
  • Manual grep through log files
  • Filter thousands of log entries
  • Correlate timestamps & request IDs by hand
  • Spend hours finding root causes

Result: Hours of manual work ๐Ÿ˜ฉ

โšก AI Agent Way

// Just ask naturally!
$agent->ask("Why did payments fail?");
$agent->ask("What caused the 3 PM outage?");
$agent->ask("Show me timeout patterns");
$agent->ask("How many users affected?");

Result: Instant intelligent answers ๐Ÿง 

๐Ÿ’ฌ Real Examples - Ask Anything!

$agent = new LogInspectorAgent($platform, $model, $store);

// ๐Ÿšจ Checkout Issues
$result = $agent->ask('Why did the last checkout request fail?');
// โ†’ "Payment gateway timeout after 30 seconds. The last 3 checkout attempts 
//    all failed with 'gateway_timeout' errors between 14:23-14:25."

// ๐Ÿ” Database Problems  
$result = $agent->ask('Show me all database errors from the last hour');
// โ†’ "Found 12 database connection failures. Pattern shows connection pool 
//    exhaustion starting at 15:30, affecting user authentication service."

// ๐ŸŒŠ Performance Issues
$result = $agent->ask('What caused the sudden spike in API response times?');
// โ†’ "Memory leak in Redis connection causing 2.5s delays. Started after 
//    deployment at 13:45, affecting 847 requests per minute."

// ๐Ÿ” Security Monitoring
$result = $agent->ask('Are there any suspicious login attempts?');
// โ†’ "Detected brute force attack from IP 192.168.1.100. 156 failed login 
//    attempts in 5 minutes targeting admin accounts."

// ๐Ÿ“Š Impact Assessment
$result = $agent->ask('How many users were affected by the outage?');
// โ†’ "Based on error logs, approximately 2,341 unique users experienced 
//    service disruption between 14:15-14:32 during the database incident."

โš ๏ธ EXPERIMENTAL - Built on Symfony AI (experimental). Not for production use yet.

โœจ What Makes It Special

๐Ÿ” Semantic Search - Understands context, not just keywords
๐Ÿง  AI Analysis - Explains what happened and why
โšก Lightning Fast - Get answers in seconds, not hours
๐Ÿ› ๏ธ Tool-Based - Extensible architecture with Symfony AI
๐Ÿ“Š Vector Powered - Smart similarity matching
๐Ÿ”„ Fallback Ready - Works even when AI is unavailable

๐Ÿš€ Quick Start

Install

composer require hakam/ai-log-inspector-agent

Setup & Use

<?php
use Hakam\AiLogInspector\Agent\Agent\LogInspectorAgent;use Symfony\AI\Platform\Capability;use Symfony\AI\Platform\Model;use Symfony\AI\Store\Bridge\Local\InMemoryStore;

// Configure your AI platform
$platform = new YourAIPlatform(); 
$model = new Model('your-model', [
    Capability::TOOL_CALLING,
    Capability::INPUT_TEXT,
    Capability::OUTPUT_TEXT
]);
$store = new InMemoryStore();

// Create the agent
$agent = new LogInspectorAgent($platform, $model, $store);

// Start asking questions!
$result = $agent->ask('Why did the checkout fail?');
echo $result->getContent();

Advanced Questions

// Root cause analysis
$agent->ask('What caused the 500 errors in payment service?');

// Timeline investigation  
$agent->ask('What happened before the database failure?');

// Pattern discovery
$agent->ask('Are there recurring memory leak patterns?');

// Security investigation
$agent->ask('Suspicious auth patterns from IP 192.168.1.100?');

Response Structure

[
    'success' => true,                    // Found relevant logs?
    'reason' => 'Payment gateway timeout caused...',  // AI explanation
    'evidence_logs' => [                  // Supporting evidence
        [
            'id' => 'log_001',
            'content' => '[2024-01-15] ERROR: ...',
            'timestamp' => '2024-01-15T14:23:45Z',
            'level' => 'error',
            'source' => 'payment-service', 
            'tags' => ['payment', 'timeout']
        ]
    ]
]

โš™๏ธ Configuration

AI Platform Options

// OpenAI
use Symfony\AI\Platform\OpenAI\OpenAIPlatform;
$platform = new OpenAIPlatform($apiKey);

// Anthropic
use Symfony\AI\Platform\Anthropic\AnthropicPlatform;
$platform = new AnthropicPlatform($apiKey);

// Custom Platform
class CustomPlatform implements PlatformInterface {
    // Your implementation
}

Vector Store Options

// Memory (testing)
$store = new InMemoryStore();

// Production stores
use Symfony\AI\Store\Bridge\Chroma\ChromaStore;
use Symfony\AI\Store\Bridge\Pinecone\PineconeStore;

$store = new ChromaStore($config);
$store = new PineconeStore($config);

Custom System Prompts

$customPrompt = 'You are a security log analyzer. Focus on threats and incidents.';

$agent = new LogInspectorAgent($platform, $model, $store, $customPrompt);

๐Ÿงช Testing & Validation - REAL WORKING PACKAGE

๐ŸŽฏ PROOF IT WORKS: Comprehensive end-to-end tests with real Ollama integration.

โœ… Full Functional Test Suite

13/13 tests PASSING with real Ollama (llama3.2:1b):

  • ๐Ÿ’ณ Payment system analysis - Real e-commerce error investigation
  • ๐Ÿ›ก๏ธ Security incident detection - Brute force & auth failure analysis
  • ๐Ÿ’พ Database performance issues - Connection timeouts & query problems
  • ๐Ÿ› Application error analysis - Exception handling & memory issues
  • โšก Performance monitoring - API response time analysis
  • ๐Ÿ“Š 50+ realistic PHP logs from actual applications

๐Ÿƒโ€โ™‚๏ธ Run Tests Yourself

# Setup Ollama
curl -fsSL https://ollama.ai/install.sh | sh
ollama pull llama3.2:1b

# Run full test suite
OLLAMA_MODEL=llama3.2:1b vendor/bin/phpunit test/Functional/

Results: 104 successful assertions, 2-10s response times, multi-platform support proven.

๐Ÿš€ Extend Testing

Want to test with YOUR logs? Add more realistic log examples:

  1. Expand test/fixtures/logs/ with logs from:

    • โœ… Laravel applications - Real Laravel/Eloquent errors (included)
    • โœ… Kubernetes pods - OOMKilled, CrashLoopBackOff, resource issues (included)
    • โœ… Microservices - Circuit breakers, service mesh, distributed tracing (included)
    • Symfony applications
    • API gateways
    • Docker containers
  2. Test real scenarios:

    • "What caused the 3 AM outage?"
    • "Show me memory leaks in user service"
    • "Find all failed credit card transactions"
    • "Analyze API rate limiting errors"
  3. Validate with your AI platform:

    • OpenAI (full semantic search)
    • Anthropic (full semantic search)
    • Ollama (intelligent keyword fallback)

This package works with REAL data and REAL AI models - test it yourself!

๐Ÿค Contributing

  1. Fork the repository
  2. Create feature branch: git checkout -b feature/amazing-feature
  3. Commit changes: git commit -m 'Add amazing feature'
  4. Push to branch: git push origin feature/amazing-feature
  5. Open Pull Request

Made with โค๏ธ for developers who hate digging through logs!

Transform your debugging experience today ๐Ÿš€