From 063db5971cb2f5fed479d7c6616c8d7a11d0c1d5 Mon Sep 17 00:00:00 2001 From: Robert Daniel Kortschak Date: Wed, 9 Jul 2014 12:14:27 +1000 Subject: [PATCH] go.tools/playground/socket: log connections and code snippet run requests This logs all successful handshakes and all requests to run code snippets; it is not immediately obvious how to limit this to non-localhost hosts, or to instances where publicly available playgrounds are allowed without resorting to addition of a new global. The level of noise on the log should not be too great. LGTM=adg R=adg CC=golang-codereviews https://golang.org/cl/112850043 --- playground/socket/socket.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/playground/socket/socket.go b/playground/socket/socket.go index 89dc532783..ae4b481c07 100644 --- a/playground/socket/socket.go +++ b/playground/socket/socket.go @@ -95,6 +95,7 @@ func handshake(c *websocket.Config, req *http.Request) error { log.Println("bad websocket origin:", o) return websocket.ErrBadWebSocketOrigin } + log.Println("accepting connection from:", req.RemoteAddr) return nil } @@ -136,6 +137,7 @@ func socketHandler(c *websocket.Conn) { case m := <-in: switch m.Kind { case "run": + log.Println("running snippet from:", c.Request().RemoteAddr) proc[m.Id].Kill() lOut := limiter(in, out) proc[m.Id] = startProcess(m.Id, m.Body, lOut, m.Options)