mirror of
https://github.com/linuxkit/linuxkit.git
synced 2025-11-13 18:19:45 +00:00
This fixes the error net.UnixAddr composite literal uses unkeyed fields Signed-off-by: David Scott <dave.scott@docker.com>
56 lines
896 B
Go
56 lines
896 B
Go
package main
|
|
|
|
import (
|
|
"bufio"
|
|
"flag"
|
|
"net"
|
|
"os"
|
|
)
|
|
|
|
const (
|
|
logDump byte = iota
|
|
logFollow
|
|
logDumpFollow
|
|
)
|
|
|
|
func main() {
|
|
var err error
|
|
|
|
var socketPath string
|
|
var follow bool
|
|
var dumpFollow bool
|
|
|
|
flag.StringVar(&socketPath, "socket", "/tmp/memlogdq.sock", "memlogd log query socket")
|
|
flag.BoolVar(&dumpFollow, "F", false, "dump log, then follow")
|
|
flag.BoolVar(&follow, "f", false, "follow log buffer")
|
|
flag.Parse()
|
|
|
|
addr := net.UnixAddr{
|
|
Name: socketPath,
|
|
Net: "unix",
|
|
}
|
|
conn, err := net.DialUnix("unix", nil, &addr)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
defer conn.Close()
|
|
|
|
var n int
|
|
switch {
|
|
case dumpFollow:
|
|
n, err = conn.Write([]byte{logDumpFollow})
|
|
case follow && !dumpFollow:
|
|
n, err = conn.Write([]byte{logFollow})
|
|
default:
|
|
n, err = conn.Write([]byte{logDump})
|
|
}
|
|
|
|
if err != nil || n < 1 {
|
|
panic(err)
|
|
}
|
|
|
|
r := bufio.NewReader(conn)
|
|
r.WriteTo(os.Stdout)
|
|
|
|
}
|