diff options
Diffstat (limited to 'v3/glougloud/glougloud.c')
-rw-r--r-- | v3/glougloud/glougloud.c | 39 |
1 files changed, 20 insertions, 19 deletions
diff --git a/v3/glougloud/glougloud.c b/v3/glougloud/glougloud.c index b1e582d..07628fb 100644 --- a/v3/glougloud/glougloud.c +++ b/v3/glougloud/glougloud.c @@ -40,41 +40,42 @@ main(int argc, char **argv) struct glougloud *ggd; int op; - ggd = xcalloc(1, struct glougloud); + ggd = xcalloc(1, sizeof(struct glougloud)); - addr_aton("127.0.0.1", &ggd->sp_ip); - addr_aton("127.0.0.1", &ggd->sv_ip); - ggd->sp_port = GLOUGLOU_PROBE_DEFAULT_PORT; - ggd->sv_port = GLOUGLOU_VIZ_DEFAULT_PORT; + addr_aton("127.0.0.1", &ggd->probes.serv_ip); + addr_aton("127.0.0.1", &ggd->viz.serv_ip); + ggd->probes.serv_port = GLOUGLOU_PROBE_DEFAULT_PORT; + ggd->viz.serv_port = GLOUGLOU_VIZ_DEFAULT_PORT; ggd->daemonize = 1; ggd->logfile = GLOUGLOUD_LOGFILE; ggd->loglevel = LOG_WARN; + ggd->redis.socket = "/tmp/glougloud_redis.sock"; while ((op = getopt(argc, argv, "Dhl:L:p:P:v")) != -1) { switch (op) { case 'D': - logfile = NULL; - daemonize = 0; + ggd->logfile = NULL; + ggd->daemonize = 0; break; case 'h': usage(); /* NOTREACHED */ case 'l': - if (addr_aton(optarg, &sp_ip) < 0) + if (addr_aton(optarg, &ggd->probes.serv_ip) < 0) err(1, "invalid probes server ip"); break; case 'L': - if (addr_aton(optarg, &sv_ip) < 0) + if (addr_aton(optarg, &ggd->viz.serv_ip) < 0) err(1, "invalid vizualisation server ip"); break; case 'p': - sp_port = atoi(optarg); + ggd->probes.serv_port = atoi(optarg); break; case 'P': - sv_port = atoi(optarg); + ggd->viz.serv_port = atoi(optarg); break; case 'v': - loglevel++; + ggd->loglevel++; break; default: usage(); @@ -84,7 +85,7 @@ main(int argc, char **argv) if (geteuid() != 0) errx(1, "must be root"); - log_init(logfile, loglevel); + log_init(ggd->logfile, ggd->loglevel); log_warn("glougloud startup"); ev_base = event_base_new(); @@ -100,15 +101,15 @@ main(int argc, char **argv) if (redis_init(ggd) < 0) log_fatal("init redis failed"); - if (probes_init(ggd, &sp_ip, sp_port) < 0) + if (probes_init(ggd) < 0) log_fatal("init probes failed"); - if (viz_init(ggd, &sv_ip, sv_port) < 0) + if (viz_init(ggd) < 0) log_fatal("init viz failed"); - if (daemonize) { - pid = fork(); - log_info("daemonized, pid %d", pid); - if (pid > 0) + if (ggd->daemonize) { + ggd->pid = fork(); + log_info("daemonized, pid %d", ggd->pid); + if (ggd->pid > 0) return 0; } |