MongoDB — хорошая БД для записи логов из php скриптов Leave a comment

Одним из хороших примеров использования популярной базы данных Mongo для php
программиста, является логирование событий происходящих в скрипте в коллекции базы.

Важным преимуществом логирования в MongoDB перед логированием в файлы является:

1. Возможность отправки в лог целых массивов данных

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

3. Возможность поиска, сортировки, отбора по условиям документов в коллекциях (документ и коллекция — внутреннее понятие MongoDB)

4. Бесплатный софт для работы с БД

5. Масса библиотек для работы с Mongo для ваших скриптов

6. MongoDB имеет обширную документацию по составлению запросов

Пояснение к функции:

$doc — Массив для логирования, по умолчанию в него добавляется ключи dt и dd с дата+время и дата. Удобно в последствии использовать для фильтрации

$database — Название базы данных и через «.» название коллекции. Сюда запишется ваш массив данных, который преобразуется в json структуру данных

Эта строка кода отвечает за подключение к БД. Обратите внимание в текущем подключении подразумевается что бд не требует логина и пароля.

Код функции внутри вынесен в блоки try и catch, для того что бы логирование в случае ошибки не роняло ваш скрипт.

PS: Немного дёгтя — данные передаваемые в массив $doc должны быть в кодировке UTF-8, иначе запись в MongoDB потерпит неудачу

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *