Files
chipper/clients/go/chipper_client.go
T
2026-04-13 22:51:51 -04:00

41 lines
676 B
Go

package v1
import (
"fmt"
"net"
)
type Client struct {
conn *net.UnixConn
service string
source string
}
func NewClient(socketPath, service, source string) (*Client, error) {
addr := &net.UnixAddr{Name: socketPath, Net: "unixgram"}
conn, err := net.DialUnix("unixgram", nil, addr)
if err != nil {
return nil, err
}
return &Client{
conn: conn,
service: service,
source: source,
}, nil
}
func (c *Client) Log(level, msg string) error {
line := fmt.Sprintf(
"level=%s service=%s source=%s msg=\"%s\"",
level, c.service, c.source, msg,
)
_, err := c.conn.Write([]byte(line))
return err
}
func (c *Client) Close() error {
return c.conn.Close()
}