Kotchasan Framework Documentation

Kotchasan Framework Documentation

Logger System Overview

TH 05 Feb 2026 07:40

Logger System Overview

Kotchasan Logger ระบบเป็นชุดเครื่องมือสำหรับบันทึก log ในแอปพลิเคชัน รองรับ PSR-3 LoggerInterface

สารบัญ

  1. ภาพรวม
  2. Logger Implementations
  3. การใช้งาน
  4. ตัวอย่าง

ภาพรวม

ระบบ Logger ประกอบด้วย:

Class คำอธิบาย
Logger Base abstract class สำหรับ logger ทั้งหมด
FileLogger เขียน logs ลงไฟล์
ConsoleLogger แสดง logs ใน console/terminal
QueryLogger Logger เฉพาะสำหรับ database queries
SystemLogger เขียน logs ไปยัง system log

Log Levels

รองรับ 8 ระดับตาม PSR-3:

$logger->emergency('ระบบใช้งานไม่ได้');
$logger->alert('ต้องดำเนินการทันที');
$logger->critical('ข้อผิดพลาดร้ายแรง');
$logger->error('ข้อผิดพลาด');
$logger->warning('คำเตือน');
$logger->notice('สิ่งที่ควรรับทราบ');
$logger->info('ข้อมูลทั่วไป');
$logger->debug('ข้อมูล debug');

การใช้งานพื้นฐาน

use Kotchasan\Logger\FileLogger;

// สร้าง FileLogger
$logger = new FileLogger('my_app.log');

// บันทึก log
$logger->info('User logged in', ['user_id' => 123]);
$logger->error('Database error', ['query' => 'SELECT ...']);

ตัวอย่างการเลือก Logger

use Kotchasan\Logger\FileLogger;
use Kotchasan\Logger\ConsoleLogger;

// Production: ใช้ FileLogger
if (PRODUCTION) {
    $logger = new FileLogger('error_log.php');
} else {
    // Development: ใช้ ConsoleLogger
    $logger = new ConsoleLogger();
}

$logger->info('Application started');

Logger Classes

  • [FileLogger] - บันทึก log ลงไฟล์
  • ConsoleLogger - แสดง log ใน console
  • QueryLogger - บันทึก database queries
  • SystemLogger - บันทึกใน system log