PHP merkezi hata raporlama

3 Cevap php

PHP merkezi bir şekilde hata raporlamayı işlemek için bir yol var? Ben e-posta ile benim uygulama tarafından geçirilen tüm hataları haberdar olmak istiyorum.

Bütün bir uygulama için bunu başarmak için en iyi yolu nedir?

Teşekkürler

3 Cevap

Sen set_error_handler zamanında istediğiniz şekilde hataları işlemek için kullanabilirsiniz.

Hataları 3 tipi vardır:

  1. Bu tür uyarılar veya PHP ile gündeme ölümcül hataları gibi sistem hataları,. 404 hataları bu kategoride de vardır.

  2. Bozuk veya başarısız sorgu veya veritabanı bağlantısı ile Veritabanı hataları.

  3. Böyle bir şey bir sunucu veya veritabanı ile ilgili değil uygulama iç işleyişi yanlış gittiğinde gibi mantıksal hataları. Örneğin eğer belirli bir dosya belirli bir klasörde olması bekleniyor, ama değildi.

Hataları her üç tip işler bir ErrorHandler sınıf oluşturmak için en iyi yolu. Sistem hataları için, set_error_handler kullanmak istiyorsunuz veya this one olarak çevrimiçi öğreticiler biri kadar okuyun.

Veritabanı, tüm sorguları işleyen bir merkezi veritabanı sınıfını kullanmanızı öneririz. Bu gibi bir şey kullanabilirsiniz:

$result=mysql_query($sql);
if (! $result)
{
   $ErrorHandler->dbError(mysql_error(), $sql);
}

Böyle bir beklenen dosya veya veritabanı kaydını bulmak değil hatası gibi mantıksal hatalar, için, aynı Hataİşleyici sınıf çağırmak ve bir şey gibi yapardı:

if ($logicalError)
{
   $ErrorHandler->appError('Something bad happened',__LINE__, __FILE__);
   $ErrorHandler->showAppErrorPage();
}

İşte __FILE__ ve __LINE__ sabitler tam olarak bu hata oluştu yerini verecek. php.net sitede onlara kadar okuyun.

Sizin ErrorHandler class, bir günlük dosyasına tüm hataları oturum size e-posta veya cep telefonunuza bile SMS / Yazı yapabilirsiniz. Ayrıca, bir hata sayfası kullanıcıyı yönlendirmek için kullanılan olabilir.