Commit Graph

23 Commits (a0ba9200463bb0e3b30c936efe7b5da328d3d7bc)

Author SHA1 Message Date
Chris Goller 439a4d32e8 Add insecureSkipVerify option to source to accept all influxdb certs
The insecureSkipVerify defaults to false, but when true, instructs
the server to accept any certificate coming from the InfluxDB server.
2017-01-04 19:35:07 -06:00
Tim Raymond c1effd7f47 Improve error messages through proxy
Previously, the proxy would only report the error code it received from
an InfluxDB instance. This also passes the error message returned by
InfluxDB through, so it appears in the Chronograf server logs as well as
in the response returned to the frontend by the proxy (making it visible
by inspecting the request in the network tab).
2016-12-13 11:59:26 -05:00
Chris Goller 07ffedc058 Fix logger panic and put logging of queries into debug 2016-11-12 17:48:49 -06:00
gunnaraasen 39d21014dc Add usage stats reporting 2016-10-28 14:34:55 -07:00
Chris Goller d1359c09b3 Refactor to remove autogenerated code. 2016-10-26 22:10:52 -05:00
Chris Goller 91eec23099 Update name to chronograf 2016-10-20 09:39:40 -05:00
Tim Raymond 964ba68f39 Reorg logging package
This moves the logger interface into the root package and makes the log
subpackage specific to logrus. Also this makes the Logger interface type
also return other Loggers, such that we can completely encapsulate
logrus.Loggers.
2016-10-03 12:30:43 -04:00
Tim Raymond 62a3ae9197 Add logrus for structured logging
This adds the logrus package to facilitate structured logging. Logrus is
encapsulated in the log/ subpackage and currently used in the influx/
subpackage.
2016-10-03 12:30:43 -04:00
Chris Goller 7d95840956 Fix panic when influx client receives error status code 2016-09-30 10:31:20 -05:00
Chris Goller 5ce883f0fc Update sources take multiple URLs for future load-balancing 2016-09-29 18:07:54 -05:00
Chris Goller 283833afb1 Add interface and mock for sources 2016-09-29 17:09:22 -05:00
Chris Goller d56513c8fe Update test to use channels to prevent race.
Signed-off-by: Nathaniel Cook <nvcook42@gmail.com>
2016-09-22 14:15:46 -07:00
Chris Goller e029d0c16a Update influx to remove the v2 client and use our own.
Signed-off-by: Gunnar Aasen <gunnar+github@gunnar.me>
2016-09-21 17:58:46 -07:00
Chris Goller 2b17378e76 Update Database to be DB 2016-09-21 15:11:29 -07:00
Chris Goller 113fa01323 Add simple influx backend through cli option. 2016-09-21 15:03:07 -07:00
Chris Goller 688ebe8167 Update database and rp to use default parameters 2016-09-21 09:53:36 -07:00
Chris Goller 0a5330327f Update query interface to take database and rp 2016-09-21 09:53:36 -07:00
Tim Raymond aacc6180d3 Rework domain errs to be strings
At @goller's recommendation, we're following @benbjohnson's advice laid
out here: https://github.com/benbjohnson/wtf/blob/master/errors.go and
moving errors to the top level package. This cleaned up some ugliness in
the tests where we needed to type assert.
2016-09-19 10:12:52 -04:00
Tim Raymond 536fa7de8f Update influx package to support MonitoredServices
The Timeseries interface was updated to include MonitoredServices as
part of its spec. This adds a stub implementation of that.
2016-09-16 12:11:28 -04:00
Tim Raymond d3da914994 Add timeout error for influx
This adds a type to be returned when requests to InfluxDB were cancelled
or timed out.
2016-09-15 15:08:25 -04:00
Tim Raymond a8291c602c Add coverage for bad hostnames and cancellation
The case where users passed bad hostnames to create new influx clients
was untested as well as the cancellation logic.
2016-09-15 14:01:53 -04:00
Tim Raymond e7562c298f Supprt for cancelling in-flight influx requests
If a request upstream is cancelled, we can propagate the cancellation
down to our queries to Influx using context's cancellation
functionality. This patch adds support for this.
2016-09-15 13:42:56 -04:00
Tim Raymond 2841364ec4 Add influx client
This adds a simple HTTP influx client to fetch time series results. It
implements the TimeSeries interface. Also included is an implementation
of the mrfusion.Results interface that wraps results returned from the
influx client.

We only support HTTP connections (there's also a UDP influx client). We
also require that all Queries to Influx be fully-qualified--they should
include the database and retention policies in the query.

This also makes Resuls a json.Marshaler. In order to hand results back
to clients, we need to guarantee that those results can be serialized to
json in some form. json.Marshaller is just such a guarantee!
2016-09-14 13:46:43 -04:00