Di Magento 1, adalah umum untuk mengelompokkan log ke dalam file yang berbeda (untuk memisahkan log untuk metode pembayaran, dll.). Itu semudah mengubah $file
parameter Mage::log
.
Magento 2 telah berubah untuk menggunakan Monolog.
Tampaknya Monolog (atau implementasi Magento2) mengelompokkan semua log untuk seluruh kerangka kerja ke penangan berdasarkan tingkat keparahannya. Ada beberapa penangan yang menulis ke file:
\Magento\Framework\Logger\Handler\Debug
, \Magento\Framework\Logger\Handler\Exception
,\Magento\Framework\Logger\Handler\System
Masuk ke masing-masing file di var / log seperti di Magento 1.
Saya bisa menambahkan handler untuk keparahan tertentu (yaitu, menulis pemberitahuan var/log/notice.log
). Perpanjang \Magento\Framework\Logger\Handler\Base
, dan daftarkan pawang masuk di.xml
.
Artikel ini secara kasar menjelaskan proses itu: http://semaphoresoftware.kinja.com/how-to-create-a-custom-log-in-magento-2-1704130912
Tetapi bagaimana cara saya menulis semua log (bukan hanya satu keparahan) untuk satu kelas (tidak semua Magento) ke file pilihan saya?
Sepertinya saya harus membuat versi saya sendiri Magento\Framework\Logger\Monolog
, tetapi kemudian bagaimana semuanya cocok agar itu benar-benar berfungsi?
Jika ini adalah no-no besar di Magento 2, lalu apa alternatifnya? Saya ingin sesuatu untuk memisahkan log untuk ekstensi ini untuk keperluan debugging ketika diperlukan di situs klien. Memiliki info yang ditulis ke system.log, exception.log, dll. Dan campur aduk dengan log dari setiap modul lainnya tidak praktis.