Magento 1'de günlükleri farklı dosyalara ayırmak yaygındı (ödeme yöntemleri için günlükleri ayırmak, vb.). Bu $file
parametrenin değiştirilmesi kadar kolaydır Mage::log
.
Magento 2, Monolog kullanacak şekilde değişti.
Monolog'un (veya Magento2'nin uygulamasının) tüm çerçeveye yönelik tüm günlükleri işleyicilere önem derecesine göre bölümlere ayırdığı anlaşılıyor. Dosyaya yazacak birkaç işleyici var:
\Magento\Framework\Logger\Handler\Debug
, \Magento\Framework\Logger\Handler\Exception
,\Magento\Framework\Logger\Handler\System
Magento 1'deki gibi var / log'da ilgili dosyalara giriş yapmak .
Belli bir ciddiyet için bir işleyici ekleyebilirim (IE, bildirimler yazmak var/log/notice.log
). \Magento\Framework\Logger\Handler\Base
İşleyiciyi uzatın ve kaydedin di.xml
.
Bu makale kabaca bu süreci anlatıyor: http://semaphoresoftware.kinja.com/how-to-create-a-custom-log-in-magento-2-1704130912
Ancak, bir sınıf için (Magento'nun değil) tüm günlüklerini (sadece bir ciddiyet değil) seçim dosyama nasıl yazabilirim?
Görünüşe göre kendi versiyonunu kendim oluşturmak zorunda kalacağım Magento\Framework\Logger\Monolog
, fakat gerçekte çalışması için her şey nasıl bir araya geliyor?
Eğer Magento 2'de bu büyük bir hayır-hayır ise, alternatif nedir? Müşteri sitelerinde gerektiğinde hata ayıklamak amacıyla bu uzantı için günlükleri ayıracak bir şey istiyorum. Bu bilginin system.log, exception.log, vs.'ye yazılması ve diğer tüm modüllerin günlükleriyle karıştırılması pratik değildir.