14 func errorLogf(f string, args ...interface{}) {
15 log.Print(`{"error":`, string(mustMarshal(fmt.Sprintf(f, args...))), `}`)
18 var debugLogf = func(f string, args ...interface{}) {
19 log.Print(`{"debug":`, string(mustMarshal(fmt.Sprintf(f, args...))), `}`)
22 func mustMarshal(v interface{}) []byte {
23 buf, err := json.Marshal(v)
30 func logj(args ...interface{}) {
31 m := map[string]interface{}{"Time": time.Now().UTC()}
32 for i := 0; i < len(args)-1; i += 2 {
33 m[fmt.Sprintf("%s", args[i])] = args[i+1]
35 buf, err := json.Marshal(m)
37 errorLogf("logj: %s", err)
40 log.Print(string(buf))