aboutsummaryrefslogtreecommitdiffstats
path: root/http
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2020-01-11 22:14:25 +0100
committerMartin Polden <mpolden@mpolden.no>2020-01-11 22:14:25 +0100
commit5b6af76040cd6d17972522629605f20aeeaa4076 (patch)
tree331d092649008ffac550ca2a1acec3b81176a497 /http
parentd403f0b1f605fe05cdd1e9d58618b0815f95000e (diff)
Simplify logger configuration
Diffstat (limited to 'http')
-rw-r--r--http/http.go20
-rw-r--r--http/http_test.go12
2 files changed, 14 insertions, 18 deletions
diff --git a/http/http.go b/http/http.go
index 3887f9b..3b41eff 100644
--- a/http/http.go
+++ b/http/http.go
@@ -17,10 +17,9 @@ import (
// A Server defines paramaters for running an HTTP server. The HTTP server serves an API for inspecting cache contents
// and request log.
type Server struct {
- cache *cache.Cache
- logger *log.Logger
- sqlLogger *sql.Logger
- server *http.Server
+ cache *cache.Cache
+ logger *sql.Logger
+ server *http.Server
}
type entry struct {
@@ -41,13 +40,12 @@ type httpError struct {
}
// NewServer creates a new HTTP server, serving logs from the given logger and listening on addr.
-func NewServer(cache *cache.Cache, sqlLogger *sql.Logger, logger *log.Logger, addr string) *Server {
+func NewServer(cache *cache.Cache, logger *sql.Logger, addr string) *Server {
server := &http.Server{Addr: addr}
s := &Server{
- cache: cache,
- logger: logger,
- sqlLogger: sqlLogger,
- server: server,
+ cache: cache,
+ logger: logger,
+ server: server,
}
s.server.Handler = s.handler()
return s
@@ -97,7 +95,7 @@ func (s *Server) cacheResetHandler(w http.ResponseWriter, r *http.Request) (inte
}
func (s *Server) logHandler(w http.ResponseWriter, r *http.Request) (interface{}, *httpError) {
- logEntries, err := s.sqlLogger.Get(listCountFrom(r))
+ logEntries, err := s.logger.Get(listCountFrom(r))
if err != nil {
return nil, &httpError{
err: err,
@@ -124,7 +122,7 @@ func (s *Server) Close() error { return s.server.Shutdown(context.TODO()) }
// ListenAndServe starts the HTTP server listening on the configured address.
func (s *Server) ListenAndServe() error {
- s.logger.Printf("http server listening on http://%s", s.server.Addr)
+ log.Printf("http server listening on http://%s", s.server.Addr)
err := s.server.ListenAndServe()
if err == http.ErrServerClosed {
return nil // Do not treat server closing as an error
diff --git a/http/http_test.go b/http/http_test.go
index fa39549..7cd5a9c 100644
--- a/http/http_test.go
+++ b/http/http_test.go
@@ -2,7 +2,6 @@ package http
import (
"io/ioutil"
- "log"
"net"
"net/http"
"net/http/httptest"
@@ -35,10 +34,9 @@ func testServer() (*httptest.Server, *Server) {
if err != nil {
panic(err)
}
- stdLogger := log.New(ioutil.Discard, "", 0)
- logger := sql.NewLogger(db, sql.LogAll, 0, stdLogger)
+ logger := sql.NewLogger(db, sql.LogAll, 0)
cache := cache.New(10, nil)
- server := Server{logger: stdLogger, sqlLogger: logger, cache: cache}
+ server := Server{logger: logger, cache: cache}
return httptest.NewServer(server.handler()), &server
}
@@ -79,9 +77,9 @@ func httpDelete(url, body string) (*http.Response, string, error) {
func TestRequests(t *testing.T) {
httpSrv, srv := testServer()
defer httpSrv.Close()
- srv.sqlLogger.Record(net.IPv4(127, 0, 0, 42), false, 1, "example.com.", "192.0.2.100", "192.0.2.101")
- srv.sqlLogger.Record(net.IPv4(127, 0, 0, 254), true, 28, "example.com.", "2001:db8::1")
- srv.sqlLogger.Close() // Flush
+ srv.logger.Record(net.IPv4(127, 0, 0, 42), false, 1, "example.com.", "192.0.2.100", "192.0.2.101")
+ srv.logger.Record(net.IPv4(127, 0, 0, 254), true, 28, "example.com.", "2001:db8::1")
+ srv.logger.Close() // Flush
srv.cache.Set(1, newA("1.example.com.", 60, net.IPv4(192, 0, 2, 200)))
srv.cache.Set(2, newA("2.example.com.", 30, net.IPv4(192, 0, 2, 201)))