36 lines
1.0 KiB
PHP
36 lines
1.0 KiB
PHP
<?php
|
|
|
|
if (!function_exists('write_query_log')) {
|
|
/**
|
|
* SQL 쿼리 로그를 writable/logs/sql-query-{date}.log에 기록
|
|
*
|
|
* @param string $message 로그 메시지
|
|
* @param string $sql SQL 쿼리 (선택)
|
|
*/
|
|
function write_query_log(string $message, string $sql = '')
|
|
{
|
|
$logDir = WRITEPATH . 'logs';
|
|
$logFile = $logDir . '/sql-query-' . date('Y-m-d') . '.log';
|
|
|
|
$timestamp = date('Y-m-d H:i:s');
|
|
$logMessage = "[{$timestamp}] {$message}";
|
|
|
|
if (!empty($sql)) {
|
|
$logMessage .= "\nSQL: {$sql}";
|
|
}
|
|
|
|
$logMessage .= "\n" . str_repeat('-', 80) . "\n";
|
|
|
|
// 로그 디렉토리 확인 및 생성
|
|
if (!is_dir($logDir)) {
|
|
mkdir($logDir, 0755, true);
|
|
}
|
|
|
|
// 파일에 쓰기
|
|
file_put_contents($logFile, $logMessage, FILE_APPEND | LOCK_EX);
|
|
|
|
// log_message도 호출 (작동하면 좋고, 안되도 파일에는 기록됨)
|
|
log_message('error', $message);
|
|
}
|
|
}
|