summaryrefslogtreecommitdiff
path: root/internal/server/session/session.go
diff options
context:
space:
mode:
authorKyren223 <Kyren223@proton.me>2025-07-09 16:20:59 +0300
committerKyren223 <Kyren223@proton.me>2025-07-19 18:32:12 +0300
commitba47118e5171a602e90d22951997bf220fd8deb1 (patch)
treedd270b5fe4c8242b5c8411ddc87f829f679066b1 /internal/server/session/session.go
parent402e2b41084fd6558a73121734a1bae66e4ae5ad (diff)
Replaced most log statements with slog on the server
Diffstat (limited to 'internal/server/session/session.go')
-rw-r--r--internal/server/session/session.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/internal/server/session/session.go b/internal/server/session/session.go
index ffe6c56..5c395b7 100644
--- a/internal/server/session/session.go
+++ b/internal/server/session/session.go
@@ -4,11 +4,13 @@ import (
"context"
"crypto/ed25519"
"crypto/rand"
+ "log/slog"
"net"
"sync"
"time"
"github.com/kyren223/eko/internal/packet"
+ "github.com/kyren223/eko/internal/server/ctxkeys"
"github.com/kyren223/eko/pkg/assert"
"github.com/kyren223/eko/pkg/snowflake"
)
@@ -149,3 +151,17 @@ func (s *Session) CloseWriteQueue() {
func (s *Session) Close() {
s.cancel()
}
+
+func (s *Session) LogValue() slog.Value {
+ if s.IsAuthenticated() {
+ return slog.GroupValue(
+ slog.Any(ctxkeys.IpAddr.String(), s.Addr()),
+ slog.Any(ctxkeys.UserID.String(), s.ID()),
+ slog.Any("public_key", s.PubKey()),
+ )
+ } else {
+ return slog.GroupValue(
+ slog.Any(ctxkeys.IpAddr.String(), s.Addr()),
+ )
+ }
+}