نمي أعمالك عبر الإنترنت

خدمات ومنتجات واستضافة وخودام لينكي سوفت

تسجيل الأخطاء هو جانب أساسي من تطوير وصيانة أي تطبيق ويب. في هذا الدليل، سنغطي كيفية إنشاء وإدارة سجلات الأخطاء في تطبيق PHP CodeIgniter. سيتضمن ذلك تكوين نظام تسجيل الأخطاء المدمج في CodeIgniter، وإعداد معالجة الأخطاء المخصصة، واستخدام مكتبات تسجيل الأخطاء الخارجية.

كيفية إنشاء سجل الأخطاء في PHP CodeIgniter دليل شامل

1. مقدمة في تسجيل الأخطاء في CodeIgniter

يساعد تسجيل الأخطاء المطورين على تتبع وتشخيص المشكلات داخل تطبيقاتهم عن طريق تسجيل الأخطاء والتحذيرات والأحداث المهمة الأخرى. يأتي CodeIgniter مع فئة تسجيل أخطاء مدمجة سهلة التكوين والاستخدام.

2. تكوين نظام تسجيل الأخطاء المدمج في CodeIgniter

يوفر نظام تسجيل الأخطاء المدمج في CodeIgniter طريقة بسيطة وفعالة لتسجيل الرسائل. إليك كيفية إعدادها:

الخطوة 1: تعيين عتبة السجل

تحدد عتبة السجل مستويات الرسائل التي سيتم تسجيلها. افتح ملف application/config/config.php وقم بتعيين تكوين log_threshold.

$config['log_threshold'] = 1;

مستويات عتبة السجل هي:

  • 0: تعطيل التسجيل، إيقاف تشغيل تسجيل الأخطاء
  • 1: رسائل الخطأ (بما في ذلك أخطاء PHP)
  • 2: رسائل التصحيح
  • 3: رسائل المعلومات
  • 4: جميع الرسائل

الخطوة 2: تعيين مسار السجل

يتم افتراضيًا تخزين سجلات CodeIgniter في دليل application/logs/. إذا كنت ترغب في تغيير دليل السجل، قم بتعيين تكوين log_path في application/config/config.php.

$config['log_path'] = '/path/to/your/logs/';

تأكد من أن الدليل قابل للكتابة بواسطة خادم الويب.

الخطوة 3: تعيين أذونات ملف السجل

قم بتعيين أذونات ملف السجل باستخدام تكوين log_file_permissions في application/config/config.php.

$config['log_file_permissions'] = 0644;

الخطوة 4: تعيين تنسيق التاريخ للسجلات

يمكنك تخصيص تنسيق التاريخ المستخدم في سجلات الأخطاء باستخدام تكوين log_date_format في application/config/config.php.

$config['log_date_format'] = 'Y-m-d H:i:s';

الخطوة 5: تسجيل الرسائل

استخدم وظيفة log_message لتسجيل الرسائل في تطبيقك.

log_message('error', 'This is an error message.');
log_message('debug', 'This is a debug message.');
log_message('info', 'This is an informational message.');

3. إنشاء سجلات أخطاء مخصصة

بالإضافة إلى نظام تسجيل الأخطاء المدمج في CodeIgniter، يمكنك إنشاء سجلات أخطاء مخصصة لالتقاط أحداث أو أخطاء محددة.

الخطوة 1: وظيفة تسجيل مخصصة

قم بإنشاء وظيفة تسجيل مخصصة في مساعد أو مكتبة.

if (!function_exists('custom_log')) {
    function custom_log($level, $message) {
        $CI =& get_instance();
        $CI->load->library('log');
        $CI->log->write_log($level, $message);
    }
}

الخطوة 2: استخدام وظيفة التسجيل المخصصة

استخدم وظيفة التسجيل المخصصة في وحدات التحكم أو النماذج أو العروض.

custom_log('error', 'This is a custom error message.');

4. استخدام مكتبات تسجيل الأخطاء الخارجية

للحصول على تسجيل أخطاء أكثر تقدمًا، يمكنك استخدام مكتبات خارجية مثل Monolog. إليك كيفية دمج Monolog مع CodeIgniter.

الخطوة 1: تثبيت Monolog عبر Composer

قم بتشغيل الأمر التالي لتثبيت Monolog باستخدام Composer.

composer require monolog/monolog

الخطوة 2: تكوين Monolog في CodeIgniter

قم بإنشاء مكتبة جديدة لتكامل Monolog. على سبيل المثال، application/libraries/Monolog.php.

use Monolog\Logger;
use Monolog\Handler\StreamHandler;

class Monolog {
    private $logger;

    public function __construct() {
        $this->logger = new Logger('name');
        $this->logger->pushHandler(new StreamHandler(APPPATH . 'logs/monolog.log', Logger::DEBUG));
    }

    public function log($level, $message) {
        $this->logger->log($level, $message);
    }
}

الخطوة 3: استخدام Monolog

قم بتحميل واستخدام Monolog في وحدات التحكم الخاصة بك.

$this->load->library('monolog');
$this->monolog->log('error', 'This is a Monolog error message.');

5. مراقبة وإدارة السجلات

لإدارة سجلاتك بشكل فعال، ضع في اعتبارك ما يلي:

استخدام Logrotate

استخدم logrotate لإدارة ملفات السجل ومنعها من النمو بشكل كبير.

قم بإنشاء ملف تكوين لـ logrotate (على سبيل المثال، /etc/logrotate.d/codeigniter).

/path/to/your/logs/*.log {
    daily
    rotate 7
    compress
    missingok
    notifempty
    create 0644 www-data www-data
    sharedscripts
    postrotate
        /usr/bin/systemctl reload apache2 > /dev/null 2>/dev/null || true
    endscript
}

إعداد مراقبة السجلات

استخدم أدوات مثل Logwatch أو خدمة تسجيل (على سبيل المثال، Loggly، Papertrail) لمراقبة وتحليل سجلاتك.

أفضل الممارسات لتسجيل الأخطاء

  • مستويات السجل: استخدم مستويات السجل المناسبة (error، debug، info، إلخ) لتصنيف سجلاتك.
  • تدوير السجلات: قم بتدوير السجلات بانتظام لإدارة أحجام الملفات.
  • المعلومات الحساسة: تجنب تسجيل المعلومات الحساسة مثل كلمات المرور أو البيانات الشخصية.
  • تنسيق متسق: حافظ على تنسيق متسق لرسائل السجل لتسهيل تحليلها.
  • معالجة الأخطاء: قم بتنفيذ معالجة الأخطاء بشكل صحيح وتسجيلها في تطبيقك لالتقاط المشكلات غير المتوقعة.

الخلاصة

يعد إعداد تسجيل الأخطاء في CodeIgniter أمرًا ضروريًا للحفاظ على تطبيقك وتشخيصه. من خلال تكوين نظام تسجيل الأخطاء المدمج في CodeIgniter، وإنشاء سجلات مخصصة، ودمج مكتبات خارجية مثل Monolog، يمكنك التقاط وإدارة السجلات بشكل فعال. سيساعدك اتباع أفضل الممارسات لتسجيل الأخطاء في الحفاظ على تطبيق موثوق وقوي.

هل كانت المقالة مفيدة ؟ 0 أعضاء وجدوا هذه المقالة مفيدة (0 التصويتات)

البحث في قاعدة المعرفة

مشاركة