Регистрация запросов в базу данных - PullRequest
0 голосов
/ 29 апреля 2020

Должен ли я регистрировать информацию о запросах (ip клиента, код состояния запроса, время выполнения и т. Д. c.) В моем веб-приложении в базе данных для анализа поведения пользователей и возникших ошибок? И какой информационный журнал для лучшего опыта?

1 Ответ

2 голосов
/ 29 апреля 2020

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

Поэтому я бы начал с вопроса о том, что вы хотите увидеть / найти и записать соответственно , Как правило, тогда возможности ведения журналов могут быть расширены в будущем по мере появления новых проблем / идей.

Помните, что каждый раз, когда вы регистрируете что-то, вы замедляете работу своего приложения. Вы также используете больше дискового пространства, никто не поблагодарит вас за покупку большего количества дисковых / более длинных резервных копий только потому, что вы регистрировали все при каждом действии.

Я думаю, я бы следовал ходу мысли, как :

1) Что вы пытаетесь найти, если это ошибка, которую вы можете предсказать, то почему бы не учитывать ее в своем коде для начала. Если для удобства использования в каком формате нужны данные, в каких точках они должны быть записаны.

2) Как долго вам это нужно, не забудьте очистить журналы по истечении определенного периода времени, чтобы сэкономить место на диске. .

3) Каждый сохраненный элемент является ударом по производительности, может быть небольшим, но при большом количестве транзакций он складывается.

4) С осторожностью относитесь к правилам конфиденциальности, можно рассмотреть IP-адрес. в качестве идентифицируемых данных, в этом случае вам необходимо опубликовать sh политику конфиденциальности данных (см. пункт 2).

5) Подумайте об использовании флага для контроля входа или выключения. Затем вы можете использовать его во время известной проблемы, но не записывать все, когда это не нужно.

...