Воскресенье, 2017-09-24, 5:41 AM

Поиск
Меню
Категории раздела
PHP [40]
Cкриптовый язык программирования общего назначения
MySQL [1]
Cвободная система управления базами данных (СУБД)
jQuery [8]
Библиотека JavaScript, фокусирующаяся на взаимодействии JavaScript и HTML
CSS [60]
Cредство описания, оформления внешнего вида веб-страниц
JavaScript [161]
Прототипно-ориентированный скриптовый язык программирования
Веб-дизайн [2]
Проектирование пользовательских веб-интерфейсов для сайтов или веб-приложений
RegExp [1]
Регулярные выражения
SEO [2]
Продвижение и раскрутка сайтов. Заработок в сети.
C/C++ [3]
Компилируемый статически типизированный язык программирования общего назначения
Windows [4]
Программистам под ОС MS Windows
HGE [2]
Игровой движок HGE (Haaf's Game Engine)
Игровой дизайн [8]
Психология дизайна игр
Разработка игр [2]
Общие моменты, относящиеся к геймдеву
wxWidgets [2]
Библиотека инструментов для разработки кроссплатформенных приложений
PureBasic [10]
Кроссплатформенный компилятор и IDE для быстрой разработки
VST [6]
Steinberg's Virtual Studio Technology (VST)
iOS [1]
Mобильная операционная система, разрабатываемая и выпускаемая американской компанией Apple
Пиксельная графика [9]
Pixel art и все, что с ним связано
libGDX [2]
Кроссплатформенный открытый движок на Java, позволяющий создавать 2D и 3D игры под различные платформы, среди которых: Android, HTML5, Windows, Linux, iOS.
Поддержи проект!
Рекомендуем


Блог разработчика

Главная » 2014 » Май » 1 » Простейший набор функций журналирования
9:14 PM
Простейший набор функций журналирования
$LOG_FILE_NAME = 'my.log';
$LOGFILE = '../' . $LOG_FILE_NAME;
$LOG = 1; // Set to "0" to disable logging
$LOG_DEBUG = 1; // Set to "0" to disable additional debug logging
$LOGFILEHANDLE = 0;
$MAXLOGSIZE = "4000000";

function logline ($msg) {
 log_line_to_file(0, $msg);
}

function logdebug($msg) {
 log_line_to_file(1, $msg);
}

function log_line_to_file ($debug, $msg) {
 global $LOG, $LOG_DEBUG, $MAXLOGSIZE, $LOGFILE, $LOGFILEHANDLE; 
 if ($LOG && ((! $debug) || $LOG_DEBUG)) {
 $LOGFILEHANDLE=fopen ($LOGFILE, "a");
 if ($LOGFILEHANDLE) { 
 fwrite ($LOGFILEHANDLE, date("d.m.Y H:i:s")." - $msg\r\n");
 $lstat=fstat($LOGFILEHANDLE);
 if ($lstat["size"]>$MAXLOGSIZE) rotatelog();
 fclose($LOGFILEHANDLE);
 }
 }
}

function rotatelog() {
 global $LOG, $MAXLOGSIZE, $LOGFILE, $LOGFILEHANDLE;
 if ($LOG) {
 fwrite ($LOGFILEHANDLE, date("d.m.Y H:i:s")." - Logfile reached maximum size ($MAXLOGSIZE)- rotating.\r\n");
 fclose ($LOGFILEHANDLE);
 rename ($LOGFILE, substr_replace($LOGFILE,md5(microtime()),-3).".log");
 $LOGFILEHANDLE=fopen ($LOGFILE, "a");
 if (!$LOGFILEHANDLE)
 $LOG=0;
 else 
 fwrite ($LOGFILEHANDLE, date("d.m.Y H:i:s")." - Opening new Logfile.\r\n");
 }
}

logline("Connected to remote server");
logdebug("Debug test");
Категория: PHP | Просмотров: 410 | Добавил: pop | Теги: Php, log | Рейтинг: 0.0/0

Поблагодарить автора



Комментарии