ロギング
Ginには、ステータスコード、HTTPメソッド、パス、レイテンシなど、各HTTPリクエストの詳細を記録する組み込みのロガーミドルウェアが含まれています。
gin.Default()でルーターを作成すると、ロガーミドルウェアはリカバリミドルウェアとともに自動的に登録されます:
// LoggerとRecoveryミドルウェアは既に登録済みrouter := gin.Default()使用するミドルウェアを完全に制御する必要がある場合は、gin.New()でルーターを作成し、ロガーを手動で追加します:
// ミドルウェアは登録されていないrouter := gin.New()
// ロガーミドルウェアを登録router.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を使用して独自のログフォーマットを定義する。 - ロギングのスキップ — 特定のパスや条件でロギングをスキップする。
- ログ出力の色付け制御 — カラー化されたログ出力を有効または無効にする。
- クエリ文字列のロギングを回避 — セキュリティとプライバシーのためにログ出力からクエリパラメータを除去する。
- ルートログのフォーマット定義 — 起動時に登録されるルートの表示方法をカスタマイズする。