73 lines
2.3 KiB
PHP
73 lines
2.3 KiB
PHP
|
|
<?php
|
|||
|
|
/**
|
|||
|
|
* Просмотрщик логов для отладки загрузки файлов
|
|||
|
|
*/
|
|||
|
|
|
|||
|
|
header('Content-Type: text/plain; charset=utf-8');
|
|||
|
|
|
|||
|
|
$logType = $_GET['log'] ?? 'server';
|
|||
|
|
$lines = (int)($_GET['lines'] ?? 100);
|
|||
|
|
|
|||
|
|
$logFiles = [
|
|||
|
|
'server' => '/var/www/fastuser/data/www/crm.clientright.ru/logs/debug_upload_server.log',
|
|||
|
|
'debug' => '/var/www/fastuser/data/www/crm.clientright.ru/logs/debug.log',
|
|||
|
|
's3' => '/var/www/fastuser/data/www/crm.clientright.ru/logs/s3_storage.log',
|
|||
|
|
'vtigercrm' => '/var/www/fastuser/data/www/crm.clientright.ru/logs/vtigercrm.log',
|
|||
|
|
'php' => '/var/log/php_errors.log'
|
|||
|
|
];
|
|||
|
|
|
|||
|
|
if (!isset($logFiles[$logType])) {
|
|||
|
|
echo "Неизвестный тип лога: $logType\n";
|
|||
|
|
echo "Доступные типы: " . implode(', ', array_keys($logFiles)) . "\n";
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
$logFile = $logFiles[$logType];
|
|||
|
|
|
|||
|
|
if (!file_exists($logFile)) {
|
|||
|
|
echo "Лог файл не найден: $logFile\n";
|
|||
|
|
echo "Возможно, еще не было записей в этот лог.\n";
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (!is_readable($logFile)) {
|
|||
|
|
echo "Нет прав на чтение файла: $logFile\n";
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// Читаем последние N строк
|
|||
|
|
$output = [];
|
|||
|
|
$command = "tail -n $lines " . escapeshellarg($logFile);
|
|||
|
|
exec($command, $output, $returnCode);
|
|||
|
|
|
|||
|
|
if ($returnCode !== 0) {
|
|||
|
|
echo "Ошибка чтения файла: $logFile\n";
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if (empty($output)) {
|
|||
|
|
echo "Лог файл пуст или не содержит записей.\n";
|
|||
|
|
echo "Файл: $logFile\n";
|
|||
|
|
echo "Размер: " . filesize($logFile) . " байт\n";
|
|||
|
|
echo "Последнее изменение: " . date('Y-m-d H:i:s', filemtime($logFile)) . "\n";
|
|||
|
|
exit;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// Выводим заголовок
|
|||
|
|
echo "=== ЛОГ: $logType ===\n";
|
|||
|
|
echo "Файл: $logFile\n";
|
|||
|
|
echo "Размер: " . filesize($logFile) . " байт\n";
|
|||
|
|
echo "Последнее изменение: " . date('Y-m-d H:i:s', filemtime($logFile)) . "\n";
|
|||
|
|
echo "Показано последних строк: " . count($output) . "\n";
|
|||
|
|
echo str_repeat('=', 80) . "\n\n";
|
|||
|
|
|
|||
|
|
// Выводим содержимое
|
|||
|
|
foreach ($output as $line) {
|
|||
|
|
echo $line . "\n";
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// Добавляем информацию о времени генерации
|
|||
|
|
echo "\n" . str_repeat('=', 80) . "\n";
|
|||
|
|
echo "Сгенерировано: " . date('Y-m-d H:i:s') . "\n";
|
|||
|
|
?>
|