Mage :: log () Magento tarafından kullanılan tüm dosyalarda oturum açmıyor mu?


11

Ben üzerine gelmiş Sitemap.phpde app/code/local/Mage/Sitemap/Model/Sitemap.php. Dosya kullanılmış gibi görünüyor, tüm içeriği kaldırırsam, beklendiği gibi bir hata var.

Standardın tüm içeriğini Sitemap.phptek bir değişiklikle kopyaladım . ekledim

public function generateXml() {
    Mage::log('test');
    ...
}

Ben başka bir yerde bunu yaparken, bu yazdırır testiçinde var/log/system.logbeklendiği gibi, sadece bu dosyada, bu mesajı günlüğe kaydetmez.

Herhangi bir yardım büyük beğeni topluyor


DÜZENLE

kullanma

Mage::log('text', null, <file>, true);

da çalışmıyor


Sistem yapılandırmasında günlük kaydı etkin mi? Mı var/log/web kullanıcı (tarafından yazılabilir apache, httpd, www-datavs.)
musicliftsme

giriş yapmak işe yarıyor SitemapController.php, bu yüzden evet, öyle. ve evet var/logyazılabilir. Fikirleriniz için teşekkürler
Yorrd

Belki Mage çekirdeği yüklü değil? Belki Mage :: app () deneyin
Tim Hallman

@TimHallman magento çekirdek olmadan nasıl çalışır? Site gayet iyi çalışıyor
Yorrd

Çünkü sitemap.php. Bunun app/code/local/Mage/Sitemap/Model/Observer.phpyerine giriş Sitemap.php
yapmayı

Yanıtlar:


12

Dosya yüklenir, ancak yöntem çağrılmaz varsayalım. Bu nedenle die(), yönteminize bir kesme noktası (veya kötü yol a ) ayarlayın ve çağrıldığından emin olun.

Magento Mage::logen az $forceparametre ile başlatıldıktan sonra parametre günlüğünü yazar


Evet. Teşekkürler. Sanırım benim createXml neden yüklü değil başka bir soru açacağım. Çünkü hayır, kesme noktasına ulaşmıyor.
Yorrd

29

Kullanın Mage::log('text here', null, 'system.log', true).
Bu her zaman işe yarar.


Veya örneğin, site haritası günlüklerinizin rastgele öğelerle karıştırılmasını istemiyorsanız bir site haritası.log dosyası.
Julien Lachal

@JulienLachal. Doğru. Dosya adı herhangi bir şey olabilir.
Marius

lütfen benim düzenlememe bakın, bu da işe yaramıyor
Yorrd

2

Burada bir başka tahmin - site haritası üretimi genellikle bir cronjob tarafından tetikleniyor. Cronjob'ınız web kullanıcılarınızdan farklı bir kullanıcı altında çalışıyorsa ve varolan system.log dosyanıza yazma izniniz yoksa herhangi bir giriş alamazsınız.


Doğru, ancak site haritası yönetici sayfasındaki "oluştur" u tıklayarak test ediyorum. Bu yüzden izin alması gerektiğini varsayabilirim. EDIT: izin 777
Yorrd

0

var/Klasörünüze doğru izni verin :

chmod -Rv 777 var/

Aşağıdaki kod gibi kullanın:

Mage::log(print_r($yourTest), null, 'customLogFile.log', true);

Print_r senin değişkenin türüne ilişkin bazı hatalar önleyecektir.


0

Bu satırı herhangi bir işleve veya dosyaya koy

Mage :: log ("Mesajınız -", null, 'log-dosyaadı.log');

bu dosya sizin gibi kök klasör yolunuzda oluşturulacaktır.

/var/log/your-log-filename.log

umarım sizin için çalışır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.