This commit is contained in:
Samuel Berthe
2023-08-09 18:27:13 +02:00
parent 1874447dc7
commit 68aed0c018
8 changed files with 30 additions and 26 deletions
+2 -2
View File
@@ -13,7 +13,7 @@ jobs:
steps:
- uses: actions/setup-go@v2
with:
go-version: 1.20.3
go-version: 1.21
stable: false
- uses: actions/checkout@v2
- name: golangci-lint
@@ -41,4 +41,4 @@ jobs:
# skip-build-cache: true
# optionally use a specific version of Go rather than the latest one
go_version: '1.20.3'
go_version: '1.21'
+1 -1
View File
@@ -18,7 +18,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.20.3
go-version: 1.21
stable: false
- name: Test
+1 -1
View File
@@ -16,7 +16,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.20.3
go-version: 1.21
stable: false
- name: Build
+10 -12
View File
@@ -2,7 +2,7 @@
# slog: Gin middleware
[![tag](https://img.shields.io/github/tag/samber/slog-gin.svg)](https://github.com/samber/slog-gin/releases)
![Go Version](https://img.shields.io/badge/Go-%3E%3D%201.20.3-%23007d9c)
![Go Version](https://img.shields.io/badge/Go-%3E%3D%201.21-%23007d9c)
[![GoDoc](https://godoc.org/github.com/samber/slog-gin?status.svg)](https://pkg.go.dev/github.com/samber/slog-gin)
![Build Status](https://github.com/samber/slog-gin/actions/workflows/test.yml/badge.svg)
[![Go report](https://goreportcard.com/badge/github.com/samber/slog-gin)](https://goreportcard.com/report/github.com/samber/slog-gin)
@@ -10,7 +10,7 @@
[![Contributors](https://img.shields.io/github/contributors/samber/slog-gin)](https://github.com/samber/slog-gin/graphs/contributors)
[![License](https://img.shields.io/github/license/samber/slog-gin)](./LICENSE)
[Gin](https://github.com/gin-gonic/gin) middleware to log http requests using [slog](https://pkg.go.dev/golang.org/x/exp/slog).
[Gin](https://github.com/gin-gonic/gin) middleware to log http requests using [slog](https://pkg.go.dev/log/slog).
**See also:**
@@ -41,11 +41,9 @@
go get github.com/samber/slog-gin
```
**Compatibility**: go >= 1.20.3
**Compatibility**: go >= 1.21
This library is v0 and follows SemVer strictly. On `slog` final release (go 1.21), this library will go v1.
No breaking changes will be made to exported APIs before v1.0.0.
No breaking changes will be made to exported APIs before v2.0.0.
## 💡 Usage
@@ -55,7 +53,7 @@ No breaking changes will be made to exported APIs before v1.0.0.
import (
"github.com/gin-gonic/gin"
sloggin "github.com/samber/slog-gin"
"golang.org/x/exp/slog"
"log/slog"
)
// Create a slog logger, which:
@@ -86,7 +84,7 @@ import (
"github.com/gin-gonic/gin"
sloggin "github.com/samber/slog-gin"
slogformatter "github.com/samber/slog-formatter"
"golang.org/x/exp/slog"
"log/slog"
)
// Create a slog logger, which:
@@ -124,7 +122,7 @@ router.Run(":1234")
import (
"github.com/gin-gonic/gin"
sloggin "github.com/samber/slog-gin"
"golang.org/x/exp/slog"
"log/slog"
)
// Create a slog logger, which:
@@ -154,7 +152,7 @@ router.Run(":1234")
import (
"github.com/gin-gonic/gin"
sloggin "github.com/samber/slog-gin"
"golang.org/x/exp/slog"
"log/slog"
)
// Create a slog logger, which:
@@ -181,7 +179,7 @@ router.Run(":1234")
import (
"github.com/gin-gonic/gin"
sloggin "github.com/samber/slog-gin"
"golang.org/x/exp/slog"
"log/slog"
)
// Create a slog logger, which:
@@ -215,7 +213,7 @@ router.Run(":1234")
import (
"github.com/gin-gonic/gin"
sloggin "github.com/samber/slog-gin"
"golang.org/x/exp/slog"
"log/slog"
)
// Create a slog logger, which:
+2 -1
View File
@@ -5,10 +5,11 @@ import (
"os"
"time"
"log/slog"
"github.com/gin-gonic/gin"
slogformatter "github.com/samber/slog-formatter"
sloggin "github.com/samber/slog-gin"
"golang.org/x/exp/slog"
)
func main() {
+4 -4
View File
@@ -1,8 +1,8 @@
module github.com/samber/slog-gin
go 1.20
go 1.21
require golang.org/x/exp v0.0.0-20230522175609-2e198f4a06a1
require golang.org/x/exp v0.0.0-20230522175609-2e198f4a06a1 // indirect
require (
github.com/bytedance/sonic v1.9.1 // indirect
@@ -22,7 +22,7 @@ require (
github.com/modern-go/reflect2 v1.0.2 // indirect
github.com/pelletier/go-toml/v2 v2.0.8 // indirect
github.com/samber/lo v1.38.1 // indirect
github.com/samber/slog-multi v0.6.0 // indirect
github.com/samber/slog-multi v1.0.0 // indirect
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
github.com/ugorji/go/codec v1.2.11 // indirect
golang.org/x/arch v0.3.0 // indirect
@@ -37,6 +37,6 @@ require (
require (
github.com/gin-gonic/gin v1.9.1
github.com/google/uuid v1.3.0
github.com/samber/slog-formatter v0.6.0
github.com/samber/slog-formatter v1.0.0
go.uber.org/goleak v1.2.1
)
+8 -4
View File
@@ -15,6 +15,7 @@ github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm
github.com/gin-gonic/gin v1.9.1 h1:4idEAncQnU5cB7BeOkPtxjfCSye0AAm1R0RVIqJ+Jmg=
github.com/gin-gonic/gin v1.9.1/go.mod h1:hPrL7YrpYKXt5YId3A/Tnip5kqbEAP+KLuI3SUcPTeU=
github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s=
github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=
github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA=
github.com/go-playground/locales v0.14.1/go.mod h1:hxrqLVvrK65+Rwrd5Fc6F2O76J/NuW9t0sjnWqG1slY=
github.com/go-playground/universal-translator v0.18.1 h1:Bcnm0ZwsGyWbCzImXv+pAJnYK9S473LQFuzCbDbfSFY=
@@ -26,6 +27,7 @@ github.com/goccy/go-json v0.10.2/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MG
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg=
github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I=
github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
@@ -35,6 +37,7 @@ github.com/klauspost/cpuid/v2 v2.0.9/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa02
github.com/klauspost/cpuid/v2 v2.2.4 h1:acbojRNwl3o09bUq+yDCtZFc1aiwaAAxtcn8YkZXnvk=
github.com/klauspost/cpuid/v2 v2.2.4/go.mod h1:RVVoqg1df56z8g3pUjL/3lE5UfnlrJX8tyFgg4nqhuY=
github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI=
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
github.com/leodido/go-urn v1.2.4 h1:XlAE/cm/ms7TE/VMVoduSpNBoyc2dOxHs5MZSwAN63Q=
@@ -52,10 +55,10 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/samber/lo v1.38.1 h1:j2XEAqXKb09Am4ebOg31SpvzUTTs6EN3VfgeLUhPdXM=
github.com/samber/lo v1.38.1/go.mod h1:+m/ZKRl6ClXCE2Lgf3MsQlWfh4bn1bz6CXEOxnEXnEA=
github.com/samber/slog-formatter v0.6.0 h1:YMckBY83lGHmjuisOXVKlw9s3pMcW8MVZ85bZzF2zgs=
github.com/samber/slog-formatter v0.6.0/go.mod h1:4uQJIgEMCFy7wGiQY3G+ZASGL/I6641FTwqqg2f+lIo=
github.com/samber/slog-multi v0.6.0 h1:PlkNfE+4HlDz32PdZvVfofEwndsf6Hkjo+SiHdnVZf8=
github.com/samber/slog-multi v0.6.0/go.mod h1:tframyieOY2ATooyXYheljn9FzBCAz+gGxpwWWvtVfg=
github.com/samber/slog-formatter v1.0.0 h1:ULxHV+jNqi6aFP8xtzGHl2ejFRMl2+jI2UhCpgoXTDA=
github.com/samber/slog-formatter v1.0.0/go.mod h1:c7pRfwhCfZQNzJz+XirmTveElxXln7M0Y8Pq781uxlo=
github.com/samber/slog-multi v1.0.0 h1:snvP/P5GLQ8TQh5WSqdRaxDANW8AAA3egwEoytLsqvc=
github.com/samber/slog-multi v1.0.0/go.mod h1:uLAvHpGqbYgX4FSL0p1ZwoLuveIAJvBECtE07XmYvFo=
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo=
@@ -94,6 +97,7 @@ google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cn
google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY=
gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
+2 -1
View File
@@ -5,9 +5,10 @@ import (
"net/http"
"time"
"log/slog"
"github.com/gin-gonic/gin"
"github.com/google/uuid"
"golang.org/x/exp/slog"
)
const requestIDCtx = "slog-gin.request-id"