Her insan gibi bizlerin de kodlarımızda hata yaptığımız anlar olabiliyor. İşin en kötü tarafı, yapılan hatanın farkına varamamak. Sağolsun ziyaretçiler de haberdar etme konusunda hiç de oralı değil.
Neyseki çoğu sunucuda php kod hatalarını loglayan bir sistem bulunmakta. Bu sistem, hata koduyla ilgili bilgileri error_log adında bir dosyada saklıyor. İyi güzel de, bizim bu error_log dosyasını görebilmemiz için FTP ile siteye bağlanıp, tüm dizinlerde error_log dosyasını aramamız gerekmekte. Bu çok zahmetli bir iş.
Hazırladığım bu araçla bu dertten kurtulacaksınız:
Öncelikle bir önceki yazımda paylaştığım fonksiyonu indirin.
https://soulmy.net/uploads/blog/2019/01/file-and-folder.rar
rar içindeki dosyayı çıkartın.
Şimdi error_log_search.php adında yeni bir dosya oluşturun ve içine,
<?php include('file-and-folder.php'); ?>
yazın.
Şimdi de error_log dosyalarını bulacağımız fonksiyonu yazalım.
<?php include('file-and-folder.php'); $dir = '/home/*******/public_html/'; function error_log_bul($dir) { global $dosyalar,$error_log_dosyalari; all_file_and_folder_search($dir); $error_log_dosyalari = array(); foreach ( $dosyalar as $gecici => $sef ) { if ( preg_match("/error_log/", $sef) ) { $error_log_dosyalari[] = $sef; } } if ( empty($error_log_dosyalari) ) { return false; } else { return $error_log_dosyalari; } } error_log_bul($dir); if ( !empty($error_log_dosyalari) ) { foreach ( $error_log_dosyalari as $dosya ) { echo $dosya."<br/>"; } } else { echo 'error_log dosyası bulunamadı.'; } ?>
Sayfanın başındaki $dir değişkenini kendinize göre düzenleyin.
Bunda sonra adres çubuğuna yazıp http://siteadi.com/error_log_search.php taramaya başlayın. (Eğer çok sayıda dosya varsa, tarama işlemi uzayacaktır.)
Bu sayfayı cron-jobs ile her gün 1 kere çalışacak ve oluşan raporu mail adresine gönderecek şekilde geliştirirseniz, çok daha verimli olacaktır.
Cron-jobs ve mail gönderme apayrı bir konu olduğu için burada o konuya girmek istemedim. Sadece işin mantığını göstermek istedim. Aracı geliştirmek sizin elinizde.
Başka bir yazıda görüşmek üzere kendinize iyi bakın