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

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

JLog — логирование средствами Joomla

простое журналирование

Бывают случаи, когда необходимо где-то на сервере вести логи ошибок, либо других важных событий в файл (например брутфорс аккаунтов). Самостоятельно открывать/закрывать файлы, соблюдать форматирование (чтобы читабельность не сбивалась), добавлять даты и прочее — это страшная рутина.

Взять на себя все эти трудности может стандартный класс Joomla — JLog. Он предоставляет удобное API, для работы с лог-файлами. Рассмотрим его работу на примере.


// Подключаем библиотеку JLog
jimport('joomla.error.log');

// Инициализация JLog-объекта, файл логов будет называться "my.log.php"
$log = &JLog::getInstance('my.log.php');

// Добавляем какие-то данные строку в лог
$log->addEntry(array('LEVEL' => '1','STATUS' => 'SOME ERROR:','COMMENT' => 'Your message here'));

// Добавляем еще какие-то данные строку в лог
$log->addEntry(array('LEVEL' => '1','STATUS' => 'Username:','COMMENT' => $username));

В итоге будет записаны в файл по адресу

<siteroot>/logs/my.log.php

Сообщения примерно следующего вида

#<?php die('Direct Access To Log Files Not Permitted'); ?>
#Version: 1.0
#Date: 2011-03-20 19:34:20
#Fields: date   time    level   c-ip    status  comment
#Software: Joomla! 1.5.22 Stable [ senu takaa ama woi ] 04-November-2010 18:00 GMT
2011-03-20  19:34:20    1   <nobr>127.0.0.1</nobr>  SOME ERROR: Your message here
2011-03-20  19:34:20    1   <nobr>127.0.0.1</nobr>  Username:   smet.denis

Стоит отметить некоторые моменты

  • Текущая дата и IP-адрес были  автоматически вписаны в файл
  • В шапке стоит защита от прямого чтения лога, поэтому безопаснее будет файл логов называть *.php, либо защищаться с помощью .htaccess
  • В шапке сохранена расшифровка лога по полям "#Fields"

Дополнительные параметры для JLog

При инициализации можно явно указывать следующие парметры

getInstance($file, $options, $path)
  • $file - имя лог файла, по умолчанию "error.php"
  • $options - настройки форматирования логов, по умолчанию будет использваться
    "{DATE}\t{TIME}\t{LEVEL}\t{C-IP}\t{STATUS}\t{COMMENT}", где например STATUS  - регистронезависимый ключ из массива для addEntry()
  • $path - полный путь до директории с логами сайта, по умолчанию будет использоваться из глобальных настроек Joomla (<siteroot>/logs)

Пример использования

Если лог предвидится большой, то лучше использовать имя лога, зависимое от текущей даты. Например

// Каждый день новый лог файл
define('ERROR_LOG', 'notes.log.'.date('Y_m_d')'.php');

Примечание: Стандартный плагин system/log.php работает по тому же принципу. Если его включить, то будут отслеживаться все неудачные попытки зайти в панель управления.

Смотрите также:
Комментарии (31) Добавить комментарий
  • LoraKaufman30
    LoraKaufman30
    31 Декабря 2011, 06:00
     ↑  -3  ↓     ответ

    According to my own monitoring, thousands of persons in the world get the <a href="/ goodfinance-blog.com/topics/mortgage-loans ">mortgage loans</a> at various creditors. Therefore, there's a good possibility to receive a student loan in any country.

  • Олег
    Олег
    12 Апреля 2012, 03:51
     ↑  +3  ↓     ответ

    Доброго времени суток всем.

    Столкнулся с проблемой ведения логов в Joomla! 2.5.x, потратил много времени на поиск простого решения.

    Для того что бы Вы не теряли его:

    // Подключаем файл класса, обратите внимание, что он изменился в сравнении с Joomla! 1.5 API.

    jimport('joomla.log.log');

    // Добавляем логгер:

    JLog::addLogger(

    // Массив параметров:

    array(

    // Файл для логов:

    'text_file' => 'test.log.php',

    // (необязательный параметр) Директория для логов:

    'text_file_path' => 'somewhere/logs'

    )

    );

    // Запись лог сообщения:

    JLog::add('Это сообщения для записи в лог файл');

    Проверено, работает.

    ЗЫ: это решение подходит для всей платформы Platform 11.4, т.е. и для Joomla! 1.7.

  • Боб
    Боб
    08 Октября 2012, 23:29
     ↑  0  ↓     ответ

    Что-то в плагинах у Jomla 2.5 не получается таким способом получить желаемый формат лога, в частности - с IP клиента.

    Более-менее нормально получается так:

    <code>

    function getToto() {

    ...

    $log = JLog::getInstance('mylog.php');

    $log->addEntry(array('PRIORITY' => 'DEBUG', 'CATEGORY' => 'userRegistration', 'MESSAGE' => 'New User Code: '.$token));

    ...

    </code>

    однако не срабатывает LEVEL лога - всегда пишет "INFO", хотя, вот в куске кода - написано DEBUG - но будет все равно инфо 8-(

  • Алекс
    Алекс
    30 Октября 2012, 18:06
     ↑  +1  ↓     ответ

    нихера не понял че куда подключаем

  • MisterKoK
    MisterKoK
    30 Октября 2012, 18:21
     ↑  0  ↓     ответ

    // Подключаем библиотеку JLog

    Где ето прописывается? в шаблоне в файле индекс.пхп????

  • Alex
    Alex
    13 Декабря 2012, 22:12
     ↑  0  ↓     ответ

    В Joomla 2.5 описанные методы отмечены как deprecated.

  • shopkins toy genie season 3
    shopkins toy genie season 3
    14 Февраля 2017, 10:32
     ↑  0  ↓     ответ

    SI

  • children toys
    children toys
    14 Февраля 2017, 17:18
     ↑  0  ↓     ответ

    Take Along Thomas the Tank Engine trains are also easy to come by, and

    a lot significantly less costly than their wooden counterparts.

  • avis produits de beaut?
    avis produits de beaut?
    22 Июня 2017, 04:20
     ↑  0  ↓     ответ

    ѕous vetement secy

  • xxx
    xxx
    23 Июля 2017, 03:39
     ↑  0  ↓     ответ

    Greetings, I belіeve your blog could possіbly be having internet brоwser compatibility issues.

    Whenever I look ?t your wеb site in Safari, it looks fine however, if opening in IE,

    it's got some ?vеrlapping iѕsues. I simply wanted to рrovide you with

    a quick heads up! Besi?es that, ?reat blog!

  • cheap insurance for cars
    cheap insurance for cars
    08 Августа 2017, 07:38
     ↑  0  ↓     ответ

    cheap insurance for cars

    [url=" https://7auto24insurance.org/ "]cheapest auto

    insurance[/url]

    cheapest car insurance

    best auto insurance

  • car insurance quotes
    car insurance quotes
    28 Августа 2017, 09:06
     ↑  0  ↓     ответ

    carxxinsurancexx.org/ - cheap car

    insurance quotes

    cheapest car insurance

    auto insurance quotes

  • official statement
    official statement
    04 Апреля 2018, 06:17
     ↑  0  ↓     ответ

    official statement

    Hi my loved one! I want to say that this post is amazing, nice written and come with

    almost all vital infos. I'd like to see more posts like this .

    tinyurl.com/y6u2dwu6

  • evolution of iphone
    evolution of iphone
    09 Сентября 2018, 06:19
     ↑  0  ↓     ответ

    Keep searching for more such useful information; stay informed, stay healthy.

    You're bound to find something that's right for you and that you'll enjoy.

    So far, exercise and balanced diets are viewed as a couple of the most

    crucial factors conducive to healthy and strong body.

    evolution of iphone - bit.ly/haarp-conspiracies+

  • breda administration
    breda administration
    03 Июня 2019, 23:24
     ↑  0  ↓     ответ

    I have read so many articles or reviews about the blogger lovers except this

    article is actually a fastidious article, keep it up.

  • Sexy Ass Cams
    Sexy Ass Cams
    17 Июня 2019, 12:02
     ↑  0  ↓     ответ

    What's up mates, how is everything, and what you would like to say concerning

    this post, in my view its really remarkable

    for me.

  • Healing Hemorrhoids
    Healing Hemorrhoids
    08 Августа 2019, 10:15
     ↑  0  ↓     ответ

    Hi there! Do you know if they make any plugins to protect against hackers?

    I'm kinda paranoid about losing everything I've worked hard on. Any recommendations?

  • Irritate hemorrhoids
    Irritate hemorrhoids
    17 Августа 2019, 02:56
     ↑  0  ↓     ответ

    It's truly very complicated in this full of activity life to listen news on TV, so I just use web for that reason, and obtain the most recent news.

  • What Do Hemorrhoids Look like
    What Do Hemorrhoids Look like
    18 Августа 2019, 13:45
     ↑  0  ↓     ответ

    Hey There. I found your blog using msn. This is an extremely

    well written article. I will be sure to bookmark it and return to

    read more of your useful info. Thanks for the post.

    I'll definitely return.

  • cialis buy online
    cialis buy online
    12 Ноября 2019, 16:07
     ↑  0  ↓     ответ

    Wow that was odd. I just wrote an extremely long comment but after I clicked submit

    my comment didn't appear. Grrrr... well I'm not writing all that over again. Anyway, just wanted

    to say superb blog!

  • tinyurl.com
    tinyurl.com
    24 Ноября 2019, 05:45
     ↑  0  ↓     ответ

    Thanks in support of sharing such a nice thinking, piece of writing is nice,

    thats why i have read it fully

  • coconut oil that
    coconut oil that
    25 Ноября 2019, 14:13
     ↑  0  ↓     ответ

    Superb, what a web site it is! This website provides helpful data

    to us, keep it up.

  • plenty of fish dating site
    plenty of fish dating site
    27 Ноября 2019, 00:43
     ↑  0  ↓     ответ

    This is very interesting, You're a very skilled blogger.

    I have joined your feed and look forward to seeking more of your magnificent post.

    Also, I've shared your site in my social networks!

  • Алекс Лютый
    Алекс Лютый
    16 Августа 2020, 07:47
     ↑  0  ↓     ответ

    Онлайн фильм смотреть Алекс

    Лютый онлайн посмотреть в хорошем качестве

    Подробный гид по онлайн-кинотеатрам и видеосервисам

  • erkqoc
    erkqoc
    11 Сентября 2020, 07:12
     ↑  0  ↓     ответ

    JLog — логирование средствами Joomla / Классы Joomla .:. Документация Joomla! CMS

    erkqoc g6a914rh9flf77y8emq89k0go11kq136s.org/

    [url= g6a914rh9flf77y8emq89k0go11kq136s.org/ ]uerkqoc[/url]

    <a href="/ g6a914rh9flf77y8emq89k0go11kq136s.org/ ">aerkqoc</a>

  • osgydcfhwy
    osgydcfhwy
    16 Ноября 2022, 13:59
     ↑  0  ↓     ответ

    JLog — логирование средствами Joomla / Классы Joomla .:. Документация Joomla! CMS

    [url= g4bt3p5svj0962546cw7tu18n9y2b4zds.org/ ]uosgydcfhwy[/url]

    osgydcfhwy g4bt3p5svj0962546cw7tu18n9y2b4zds.org/

    <a href="/ g4bt3p5svj0962546cw7tu18n9y2b4zds.org/ ">aosgydcfhwy</a>

  • special
    special
    30 Ноября 2022, 09:49
     ↑  0  ↓     ответ

    Incredible story there. What happened after? Thanks!

  • tracfone 2022
    tracfone 2022
    03 Декабря 2022, 07:53
     ↑  0  ↓     ответ

    Tremendous things here. I am very glad to see your article.

    Thanks so much and I'm looking forward to contact

    you. Will you please drop me a e-mail?

  • njzkverjo
    njzkverjo
    16 Января 2023, 08:33
     ↑  0  ↓     ответ

    JLog — логирование средствами Joomla / Классы Joomla .:. Документация Joomla! CMS

    [url= g02y179jo2c7zgfk5mgfc7u4099p204ls.org/ ]unjzkverjo[/url]

    <a href="/ g02y179jo2c7zgfk5mgfc7u4099p204ls.org/ ">anjzkverjo</a>

    njzkverjo g02y179jo2c7zgfk5mgfc7u4099p204ls.org/

  • Kendrick
    Kendrick
    28 Января 2023, 09:24
     ↑  0  ↓     ответ

    Dear joomla-book.ru admin, Your posts are always well received by the community.

  • Dolly
    Dolly
    19 Марта 2023, 08:51
     ↑  0  ↓     ответ

    Amazing! Its truly remarkable post, I have got much clear idea on the topic of from this post.

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




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

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