RSS   Twitter   Copiny   Copiny
Нашел ошибку? 

Выдели фрагмент текста с ошибкой или неточностью и нажми Ctrl+Enter!

Логирование сообщений в файл через JBDump

Логирование сообщений в файл

Бывают случаи когда значение переменной легче посмотреть в файле логов, чем в браузере. Например, узнать, что происходит когда на сайт заходит бот оплаты, который передает фоновое сообщение от сервиса к сайту, что оплата успешно прошла.

Это предусмотренно в JBDump, смотрим пример:

JBDump::log($var['bool'], 'Boolean');
JBDump::log($var['integer'], 'Integer');
JBDump::log($var['float'], 'Float');
JBDump::log($var['string'], 'String');
JBDump::log($var['stdClass'], 'stdClass');

// отдельный логгер, который запишет сообщение в отдельный файл с префиксом "newlogger"
JBDump::i('newlogger')->log('Hello world!'); 

В лог запишется следующая информация

2011-09-04 11:19:35 81.201.254.108 log.php:17 Boolean TRUE
2011-09-04 11:19:35 81.201.254.108 log.php:18 Integer 10
2011-09-04 11:19:35 81.201.254.108 log.php:19 Float 100.5
2011-09-04 11:19:35 81.201.254.108 log.php:20 String 10 123 34
2011-09-04 11:19:35 81.201.254.108 log.php:22 stdClass {"property":"Property value"}
2011-09-04 11:19:35 81.201.254.108 log.php:23 simpleObject {"simpleVar":"simple var","publicVar":"public var"}

Сложные объекты сериализуются, по умолчанию через print_r. В настройках можно задать способ сериализации.

Файлы логов закрыты от посторонних глаз

Стоит заметить, что по умолчанию все файлы логов защищены от чтения по прямой ссылке. Такм образом не смотря на то что файлы лежат в открытом виде, прочитать их не получится.

Пример шапки лога:

#<?php die('Direct Access To Log Files Not Permitted'); ?>
#Date: Thu, 24 Nov 11 03:43:41 +0600
#Software: JBDump v1.2.6
#datetime    client_ip        file        name        text

Смотрите также:
Оставить комментарий




* обязательно для заполнения

1 введенный почтовый адрес используется только для обратной связи при ответах в комментариях и сервиса gravatar.com
.