v0.3.8 refactor and cli help add

This commit is contained in:
2025-07-22 10:55:27 -04:00
parent 5aa732b096
commit f5daa00592
44 changed files with 160 additions and 66 deletions

View File

@ -1,4 +1,4 @@
// FILE: src/internal/sink/console.go
// FILE: logwisp/src/internal/sink/console.go
package sink
import (

View File

@ -1,4 +1,4 @@
// FILE: src/internal/sink/file.go
// FILE: logwisp/src/internal/sink/file.go
package sink
import (
@ -70,7 +70,13 @@ func NewFileSink(options map[string]any, logger *log.Logger, formatter format.Fo
return nil, fmt.Errorf("failed to initialize file writer: %w", err)
}
// Start the internal file writer
if err := writer.Start(); err != nil {
return nil, fmt.Errorf("failed to start file writer: %w", err)
}
// Buffer size for input channel
// TODO: Make this configurable
bufferSize := int64(1000)
if bufSize, ok := options["buffer_size"].(int64); ok && bufSize > 0 {
bufferSize = bufSize

View File

@ -1,4 +1,4 @@
// FILE: src/internal/sink/http.go
// FILE: logwisp/src/internal/sink/http.go
package sink
import (

View File

@ -1,4 +1,4 @@
// FILE: src/internal/sink/http_client.go
// FILE: logwisp/src/internal/sink/http_client.go
package sink
import (

View File

@ -1,4 +1,4 @@
// FILE: src/internal/sink/sink.go
// FILE: logwisp/src/internal/sink/sink.go
package sink
import (

View File

@ -1,10 +1,11 @@
// FILE: src/internal/sink/tcp.go
// FILE: logwisp/src/internal/sink/tcp.go
package sink
import (
"context"
"encoding/json"
"fmt"
"github.com/lixenwraith/log/compat"
"net"
"sync"
"sync/atomic"
@ -138,7 +139,10 @@ func (t *TCPSink) Start(ctx context.Context) error {
// Configure gnet
addr := fmt.Sprintf("tcp://:%d", t.config.Port)
// Run gnet in separate goroutine to avoid blocking
// Create a gnet adapter using the existing logger instance
gnetLogger := compat.NewGnetAdapter(t.logger)
// Start gnet server
errChan := make(chan error, 1)
go func() {
t.logger.Info("msg", "Starting TCP server",
@ -146,7 +150,7 @@ func (t *TCPSink) Start(ctx context.Context) error {
"port", t.config.Port)
err := gnet.Run(t.server, addr,
gnet.WithLogger(noopLogger{}),
gnet.WithLogger(gnetLogger),
gnet.WithMulticore(true),
gnet.WithReusePort(true),
)
@ -383,10 +387,10 @@ func (s *tcpServer) OnTraffic(c gnet.Conn) gnet.Action {
}
// noopLogger implements gnet Logger interface but discards everything
type noopLogger struct{}
func (n noopLogger) Debugf(format string, args ...any) {}
func (n noopLogger) Infof(format string, args ...any) {}
func (n noopLogger) Warnf(format string, args ...any) {}
func (n noopLogger) Errorf(format string, args ...any) {}
func (n noopLogger) Fatalf(format string, args ...any) {}
// type noopLogger struct{}
//
// func (n noopLogger) Debugf(format string, args ...any) {}
// func (n noopLogger) Infof(format string, args ...any) {}
// func (n noopLogger) Warnf(format string, args ...any) {}
// func (n noopLogger) Errorf(format string, args ...any) {}
// func (n noopLogger) Fatalf(format string, args ...any) {}

View File

@ -1,4 +1,4 @@
// FILE: src/internal/sink/tcp_client.go
// FILE: logwisp/src/internal/sink/tcp_client.go
package sink
import (