Çoğu üretim siteleri için, en kısa sürede bir hata olmuştur bilmek istiyorum. Benim sorum bu bilgileri almak için nasıl en iyisidir.
Ben farklı sunucularda 20 veya daha fazla üretim sahalarını beri bu imkansız olurdu - Genellikle, ben her gün oturup bir hata kadar hata günlükleri izlemek için gitmiyorum gibi bir e-posta hataları almak için muhtemelen en iyisidir. Bu hatalar tanımsız değişkenler, alınan geçersiz veri veya sorgu hataları da dahil olmak üzere herhangi bir şey olabilir.
Şu anda ben PHPs websites, found here üzerine örnek izlemiştir. Sonuç olarak, daha sonra e-posta ile gönderilen bir XML dosyası ile birlikte bir metin dizesi oluşturur. Ben script sonlanana kadar tüm hataları tutmak için biraz bu değiştirilmiş ve bağlı XML dosyaları ile bir e-posta var. (Çünkü bir döngüde bir hata üzerinde> 500 000 e-posta göndererek bir kaç posta sunucuları çöktü.) Çoğu zaman bu mükemmel çalışıyor. (Ben de hata işleme hepsini yapmak için bir nesne oluşturduk.)
Verilerin büyük miktarda wddx_serialize_value()
PROSESİ için olduğunda ortaya çıkmaktadır. Birden fazla hata varsa Ve sonra, sonra, gerçekten çok fazla bellek kullanarak biter, komut daha çoğu zaman kullanmak için izin verilir.
Bu nedenle, ben değişkeni içinde saklamadan önce gzcompress()
XML dosyasına bir ek ekledik. Bu yardımcı olur, ancak veri miktarı çok büyükse, yine de bellek çalışır. (Son durumda 2GB çevresinde kullanmak istedim.)
Ben bu var ne diğer çözümleri merak ediyorum ya da nasıl çalışması yapmak için bu değiştirdiniz?
Bu yüzden birkaç gereksinimleri:
- (böylece ben mobil zaman denetlemek ve acil bir mesele olmadığını belirleyebilirsiniz) bana sadece hata iletisi daha göndermek ve bana ne olduğunu anlamaya sunucuya giriş yapmak olmamalıdır gerekir
- gönderilen e-postaların sayısına bir sınır olması gerekir. Iyi yine 1'dir.
- normal başına günlük dosyasında gerekiyor
Edit: Ben hata ile ilgili diğer bilgileri, sadece hata dizesi gerekir. Genellikle ben ben daha fazla bilgi almak sürece bilmiyorum kullanıcı girişi, neden çünkü o hatayı yeniden imkansız yakın olduğunu bulmak. Ben bilgilendirici hataları koymak için elimden geleni denedim, ama bir kullanıcı sistemi ya da ne bok veri onlar nedenle içeri koymak için gidiyoruz kullanmak nasıl oluyor asla bilemezsiniz, ben sadece hata metin / dize daha fazla ihtiyacımız var.
Tüm ben veritabanı olmayabilir çünkü biliyoruz Edit 2: veritabanına hataları oturum açılamıyor. Hemen hemen çalıştırmak için garantili bir şey gerekir. Ayrıca, web siteleri 1 sunucusundaki tüm değildir ve sık sık sunucu (aptal hosting şirketleri) üzerinde cron erişimi yok.