From 917392a153859ced1ee954f1e4fc4226c4ac6f76 Mon Sep 17 00:00:00 2001 From: lufia Date: Mon, 25 Mar 2024 14:37:27 +0900 Subject: [PATCH 1/2] =?UTF-8?q?log/slog=E3=82=92=E4=BD=BF=E3=81=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- go.mod | 5 +++-- go.sum | 2 -- logger/logger.go | 2 +- logger/logger_test.go | 2 +- logger/request_logger.go | 4 ++-- logger/request_logger_test.go | 2 +- 6 files changed, 8 insertions(+), 9 deletions(-) diff --git a/go.mod b/go.mod index 9195c42..ef5fb1d 100644 --- a/go.mod +++ b/go.mod @@ -1,9 +1,10 @@ module github.com/hatena/chi-middlewares -go 1.20 +go 1.22 + +toolchain go1.22.1 require ( github.com/go-chi/chi/v5 v5.0.12 github.com/google/go-cmp v0.6.0 - golang.org/x/exp v0.0.0-20240318143956-a85f2c67cd81 ) diff --git a/go.sum b/go.sum index e3cdf78..a900232 100644 --- a/go.sum +++ b/go.sum @@ -2,5 +2,3 @@ github.com/go-chi/chi/v5 v5.0.12 h1:9euLV5sTrTNTRUU9POmDUvfxyj6LAABLUcEWO+JJb4s= github.com/go-chi/chi/v5 v5.0.12/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8= github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= -golang.org/x/exp v0.0.0-20240318143956-a85f2c67cd81 h1:6R2FC06FonbXQ8pK11/PDFY6N6LWlf9KlzibaCapmqc= -golang.org/x/exp v0.0.0-20240318143956-a85f2c67cd81/go.mod h1:CQ1k9gNrJ50XIzaKCRR2hssIjF07kZFEiieALBM/ARQ= diff --git a/logger/logger.go b/logger/logger.go index 8f4a66a..ad78890 100644 --- a/logger/logger.go +++ b/logger/logger.go @@ -3,10 +3,10 @@ package logger import ( "context" + "log/slog" "net/http" "github.com/go-chi/chi/v5/middleware" - "golang.org/x/exp/slog" ) type LogKey struct{} diff --git a/logger/logger_test.go b/logger/logger_test.go index 30e8330..7bc67c8 100644 --- a/logger/logger_test.go +++ b/logger/logger_test.go @@ -5,6 +5,7 @@ import ( "context" "fmt" "io" + "log/slog" "math/rand" "net/http" "net/http/httptest" @@ -13,7 +14,6 @@ import ( "github.com/go-chi/chi/v5" "github.com/go-chi/chi/v5/middleware" - "golang.org/x/exp/slog" ) func Test_Logger(t *testing.T) { diff --git a/logger/request_logger.go b/logger/request_logger.go index 92b8f69..c934df9 100644 --- a/logger/request_logger.go +++ b/logger/request_logger.go @@ -3,11 +3,11 @@ package logger import ( "context" "fmt" + "log/slog" "net/http" "time" "github.com/go-chi/chi/v5/middleware" - "golang.org/x/exp/slog" ) // RequestLogger は、HTTP request が完了した時にその要約を log に吐く。Logger は RequestLogger の前に置かねばならない。middleware.RealIP は RequestLogger の前に置かねばならない。middleware.Recoverer は RequestLogger の後に置かねばならない @@ -64,7 +64,7 @@ func (e *requestLogEntry) Write( // middleware.Recoverer が呼ぶ func (e *requestLogEntry) Panic(v interface{}, stack []byte) { - e.log.ErrorCtx( + e.log.ErrorContext( e.ctx, "panic", slog.String("panic", fmt.Sprintf("%+v", v)), diff --git a/logger/request_logger_test.go b/logger/request_logger_test.go index 4a4c196..886f999 100644 --- a/logger/request_logger_test.go +++ b/logger/request_logger_test.go @@ -5,6 +5,7 @@ import ( "crypto/tls" "encoding/json" "fmt" + "log/slog" "math/rand" "net/http" "net/http/httptest" @@ -13,7 +14,6 @@ import ( "github.com/go-chi/chi/v5" "github.com/go-chi/chi/v5/middleware" "github.com/google/go-cmp/cmp" - "golang.org/x/exp/slog" ) func Test_RequestLogger(t *testing.T) { From a07f1bab7cbf21dba1406d3f0cd657afa5e439e6 Mon Sep 17 00:00:00 2001 From: lufia Date: Mon, 25 Mar 2024 14:43:20 +0900 Subject: [PATCH 2/2] go-version-file --- .github/workflows/task-test-go.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/task-test-go.yml b/.github/workflows/task-test-go.yml index e41c529..3a3c154 100644 --- a/.github/workflows/task-test-go.yml +++ b/.github/workflows/task-test-go.yml @@ -12,6 +12,8 @@ jobs: uses: actions/checkout@v4 - name: Setup Go uses: actions/setup-go@v5 + with: + go-version-file: go.mod - uses: golangci/golangci-lint-action@v4 with: skip-pkg-cache: true # https://github.com/golangci/golangci-lint-action/issues/677 @@ -24,5 +26,7 @@ jobs: uses: actions/checkout@v4 - name: Setup Go uses: actions/setup-go@v5 + with: + go-version-file: go.mod - name: test run: make test-go