@Utarzan123
backend

Целесообразно ли логирование выносить в отдельную базу?

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

Целесообразно ли вести логирование в отдельной базе данных?
В данной ситуации у нас используется Laravel
  • Вопрос задан
  • 369 просмотров
Пригласить эксперта
Ответы на вопрос 5
gscraft
@gscraft
Программист, философ
А в чем загвоздка? Проблем с этим нет, если журналы грузят базу, то используйте отдельную. И даже не классическую базу, а MongoDB, например, или иные инструменты.

PS Ну а снятие копий, почему не исключить таблицы при выборке? Плюс, есть другие решения для разработчика, например, наборы тестовых данных (у Laravel есть соответствующий инструмент).
Ответ написан
@dimuska139
Backend developer
Можете создать слейв-реплику - и дамп снимать с неё. Тогда нагрузки на прод не будет. Другое дело, что вообще не ясно, почему для локальной разработки разработчикам разрешается снимать дамп прода. У разработчиков туда вообще по-хорошему доступа быть не должно (только у ответственных лиц). Для локальной разработки должен быть специально подготовлен дамп, причём желательно чтобы в нём были ненастоящие данные или обезличенные (например, имейлы пользователей заменены на фейковые).
Ответ написан
Roosso
@Roosso
Нетипичный программист
Наверное в целом вести логи в SQL БД не очень задумка.

Порекомендую Вам MongoDB. Это no-SQL решение, в целом ориентированное как раз на регистрацию событий. Меньше нагрузки на сервер, меньше проблем с деплоем обновлений на прод.
Ответ написан
@Kirill-Gorelov
С ума с IT
ЧТо-то никто не предлагает крутой вариант с иластиком....
Буду первым.
Ответ написан
@Vitsliputsli
Для разработки база должна разворачиваться из миграций, т.е. не должно быть никакой зависимости от прода. Если не используете их, то пора начать. Чтобы не писать их все с нуля, создайте дамп структуры и разворачивайте его, а новые изменения уже в миграциях. Необходимые для разработки и тестирования данные заполняйте фикстурами.
Что касается логов в базе, то нужно понимать, как вы их используете, и уже исходя из этого выбирать решение.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽
22 апр. 2024, в 16:15
18000 руб./за проект
23 апр. 2024, в 16:55
10000 руб./за проект