From 1334895a5c0c9bc30af4ac25f239a7f267dfb23e Mon Sep 17 00:00:00 2001 From: andig Date: Fri, 3 May 2024 11:49:31 +0200 Subject: [PATCH 1/4] Return to minimal logger interface --- ascii_over_tcp_client.go | 4 +-- asciiclient.go | 4 +-- client.go | 5 ++++ cmd/modbus-cli/main.go | 4 +-- rtu_over_tcp_client.go | 4 +-- rtuclient.go | 4 +-- serial.go | 40 +++------------------------ tcpclient.go | 46 +++++--------------------------- test/asciiclient_test.go | 10 ++++++- test/rtu_over_tcp_client_test.go | 2 +- test/rtuclient_test.go | 2 +- test/tcpclient_test.go | 2 +- 12 files changed, 38 insertions(+), 89 deletions(-) diff --git a/ascii_over_tcp_client.go b/ascii_over_tcp_client.go index d45b008..f8a5805 100644 --- a/ascii_over_tcp_client.go +++ b/ascii_over_tcp_client.go @@ -55,7 +55,7 @@ func (mb *asciiTCPTransporter) Send(aduRequest []byte) (aduResponse []byte, err } // Send the request - mb.Debug("modbus: send %q\n", aduRequest) + mb.Printf("modbus: send %q\n", aduRequest) if _, err = mb.conn.Write(aduRequest); err != nil { return } @@ -78,6 +78,6 @@ func (mb *asciiTCPTransporter) Send(aduRequest []byte) (aduResponse []byte, err } } aduResponse = data[:length] - mb.Debug("modbus: recv %q\n", aduResponse) + mb.Printf("modbus: recv %q\n", aduResponse) return } diff --git a/asciiclient.go b/asciiclient.go index 0deffea..6cd0054 100644 --- a/asciiclient.go +++ b/asciiclient.go @@ -181,7 +181,7 @@ func (mb *asciiSerialTransporter) Send(aduRequest []byte) (aduResponse []byte, e mb.startCloseTimer() // Send the request - mb.Debug("modbus: send % x\n", aduRequest) + mb.Printf("modbus: send % x\n", aduRequest) if _, err = mb.port.Write(aduRequest); err != nil { return } @@ -204,7 +204,7 @@ func (mb *asciiSerialTransporter) Send(aduRequest []byte) (aduResponse []byte, e } } aduResponse = data[:length] - mb.Debug("modbus: recv % x\n", aduResponse) + mb.Printf("modbus: recv % x\n", aduResponse) return } diff --git a/client.go b/client.go index 0c8e1b6..8148704 100644 --- a/client.go +++ b/client.go @@ -9,6 +9,11 @@ import ( "fmt" ) +// Logger is the interface to the required logging functions +type Logger interface { + Printf(format string, v ...interface{}) +} + // DataSizeError represents an error for invalid data-sizes i.e. for cases // where the data-size does not match the expectation. type DataSizeError struct { diff --git a/cmd/modbus-cli/main.go b/cmd/modbus-cli/main.go index 2c9c141..01306ca 100644 --- a/cmd/modbus-cli/main.go +++ b/cmd/modbus-cli/main.go @@ -238,7 +238,7 @@ func convertToBytes(eType string, order binary.ByteOrder, forcedOrder string, va } func resultToFile(r []byte, filename string) error { - return os.WriteFile(filename, r, 0644) + return os.WriteFile(filename, r, 0o644) } func resultToRawString(r []byte, startReg int) (string, error) { @@ -421,7 +421,7 @@ type option struct { slaveID int timeout time.Duration - logger *slog.Logger + logger Logger rtu struct { baudrate int diff --git a/rtu_over_tcp_client.go b/rtu_over_tcp_client.go index 5b28691..c7b2f70 100644 --- a/rtu_over_tcp_client.go +++ b/rtu_over_tcp_client.go @@ -57,7 +57,7 @@ func (mb *rtuTCPTransporter) Send(aduRequest []byte) (aduResponse []byte, err er } // Send the request - mb.Debug("modbus: send % x\n", aduRequest) + mb.Printf("modbus: send % x\n", aduRequest) if _, err = mb.conn.Write(aduRequest); err != nil { return } @@ -95,6 +95,6 @@ func (mb *rtuTCPTransporter) Send(aduRequest []byte) (aduResponse []byte, err er return } aduResponse = data[:n] - mb.Debug("modbus: recv % x\n", aduResponse) + mb.Printf("modbus: recv % x\n", aduResponse) return } diff --git a/rtuclient.go b/rtuclient.go index b4cf837..01cc2aa 100644 --- a/rtuclient.go +++ b/rtuclient.go @@ -261,7 +261,7 @@ func (mb *rtuSerialTransporter) Send(aduRequest []byte) (aduResponse []byte, err mb.startCloseTimer() // Send the request - mb.Debug("modbus: send % x\n", aduRequest) + mb.Printf("modbus: send % x\n", aduRequest) if _, err = mb.port.Write(aduRequest); err != nil { return } @@ -271,7 +271,7 @@ func (mb *rtuSerialTransporter) Send(aduRequest []byte) (aduResponse []byte, err time.Sleep(mb.calculateDelay(len(aduRequest) + bytesToRead)) data, err := readIncrementally(aduRequest[0], aduRequest[1], mb.port, time.Now().Add(mb.Config.Timeout)) - mb.Debug("modbus: recv % x\n", data[:]) + mb.Printf("modbus: recv % x\n", data[:]) aduResponse = data return } diff --git a/serial.go b/serial.go index 178c831..4329e92 100644 --- a/serial.go +++ b/serial.go @@ -5,10 +5,8 @@ package modbus import ( - "context" "fmt" "io" - "log/slog" "sync" "time" @@ -26,7 +24,7 @@ type serialPort struct { // Serial port configuration. serial.Config - Logger *slog.Logger + Logger Logger IdleTimeout time.Duration mu sync.Mutex @@ -71,39 +69,9 @@ func (mb *serialPort) close() (err error) { return } -func (mb *serialPort) Debug(format string, v ...interface{}) { +func (mb *serialPort) Printf(format string, v ...interface{}) { if mb.Logger != nil { - mb.Logger.Debug(format, v...) - } -} - -func (mb *serialPort) Info(format string, v ...interface{}) { - if mb.Logger != nil { - mb.Logger.Info(format, v...) - } -} - -func (mb *serialPort) Error(format string, v ...interface{}) { - if mb.Logger != nil { - mb.Logger.Error(format, v...) - } -} - -func (mb *serialPort) DebugContext(ctx context.Context, format string, v ...interface{}) { - if mb.Logger != nil { - mb.Logger.DebugContext(ctx, format, v...) - } -} - -func (mb *serialPort) InfoContext(ctx context.Context, format string, v ...interface{}) { - if mb.Logger != nil { - mb.Logger.InfoContext(ctx, format, v...) - } -} - -func (mb *serialPort) ErrorContext(ctx context.Context, format string, v ...interface{}) { - if mb.Logger != nil { - mb.Logger.ErrorContext(ctx, format, v...) + mb.Logger.Printf(format, v...) } } @@ -128,7 +96,7 @@ func (mb *serialPort) closeIdle() { } if idle := time.Since(mb.lastActivity); idle >= mb.IdleTimeout { - mb.Debug("modbus: closing connection due to idle timeout: %v", idle) + mb.Printf("modbus: closing connection due to idle timeout: %v", idle) mb.close() } } diff --git a/tcpclient.go b/tcpclient.go index dcb872f..82d3c70 100644 --- a/tcpclient.go +++ b/tcpclient.go @@ -5,11 +5,9 @@ package modbus import ( - "context" "encoding/binary" "fmt" "io" - "log/slog" "net" "sync" "sync/atomic" @@ -138,7 +136,7 @@ type tcpTransporter struct { // Silent period after successful connection ConnectDelay time.Duration // Transmission logger - Logger *slog.Logger + Logger Logger // TCP connection mu sync.Mutex @@ -185,7 +183,7 @@ func (mb *tcpTransporter) Send(aduRequest []byte) (aduResponse []byte, err error return } // Send data - mb.Debug("modbus: send % x", aduRequest) + mb.Printf("modbus: send % x", aduRequest) if _, err = mb.conn.Write(aduRequest); err != nil { return } @@ -203,7 +201,7 @@ func (mb *tcpTransporter) Send(aduRequest []byte) (aduResponse []byte, err error continue } - mb.Debug("modbus: close connection and retry, because of %v", err) + mb.Printf("modbus: close connection and retry, because of %v", err) mb.close() time.Sleep(mb.LinkRecoveryTimeout) @@ -218,7 +216,7 @@ func (mb *tcpTransporter) readResponse(aduRequest []byte, data []byte, recoveryD if err == nil { err = verify(aduRequest, aduResponse) if err == nil { - mb.Debug("modbus: recv % x\n", aduResponse) + mb.Printf("modbus: recv % x\n", aduResponse) return // everything is OK } } @@ -384,39 +382,9 @@ func (mb *tcpTransporter) flush(b []byte) (err error) { return } -func (mb *tcpTransporter) Debug(format string, v ...interface{}) { +func (mb *tcpTransporter) Printf(format string, v ...interface{}) { if mb.Logger != nil { - mb.Logger.Debug(format, v...) - } -} - -func (mb *tcpTransporter) Info(format string, v ...interface{}) { - if mb.Logger != nil { - mb.Logger.Info(format, v...) - } -} - -func (mb *tcpTransporter) Error(format string, v ...interface{}) { - if mb.Logger != nil { - mb.Logger.Error(format, v...) - } -} - -func (mb *tcpTransporter) DebugContext(ctx context.Context, format string, v ...interface{}) { - if mb.Logger != nil { - mb.Logger.DebugContext(ctx, format, v...) - } -} - -func (mb *tcpTransporter) InfoContext(ctx context.Context, format string, v ...interface{}) { - if mb.Logger != nil { - mb.Logger.InfoContext(ctx, format, v...) - } -} - -func (mb *tcpTransporter) ErrorContext(ctx context.Context, format string, v ...interface{}) { - if mb.Logger != nil { - mb.Logger.ErrorContext(ctx, format, v...) + mb.Logger.Printf(format, v...) } } @@ -439,7 +407,7 @@ func (mb *tcpTransporter) closeIdle() { } if idle := time.Since(mb.lastActivity); idle >= mb.IdleTimeout { - mb.Debug("modbus: closing connection due to idle timeout: %v", idle) + mb.Printf("modbus: closing connection due to idle timeout: %v", idle) mb.close() } } diff --git a/test/asciiclient_test.go b/test/asciiclient_test.go index dbef4a2..5d2a2ab 100644 --- a/test/asciiclient_test.go +++ b/test/asciiclient_test.go @@ -16,6 +16,14 @@ const ( asciiDevice = "/dev/pts/2" ) +type debugAdapter struct { + *slog.Logger +} + +func (log *debugAdapter) Printf(msg string, args ...any) { + log.Logger.Debug(msg, args...) +} + func TestASCIIClient(t *testing.T) { // Diagslave does not support broadcast id. handler := modbus.NewASCIIClientHandler(asciiDevice) @@ -30,7 +38,7 @@ func TestASCIIClientAdvancedUsage(t *testing.T) { handler.Parity = "E" handler.StopBits = 1 handler.SlaveID = 12 - handler.Logger = slog.New(slog.NewJSONHandler(os.Stdout, nil)) + handler.Logger = &debugAdapter{slog.New(slog.NewJSONHandler(os.Stdout, nil))} err := handler.Connect() if err != nil { t.Fatal(err) diff --git a/test/rtu_over_tcp_client_test.go b/test/rtu_over_tcp_client_test.go index 402c38b..d097b80 100644 --- a/test/rtu_over_tcp_client_test.go +++ b/test/rtu_over_tcp_client_test.go @@ -28,7 +28,7 @@ func TestRTUOverTCPClientAdvancedUsage(t *testing.T) { handler := modbus.NewRTUOverTCPClientHandler(rtuOverTCPDevice) handler.Timeout = 5 * time.Second handler.SlaveID = 1 - handler.Logger = slog.New(slog.NewJSONHandler(os.Stdout, nil)) + handler.Logger = &debugAdapter{slog.New(slog.NewJSONHandler(os.Stdout, nil))} handler.Connect() defer handler.Close() diff --git a/test/rtuclient_test.go b/test/rtuclient_test.go index dddccb7..fd506ac 100644 --- a/test/rtuclient_test.go +++ b/test/rtuclient_test.go @@ -30,7 +30,7 @@ func TestRTUClientAdvancedUsage(t *testing.T) { handler.Parity = "E" handler.StopBits = 1 handler.SlaveID = 11 - handler.Logger = slog.New(slog.NewJSONHandler(os.Stdout, nil)) + handler.Logger = &debugAdapter{slog.New(slog.NewJSONHandler(os.Stdout, nil))} err := handler.Connect() if err != nil { t.Fatal(err) diff --git a/test/tcpclient_test.go b/test/tcpclient_test.go index 0363675..e1ef709 100644 --- a/test/tcpclient_test.go +++ b/test/tcpclient_test.go @@ -26,7 +26,7 @@ func TestTCPClientAdvancedUsage(t *testing.T) { handler := modbus.NewTCPClientHandler(tcpDevice) handler.Timeout = 5 * time.Second handler.SlaveID = 1 - handler.Logger = slog.New(slog.NewJSONHandler(os.Stdout, nil)) + handler.Logger = &debugAdapter{slog.New(slog.NewJSONHandler(os.Stdout, nil))} handler.Connect() defer handler.Close() From bbc42ffb2d0bcc1b45fb6bc47a5989bb591d1688 Mon Sep 17 00:00:00 2001 From: andig Date: Fri, 3 May 2024 12:02:42 +0200 Subject: [PATCH 2/4] Prepare a full revert --- ascii_over_tcp_client.go | 4 ++-- asciiclient.go | 4 ++-- client.go | 2 +- cmd/modbus-cli/main.go | 2 +- rtu_over_tcp_client.go | 4 ++-- rtu_over_udp_client.go | 5 ++--- rtuclient.go | 4 ++-- serial.go | 4 ++-- tcpclient.go | 10 +++++----- 9 files changed, 19 insertions(+), 20 deletions(-) diff --git a/ascii_over_tcp_client.go b/ascii_over_tcp_client.go index f8a5805..cc263e4 100644 --- a/ascii_over_tcp_client.go +++ b/ascii_over_tcp_client.go @@ -55,7 +55,7 @@ func (mb *asciiTCPTransporter) Send(aduRequest []byte) (aduResponse []byte, err } // Send the request - mb.Printf("modbus: send %q\n", aduRequest) + mb.logf("modbus: send %q\n", aduRequest) if _, err = mb.conn.Write(aduRequest); err != nil { return } @@ -78,6 +78,6 @@ func (mb *asciiTCPTransporter) Send(aduRequest []byte) (aduResponse []byte, err } } aduResponse = data[:length] - mb.Printf("modbus: recv %q\n", aduResponse) + mb.logf("modbus: recv %q\n", aduResponse) return } diff --git a/asciiclient.go b/asciiclient.go index 6cd0054..d860fb3 100644 --- a/asciiclient.go +++ b/asciiclient.go @@ -181,7 +181,7 @@ func (mb *asciiSerialTransporter) Send(aduRequest []byte) (aduResponse []byte, e mb.startCloseTimer() // Send the request - mb.Printf("modbus: send % x\n", aduRequest) + mb.logf("modbus: send % x\n", aduRequest) if _, err = mb.port.Write(aduRequest); err != nil { return } @@ -204,7 +204,7 @@ func (mb *asciiSerialTransporter) Send(aduRequest []byte) (aduResponse []byte, e } } aduResponse = data[:length] - mb.Printf("modbus: recv % x\n", aduResponse) + mb.logf("modbus: recv % x\n", aduResponse) return } diff --git a/client.go b/client.go index 8148704..e7919c8 100644 --- a/client.go +++ b/client.go @@ -11,7 +11,7 @@ import ( // Logger is the interface to the required logging functions type Logger interface { - Printf(format string, v ...interface{}) + Printf(format string, v ...any) } // DataSizeError represents an error for invalid data-sizes i.e. for cases diff --git a/cmd/modbus-cli/main.go b/cmd/modbus-cli/main.go index 01306ca..5538aef 100644 --- a/cmd/modbus-cli/main.go +++ b/cmd/modbus-cli/main.go @@ -421,7 +421,7 @@ type option struct { slaveID int timeout time.Duration - logger Logger + logger modbus.Logger rtu struct { baudrate int diff --git a/rtu_over_tcp_client.go b/rtu_over_tcp_client.go index c7b2f70..1a88080 100644 --- a/rtu_over_tcp_client.go +++ b/rtu_over_tcp_client.go @@ -57,7 +57,7 @@ func (mb *rtuTCPTransporter) Send(aduRequest []byte) (aduResponse []byte, err er } // Send the request - mb.Printf("modbus: send % x\n", aduRequest) + mb.logf("modbus: send % x\n", aduRequest) if _, err = mb.conn.Write(aduRequest); err != nil { return } @@ -95,6 +95,6 @@ func (mb *rtuTCPTransporter) Send(aduRequest []byte) (aduResponse []byte, err er return } aduResponse = data[:n] - mb.Printf("modbus: recv % x\n", aduResponse) + mb.logf("modbus: recv % x\n", aduResponse) return } diff --git a/rtu_over_udp_client.go b/rtu_over_udp_client.go index 2a6bb51..0e448ed 100644 --- a/rtu_over_udp_client.go +++ b/rtu_over_udp_client.go @@ -3,7 +3,6 @@ package modbus import ( "fmt" "io" - logger "log/slog" "net" "sync" ) @@ -46,7 +45,7 @@ type rtuUDPTransporter struct { // Connect string Address string // Transmission logger - Logger *logger.Logger + Logger Logger // UDP connection mu sync.Mutex @@ -121,7 +120,7 @@ func (mb *rtuUDPTransporter) Send(aduRequest []byte) (aduResponse []byte, err er func (mb *rtuUDPTransporter) logf(format string, v ...interface{}) { if mb.Logger != nil { - mb.Logger.Info(format, v...) + mb.Logger.Printf(format, v...) } } diff --git a/rtuclient.go b/rtuclient.go index 01cc2aa..5d8d065 100644 --- a/rtuclient.go +++ b/rtuclient.go @@ -261,7 +261,7 @@ func (mb *rtuSerialTransporter) Send(aduRequest []byte) (aduResponse []byte, err mb.startCloseTimer() // Send the request - mb.Printf("modbus: send % x\n", aduRequest) + mb.logf("modbus: send % x\n", aduRequest) if _, err = mb.port.Write(aduRequest); err != nil { return } @@ -271,7 +271,7 @@ func (mb *rtuSerialTransporter) Send(aduRequest []byte) (aduResponse []byte, err time.Sleep(mb.calculateDelay(len(aduRequest) + bytesToRead)) data, err := readIncrementally(aduRequest[0], aduRequest[1], mb.port, time.Now().Add(mb.Config.Timeout)) - mb.Printf("modbus: recv % x\n", data[:]) + mb.logf("modbus: recv % x\n", data[:]) aduResponse = data return } diff --git a/serial.go b/serial.go index 4329e92..3f3e53b 100644 --- a/serial.go +++ b/serial.go @@ -69,7 +69,7 @@ func (mb *serialPort) close() (err error) { return } -func (mb *serialPort) Printf(format string, v ...interface{}) { +func (mb *serialPort) logf(format string, v ...interface{}) { if mb.Logger != nil { mb.Logger.Printf(format, v...) } @@ -96,7 +96,7 @@ func (mb *serialPort) closeIdle() { } if idle := time.Since(mb.lastActivity); idle >= mb.IdleTimeout { - mb.Printf("modbus: closing connection due to idle timeout: %v", idle) + mb.logf("modbus: closing connection due to idle timeout: %v", idle) mb.close() } } diff --git a/tcpclient.go b/tcpclient.go index 82d3c70..d8f5da2 100644 --- a/tcpclient.go +++ b/tcpclient.go @@ -183,7 +183,7 @@ func (mb *tcpTransporter) Send(aduRequest []byte) (aduResponse []byte, err error return } // Send data - mb.Printf("modbus: send % x", aduRequest) + mb.logf("modbus: send % x", aduRequest) if _, err = mb.conn.Write(aduRequest); err != nil { return } @@ -201,7 +201,7 @@ func (mb *tcpTransporter) Send(aduRequest []byte) (aduResponse []byte, err error continue } - mb.Printf("modbus: close connection and retry, because of %v", err) + mb.logf("modbus: close connection and retry, because of %v", err) mb.close() time.Sleep(mb.LinkRecoveryTimeout) @@ -216,7 +216,7 @@ func (mb *tcpTransporter) readResponse(aduRequest []byte, data []byte, recoveryD if err == nil { err = verify(aduRequest, aduResponse) if err == nil { - mb.Printf("modbus: recv % x\n", aduResponse) + mb.logf("modbus: recv % x\n", aduResponse) return // everything is OK } } @@ -382,7 +382,7 @@ func (mb *tcpTransporter) flush(b []byte) (err error) { return } -func (mb *tcpTransporter) Printf(format string, v ...interface{}) { +func (mb *tcpTransporter) logf(format string, v ...interface{}) { if mb.Logger != nil { mb.Logger.Printf(format, v...) } @@ -407,7 +407,7 @@ func (mb *tcpTransporter) closeIdle() { } if idle := time.Since(mb.lastActivity); idle >= mb.IdleTimeout { - mb.Printf("modbus: closing connection due to idle timeout: %v", idle) + mb.logf("modbus: closing connection due to idle timeout: %v", idle) mb.close() } } From a602f3fc380b3a821bfa312502228fcd0ce22133 Mon Sep 17 00:00:00 2001 From: andig Date: Fri, 3 May 2024 12:05:24 +0200 Subject: [PATCH 3/4] Split adapter --- cmd/modbus-cli/log.go | 11 +++++++++++ cmd/modbus-cli/main.go | 2 +- test/asciiclient_test.go | 8 -------- test/log.go | 11 +++++++++++ 4 files changed, 23 insertions(+), 9 deletions(-) create mode 100644 cmd/modbus-cli/log.go create mode 100644 test/log.go diff --git a/cmd/modbus-cli/log.go b/cmd/modbus-cli/log.go new file mode 100644 index 0000000..8d2350a --- /dev/null +++ b/cmd/modbus-cli/log.go @@ -0,0 +1,11 @@ +package main + +import "log/slog" + +type debugAdapter struct { + *slog.Logger +} + +func (log *debugAdapter) Printf(msg string, args ...any) { + log.Logger.Debug(msg, args...) +} diff --git a/cmd/modbus-cli/main.go b/cmd/modbus-cli/main.go index 5538aef..06b5a71 100644 --- a/cmd/modbus-cli/main.go +++ b/cmd/modbus-cli/main.go @@ -74,7 +74,7 @@ func main() { startReg := uint16(*register) if *logframe { - opt.logger = logger + opt.logger = &debugAdapter{logger} } var ( diff --git a/test/asciiclient_test.go b/test/asciiclient_test.go index 5d2a2ab..6375d13 100644 --- a/test/asciiclient_test.go +++ b/test/asciiclient_test.go @@ -16,14 +16,6 @@ const ( asciiDevice = "/dev/pts/2" ) -type debugAdapter struct { - *slog.Logger -} - -func (log *debugAdapter) Printf(msg string, args ...any) { - log.Logger.Debug(msg, args...) -} - func TestASCIIClient(t *testing.T) { // Diagslave does not support broadcast id. handler := modbus.NewASCIIClientHandler(asciiDevice) diff --git a/test/log.go b/test/log.go new file mode 100644 index 0000000..7b42f13 --- /dev/null +++ b/test/log.go @@ -0,0 +1,11 @@ +package test + +import "log/slog" + +type debugAdapter struct { + *slog.Logger +} + +func (log *debugAdapter) Printf(msg string, args ...any) { + log.Logger.Debug(msg, args...) +} From a743f131b6c48d66410aa4f204d02da400513d33 Mon Sep 17 00:00:00 2001 From: andig Date: Fri, 3 May 2024 12:11:19 +0200 Subject: [PATCH 4/4] Simplify test --- test/asciiclient_test.go | 5 ++--- test/log.go | 11 ----------- test/rtu_over_tcp_client_test.go | 5 ++--- test/rtuclient_test.go | 5 ++--- test/tcpclient_test.go | 5 ++--- 5 files changed, 8 insertions(+), 23 deletions(-) delete mode 100644 test/log.go diff --git a/test/asciiclient_test.go b/test/asciiclient_test.go index 6375d13..81f9048 100644 --- a/test/asciiclient_test.go +++ b/test/asciiclient_test.go @@ -5,8 +5,7 @@ package test import ( - "log/slog" - "os" + "log" "testing" "github.com/grid-x/modbus" @@ -30,7 +29,7 @@ func TestASCIIClientAdvancedUsage(t *testing.T) { handler.Parity = "E" handler.StopBits = 1 handler.SlaveID = 12 - handler.Logger = &debugAdapter{slog.New(slog.NewJSONHandler(os.Stdout, nil))} + handler.Logger = log.Default() err := handler.Connect() if err != nil { t.Fatal(err) diff --git a/test/log.go b/test/log.go deleted file mode 100644 index 7b42f13..0000000 --- a/test/log.go +++ /dev/null @@ -1,11 +0,0 @@ -package test - -import "log/slog" - -type debugAdapter struct { - *slog.Logger -} - -func (log *debugAdapter) Printf(msg string, args ...any) { - log.Logger.Debug(msg, args...) -} diff --git a/test/rtu_over_tcp_client_test.go b/test/rtu_over_tcp_client_test.go index d097b80..295b59b 100644 --- a/test/rtu_over_tcp_client_test.go +++ b/test/rtu_over_tcp_client_test.go @@ -5,8 +5,7 @@ package test import ( - "log/slog" - "os" + "log" "testing" "time" @@ -28,7 +27,7 @@ func TestRTUOverTCPClientAdvancedUsage(t *testing.T) { handler := modbus.NewRTUOverTCPClientHandler(rtuOverTCPDevice) handler.Timeout = 5 * time.Second handler.SlaveID = 1 - handler.Logger = &debugAdapter{slog.New(slog.NewJSONHandler(os.Stdout, nil))} + handler.Logger = log.Default() handler.Connect() defer handler.Close() diff --git a/test/rtuclient_test.go b/test/rtuclient_test.go index fd506ac..dd15b63 100644 --- a/test/rtuclient_test.go +++ b/test/rtuclient_test.go @@ -5,8 +5,7 @@ package test import ( - "log/slog" - "os" + "log" "testing" "github.com/grid-x/modbus" @@ -30,7 +29,7 @@ func TestRTUClientAdvancedUsage(t *testing.T) { handler.Parity = "E" handler.StopBits = 1 handler.SlaveID = 11 - handler.Logger = &debugAdapter{slog.New(slog.NewJSONHandler(os.Stdout, nil))} + handler.Logger = log.Default() err := handler.Connect() if err != nil { t.Fatal(err) diff --git a/test/tcpclient_test.go b/test/tcpclient_test.go index e1ef709..d11be82 100644 --- a/test/tcpclient_test.go +++ b/test/tcpclient_test.go @@ -5,8 +5,7 @@ package test import ( - "log/slog" - "os" + "log" "testing" "time" @@ -26,7 +25,7 @@ func TestTCPClientAdvancedUsage(t *testing.T) { handler := modbus.NewTCPClientHandler(tcpDevice) handler.Timeout = 5 * time.Second handler.SlaveID = 1 - handler.Logger = &debugAdapter{slog.New(slog.NewJSONHandler(os.Stdout, nil))} + handler.Logger = log.Default() handler.Connect() defer handler.Close()