[zedmon] Clean up logging; send to stderr
This is in preparation for stream-to-stdout support.
Change-Id: I09bbdec30e2362759a80c5fef152594b24265c3f
diff --git a/cmd/zedmon/common.go b/cmd/zedmon/common.go
index 2562aa4..6572f1a 100644
--- a/cmd/zedmon/common.go
+++ b/cmd/zedmon/common.go
@@ -33,6 +33,7 @@
"flag"
"fmt"
"io/ioutil"
+ "log"
"os"
"fuchsia.googlesource.com/zedmon"
@@ -40,6 +41,10 @@
var configFileName string
+func init() {
+ log.SetOutput(os.Stderr)
+}
+
func setCommonFlags(flags *flag.FlagSet) {
flags.StringVar(&configFileName, "config", "", "Config file.")
}
diff --git a/cmd/zedmon/gpio.go b/cmd/zedmon/gpio.go
index fc6ac48..8a041ab 100644
--- a/cmd/zedmon/gpio.go
+++ b/cmd/zedmon/gpio.go
@@ -31,7 +31,7 @@
import (
"context"
"flag"
- "fmt"
+ "log"
"strconv"
"fuchsia.googlesource.com/zedmon"
@@ -54,24 +54,24 @@
func (*gpioCmd) Execute(_ context.Context, f *flag.FlagSet, _ ...interface{}) subcommands.ExitStatus {
zedmon, err := zedmon.OpenZedmon(getConfig())
if err != nil {
- fmt.Printf("Can't open zendmon: %v", err)
+ log.Printf("Can't open zendmon: %v", err)
return subcommands.ExitFailure
}
defer zedmon.Close()
args := f.Args()
if len(args) != 2 {
- fmt.Println("Wrong number of arguments.")
+ log.Println("Wrong number of arguments.")
return subcommands.ExitUsageError
}
index, err := strconv.Atoi(args[0])
if err != nil {
- fmt.Printf("Can't parse index %s: %v", args[0], err)
+ log.Printf("Can't parse index %s: %v", args[0], err)
return subcommands.ExitUsageError
}
if !(0 <= index && index <= 254) {
- fmt.Printf("Index out of range: %v", index)
+ log.Printf("Index out of range: %v", index)
return subcommands.ExitUsageError
}
@@ -82,13 +82,13 @@
case "0":
state = false
default:
- fmt.Printf("Unknown state %s\n", args[1])
+ log.Printf("Unknown state %s", args[1])
return subcommands.ExitUsageError
}
err = zedmon.SetOuput(uint8(index+1), state)
if err != nil {
- fmt.Println(err.Error())
+ log.Println(err.Error())
return subcommands.ExitFailure
}
diff --git a/cmd/zedmon/list.go b/cmd/zedmon/list.go
index 6187837..ccceeeb 100644
--- a/cmd/zedmon/list.go
+++ b/cmd/zedmon/list.go
@@ -31,7 +31,7 @@
import (
"context"
"flag"
- "fmt"
+ "log"
"fuchsia.googlesource.com/zedmon"
"github.com/google/subcommands"
@@ -52,12 +52,12 @@
func (*listCmd) Execute(_ context.Context, f *flag.FlagSet, _ ...interface{}) subcommands.ExitStatus {
devs, err := zedmon.Enumerate()
if err != nil {
- fmt.Printf("Can't enumerate zendmon: %v", err)
+ log.Printf("Can't enumerate zendmon: %v", err)
return subcommands.ExitFailure
}
for _, dev := range devs {
- fmt.Printf("%s\n", dev.Serial)
+ log.Println(dev.Serial)
}
return subcommands.ExitSuccess
diff --git a/cmd/zedmon/record.go b/cmd/zedmon/record.go
index 06da362..240b5ce 100644
--- a/cmd/zedmon/record.go
+++ b/cmd/zedmon/record.go
@@ -32,7 +32,7 @@
"context"
"encoding/csv"
"flag"
- "fmt"
+ "log"
"os"
"os/signal"
"strconv"
@@ -57,24 +57,24 @@
func (*recordCmd) Execute(_ context.Context, _ *flag.FlagSet, _ ...interface{}) subcommands.ExitStatus {
zedmon, err := zedmon.OpenZedmon(getConfig())
if err != nil {
- fmt.Printf("Can't open zendmon: %v", err)
+ log.Printf("Can't open zendmon: %v", err)
return subcommands.ExitFailure
}
defer zedmon.Close()
f, err := os.OpenFile("zedmon.csv", os.O_CREATE|os.O_WRONLY|os.O_TRUNC, 0666)
if err != nil {
- fmt.Printf("Can't open zedmon.csv: %v", err)
+ log.Printf("Can't open zedmon.csv: %v", err)
return subcommands.ExitFailure
}
defer f.Close()
offset, delta, err := zedmon.GetTimeOffset()
if err != nil {
- fmt.Printf("Get time offset: %v", err)
+ log.Printf("Get time offset: %v", err)
return subcommands.ExitFailure
}
- fmt.Printf("Time offset: %dns ± %dns\n", offset.Nanoseconds(), delta.Nanoseconds())
+ log.Printf("Time offset: %dns ± %dns\n", offset.Nanoseconds(), delta.Nanoseconds())
termChan := make(chan os.Signal, 1)
signal.Notify(termChan, os.Interrupt)
@@ -82,14 +82,14 @@
writer := csv.NewWriter(f)
defer writer.Flush()
- fmt.Printf("Starting report recording. Send ^C to stop.\n")
+ log.Println("Starting report recording. Send ^C to stop.")
zedmon.EnableReporting()
RecordSampling:
for {
reports, err := zedmon.ReadReports()
if err != nil {
- fmt.Printf("Error reading reports: %v\n", err)
+ log.Printf("Error reading reports: %v", err)
continue
}
for _, report := range reports {
@@ -107,7 +107,7 @@
default:
}
}
- fmt.Printf("Stopping report recording.\n")
+ log.Println("Stopping report recording.")
return subcommands.ExitSuccess
}
diff --git a/cmd/zedmon/relay.go b/cmd/zedmon/relay.go
index 6133813..12c53f7 100644
--- a/cmd/zedmon/relay.go
+++ b/cmd/zedmon/relay.go
@@ -31,7 +31,7 @@
import (
"context"
"flag"
- "fmt"
+ "log"
"fuchsia.googlesource.com/zedmon"
"github.com/google/subcommands"
@@ -53,14 +53,14 @@
func (*relayCmd) Execute(_ context.Context, f *flag.FlagSet, _ ...interface{}) subcommands.ExitStatus {
zedmon, err := zedmon.OpenZedmon(getConfig())
if err != nil {
- fmt.Printf("Can't open zendmon: %v", err)
+ log.Printf("Can't open zendmon: %v", err)
return subcommands.ExitFailure
}
defer zedmon.Close()
args := f.Args()
if len(args) != 1 {
- fmt.Println("Wrong number of arguments.")
+ log.Println("Wrong number of arguments.")
return subcommands.ExitUsageError
}
@@ -71,13 +71,13 @@
case "off":
state = false
default:
- fmt.Printf("Unknown state %s\n", args[0])
+ log.Printf("Unknown state %s", args[0])
return subcommands.ExitUsageError
}
err = zedmon.SetOuput(0, state)
if err != nil {
- fmt.Println(err.Error())
+ log.Println(err.Error())
return subcommands.ExitFailure
}
diff --git a/lib/data_type.go b/lib/data_type.go
index c7b3e45..e1f34ad 100644
--- a/lib/data_type.go
+++ b/lib/data_type.go
@@ -84,6 +84,6 @@
err := binary.Read(r, binary.LittleEndian, &val)
return float64(val), err
default:
- return 0.0, fmt.Errorf("Can't decode type %d.", dt)
+ return 0.0, fmt.Errorf("Can't decode type %d", dt)
}
}
diff --git a/lib/zedmon.go b/lib/zedmon.go
index d520289..cf68a17 100644
--- a/lib/zedmon.go
+++ b/lib/zedmon.go
@@ -125,7 +125,7 @@
data[1] = 0x00
_, err := z.outEp.Write(data)
if err != nil {
- log.Printf("Sync Send Error: %v\n", err)
+ log.Printf("Sync send error: %v", err)
continue
}
buf := make([]byte, z.inEp.Desc.MaxPacketSize)
@@ -136,7 +136,7 @@
if usbErr, ok := err.(gousb.TransferStatus); ok && usbErr == gousb.TransferTimedOut {
continue
}
- log.Printf("Sync Read Error: %v\n", err)
+ log.Printf("Sync read error: %v", err)
}
}
@@ -151,12 +151,12 @@
start := time.Now()
_, err := z.outEp.Write(data)
if err != nil {
- log.Printf("Sync Send Error: %v\n", err)
+ log.Printf("Sync Send Error: %v", err)
return 0, 0, err
}
buf := z.read()
if buf == nil {
- return 0, 0, fmt.Errorf("Can't read packet\n")
+ return 0, 0, fmt.Errorf("Can't read packet")
}
end := time.Now()
reader := bytes.NewReader(buf[1:])
@@ -271,7 +271,7 @@
// Returns: offset after this field, error
func (z *Zedmon) getFormatReport(index uint, offset *int) (bool, error) {
if index >= 0xff {
- return false, fmt.Errorf("Index %d out of range.", index)
+ return false, fmt.Errorf("Index %d out of range", index)
}
data := make([]byte, 2)
@@ -295,7 +295,7 @@
dataType := DataType(packet.ValueType)
if dataType.Size() < 0 {
- return false, fmt.Errorf("Can't handle Value type %d.", dataType)
+ return false, fmt.Errorf("Can't handle Value type %d", dataType)
}
// TODO: validate Unit
@@ -335,7 +335,7 @@
}
}
}
- return 0, 0, 0, fmt.Errorf("Can't find zedmon interface.")
+ return 0, 0, 0, fmt.Errorf("Can't find zedmon interface")
}
func (z *Zedmon) enumerateFields() error {