|
@@ -11,7 +11,10 @@ import (
|
|
|
"strconv"
|
|
|
"time"
|
|
|
|
|
|
+ "git.lattuga.net/boyska/circolog/formatter"
|
|
|
"github.com/gorilla/websocket"
|
|
|
+ "gopkg.in/mcuadros/go-syslog.v2/format"
|
|
|
+ "gopkg.in/mgo.v2/bson"
|
|
|
)
|
|
|
|
|
|
func main() {
|
|
@@ -28,6 +31,7 @@ func main() {
|
|
|
Path: "/ws",
|
|
|
}
|
|
|
q := u.Query()
|
|
|
+ q.Set("fmt", "bson")
|
|
|
if *backlogLimit >= 0 {
|
|
|
q.Set("l", strconv.Itoa(*backlogLimit))
|
|
|
}
|
|
@@ -58,12 +62,20 @@ func main() {
|
|
|
go func() {
|
|
|
defer close(done)
|
|
|
for {
|
|
|
- _, message, err := c.ReadMessage()
|
|
|
+ _, serialized, err := c.ReadMessage()
|
|
|
if err != nil {
|
|
|
log.Println("close:", err)
|
|
|
return
|
|
|
}
|
|
|
- fmt.Println(string(message))
|
|
|
+ var parsed format.LogParts
|
|
|
+ if err := bson.Unmarshal(serialized, &parsed); err != nil {
|
|
|
+ log.Println("invalid YAML", err)
|
|
|
+ continue
|
|
|
+ }
|
|
|
+ if err := formatter.WriteFormatted(os.Stdout, formatter.FormatSyslog, parsed); err != nil {
|
|
|
+ log.Println("error printing", err)
|
|
|
+ }
|
|
|
+ fmt.Println()
|
|
|
}
|
|
|
}()
|
|
|
|