Biz birkaç farklı "Watchdog" veritabanı tabloları güncellemek için Zend_Log sınıfını kullanarak konum (farklı olay günlüğe: çalışan Toplu komut, yeni veriler, oluşturulan dosyaları, vb işleniyor).
İşte benim geçerli kod (sorunu önce ben sabitleme içine arıyorum.) Olduğunu
$writer = new Zend_Log_Writer_Db($db, 'watchdog', array(
'priority' => 'priority',
'message' => 'message',
'owner' => 'owner',
));
$logger = new Zend_Log($writer);
$logger->setEventItem('owner', 'MODULE_NAME');
Bu mükemmel çalışıyor. Ama olay sırasında time()
için bir çağrıdır, bir veritabanı sütunu denilen datetime eklemek istiyorum. Yani, teorik olarak, bu gibi bir şey olurdu:
$writer = new Zend_Log_Writer_Db($db, 'watchdog', array(
'priority' => 'priority',
'message' => 'message',
'owner' => 'owner',
'datetime' => 'datetime',
));
$logger = new Zend_Log($writer);
$logger->setEventItem('owner', 'MODULE_NAME');
$logger->setEventItem('datetime', time());
Ben çalıştırıyorum sorun belli, zaman çağrısı () Zend_Log::setEventItem
Zend_Log::info()
çağrıldığında denir ve değil ilk anda çalışır olmasıdır. Yani, soru nasıl time()
Zend_Log::info()
çağrıldığında denilen ve benim DB saklanabilir alabilirim, değil mi? Ben bir daha özel bir sınıf ile Zend_Log_Writer_Db
uzatmak gerekir mi?