diff --git a/config.json b/config.json index e0ced5b..f93db37 100644 --- a/config.json +++ b/config.json @@ -4,6 +4,9 @@ "wait": "0.5s", "multiplier": 1, "retries": 3, + "influx_url": "http://localhost:8086", + "influx_user": "", + "influx_pass": "", "max_error": 0.4, "redis_url": "localhost:6379", "hosts": [ diff --git a/main.go b/main.go index e8a9df1..e4408e6 100644 --- a/main.go +++ b/main.go @@ -289,5 +289,21 @@ func main() { balancer := New() balancer.reloadConfig() + var err error + balancer.influxdb, err = influx.NewHTTPClient(influx.HTTPConfig{ + Addr: config.InfluxUrl, + Username: config.InfluxUser, + Password: config.InfluxPass, + }) + + _, err = http.Post(config.InfluxUrl+"/query", "application/x-www-form-urlencoded", strings.NewReader("q=CREATE DATABASE \"architeuthis\"")) + if err != nil { + panic(err) + } + + balancer.points = make(chan *influx.Point, InfluxDbBufferSize) + + go balancer.asyncWriter(balancer.points) + balancer.Run() } diff --git a/models.go b/models.go index 71843c6..14f94df 100644 --- a/models.go +++ b/models.go @@ -209,4 +209,7 @@ var config struct { Timeout time.Duration DefaultConfig *HostConfig Routing bool + InfluxUrl string `json:"influx_url"` + InfluxUser string `json:"influx_user"` + InfluxPass string `json:"influx_pass"` }