Code

graph: Align time-series before grouping them.
[sysdb/webui.git] / main.go
diff --git a/main.go b/main.go
index 20bb7322b10beb6dd94b849c1a0c26f7b802581f..699651c744ee7890c64f80bec32d296edc3e9e00 100644 (file)
--- a/main.go
+++ b/main.go
@@ -32,44 +32,49 @@ import (
        "log"
        "net/http"
        "os"
+       "os/user"
 
-       "github.com/sysdb/go/client"
        "github.com/sysdb/webui/server"
 )
 
 var (
-       addr = flag.String("address", "/var/run/sysdbd.sock", "SysDB server address")
-       user = flag.String("user", "sysdb", "SysDB user name")
+       addr     = flag.String("address", "/var/run/sysdbd.sock", "SysDB server address")
+       username *string
 
        listen = flag.String("listen", ":8080", "address to listen for incoming connections")
        tmpl   = flag.String("template-path", "templates", "location of template files")
        static = flag.String("static-path", "static", "location of static files")
+
+       root = flag.String("root", "/", "root mount point of the server")
 )
 
+func init() {
+       u, err := user.Current()
+       var def string
+       if err != nil {
+               log.Printf("WARNING: Unable to determine current user: %v", err)
+       } else {
+               def = u.Username
+       }
+
+       username = flag.String("user", def, "SysDB user name")
+}
+
 func main() {
        flag.Parse()
 
        log.Printf("Connecting to SysDB at %s.", *addr)
-       var conns []*client.Conn
-       for i := 0; i < 10; i++ {
-               conn, err := client.Connect(*addr, *user)
-               if err != nil {
-                       fatalf("Failed to connect to SysDB at %q: %v", *addr, err)
-               }
-               conns = append(conns, conn)
-       }
-
-       srv, err := server.New(server.Config{
-               Conns:        conns,
+       srv, err := server.New(*addr, *username, server.Config{
                TemplatePath: *tmpl,
                StaticPath:   *static,
+               Root:         *root,
        })
        if err != nil {
                fatalf("Failed to construct web-server: %v", err)
        }
 
        log.Printf("Listening on %s.", *listen)
-       http.Handle("/", srv)
+       http.Handle(*root, srv)
        err = http.ListenAndServe(*listen, nil)
        if err != nil {
                fatalf("Failed to set up HTTP server on address %q: %v", *listen, err)