Логирование
Gin включает встроенный middleware логирования, который записывает детали каждого HTTP-запроса, включая код статуса, HTTP-метод, путь и задержку.
Когда вы создаёте маршрутизатор с помощью gin.Default(), middleware логирования автоматически подключается вместе с middleware восстановления:
// Logger and Recovery middleware are already attachedrouter := gin.Default()Если вам нужен полный контроль над тем, какие middleware использовать, создайте маршрутизатор с помощью gin.New() и добавьте логгер вручную:
// No middleware attachedrouter := gin.New()
// Attach the logger middlewarerouter.Use(gin.Logger())Логгер по умолчанию пишет в os.Stdout и выдаёт такой вывод для каждого запроса:
[GIN] 2025/06/01 - 15:04:05 | 200 | 512.345µs | 127.0.0.1 | GET "/ping"Каждая запись включает временную метку, HTTP-код статуса, задержку запроса, IP клиента, HTTP-метод и запрошенный путь.
В этом разделе
- Запись логов в файл — Перенаправление вывода логов в файл, в консоль или в оба места одновременно.
- Пользовательский формат логов — Определение собственного формата логов с помощью
LoggerWithFormatter. - Пропуск логирования — Пропуск логирования для определённых путей или условий.
- Управление цветным выводом логов — Включение или отключение цветного вывода логов.
- Исключение строк запроса из логов — Удаление параметров запроса из вывода логов для безопасности и конфиденциальности.
- Формат лога маршрутов — Настройка формата вывода зарегистрированных маршрутов при запуске.