Задать вопрос
WhiteHatqq
@WhiteHatqq

Как анализировать JS и PHP ошибки на своем сайте?

Добрый день!

Подскажите, как можно обрабатывать и визуализировать ошибки и кастомные передаваемые данные на своем сайте? (Логи с оплатами на серверной и клиентской стороне, ошибки из консоли и тд).

Рассматриваю варианты:
1. Складывать все в тестовый лог, затем раз в день парсить и добавлять в БД для последующей визуализации через Grafana.
2. В поисках бесплатного, желательно OpenSounce проекта (garage.hawk.so - норм но есть лимит 1000 запросов).

Подскажите как решаете подобную задачу.
  • Вопрос задан
  • 67 просмотров
Подписаться 1 Средний 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
@rPman
Информация обо всех событиях складывать в машиночитаемом виде, не важно каком, выбор зависит от задачи, от нагрузки, от наличия денег и т.п.

Машиночитаемом, это значит информация, разделенная на элементы (поля, структуры или что у тебя еще имеет значение) должна храниться в таком виде, что бы эти элементы можно было извлечь без дополнительной работы, а при наличии больших объемов и требованиях аналитики. еще и с возможностью индексации на их основе.

Самое простое - это текстовый лог в формате jsonl, это сериализованный в json по строчно на каждое событие (а атрибуты события - атрибуты объекта json). В некоторых случая json не поддерживается, например какой-нибудь fail2ban его не умеет, но умеет с помощью регулярных выражений извлекать данные из текста, тогда данные можно собирать и разделять в виде, удобным для последующей обработке регулярными выражениями.

Как только объемы событий выходят на гигабайты, текстовые логи становятся неудобными (а может и раньше) и данные лучше складывать в какую-либо базу данных... кому то нравится nosql (неудобна для анализа), кто то сразу в sql базы складывает (они удобны тем что могут хорошо масштабироваться на несколько устройств или машин). Те, кому нужно совсем много данных, могу задуматься о предварительном анализе данных через промежуточный сервис (т.е. для того что бы оставить сообщение, приложение по сети отправляет лог-серверу запрос), который делает минимальный анализ, выделяет что сохранить и как, проводит базовую аналитику и сохраняет в базы данных (лог база данных может быть сложнее чем пара табличек).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы