Monolog (Gelişmiş Loglama)

artiframe add monolog komutu, PHP'nin endüstri standardı loglama (kayıt tutma) kütüphanesi olan monolog/monolog paketini kurar. Standart error_log() fonksiyonunun aksine; loglarınızı günlere bölerek kaydedebilir, Telegram/Slack'e bildirim gönderebilir veya veritabanına yazabilirsiniz.

💡 Bilgilendirme: Direkt Kullanım
ArtiFrame, bu paket için src/Service klasörüne özel bir entegrasyon (Wrapper/Stub) sınıfı kopyalamaz. Kurulum yalnızca Composer üzerinden paketi projeye dahil eder. Aşağıdaki kodlar, paketin kendi orijinal işleyişini gösteren basit kullanım örnekleridir. Daha fazlası için Monolog Dokümantasyonunu inceleyebilirsiniz.
Kurulum
terminal
$ artiframe add monolog
Kullanım Örneği (Dosyaya Loglama)
Logger.php
<?php

use Monolog\Logger;
use Monolog\Handler\StreamHandler;
use Monolog\Handler\RotatingFileHandler;

// 1. Log Kanalını Oluştur
$log = new Logger('sistem');

// 2. Handler (İşleyici) Ekle
// Örnek A: Tek bir dosyaya tüm logları yaz (Sadece WARNING ve üstü)
$log->pushHandler(new StreamHandler(__DIR__.'/../../storage/logs/sistem.log', Logger::WARNING));

// Örnek B: Her gün için ayrı bir log dosyası oluşturur ve son 30 günü tutar
$log->pushHandler(new RotatingFileHandler(__DIR__.'/../../storage/logs/gunluk.log', 30, Logger::DEBUG));

// 3. Logları Kaydet
// (INFO seviyesi StreamHandler\'ı tetiklemez çünkü WARNING limiti koyduk. Ama RotatingFileHandler\'a yazılır.)
$log->info('Kullanıcı sisteme giriş yaptı.', ['user_id' => 15]);

$log->warning('Depolama alanı %80 doldu.');

$log->error('Veritabanı bağlantısı koptu!', [
    'ip' => $_SERVER['REMOTE_ADDR']
]);