5 years agograph: Align time-series before grouping them. master
Sebastian Harl [Mon, 1 Aug 2016 21:10:08 +0000 (23:10 +0200)]
graph: Align time-series before grouping them.

Previously, an error was returned if the inputs where not perfectly aligned.

5 years agoAdd support for variable root mount points.
Sebastian Harl [Sun, 24 Jan 2016 19:14:03 +0000 (20:14 +0100)]
Add support for variable root mount points.

That is, make it possible to serve the webUI from a different path than /.

6 years agograph: Sort group names after grouping to ensure consistent output.
Sebastian Harl [Thu, 14 May 2015 17:22:36 +0000 (19:22 +0200)]
graph: Sort group names after grouping to ensure consistent output.

6 years agographs: Determine GroupBy attributes automatically and use check boxes.
Sebastian Harl [Thu, 14 May 2015 16:56:40 +0000 (18:56 +0200)]
graphs: Determine GroupBy attributes automatically and use check boxes.

6 years agotemplates/graphs: Encode all parts of the image URL.
Sebastian Harl [Thu, 14 May 2015 16:32:03 +0000 (18:32 +0200)]
templates/graphs: Encode all parts of the image URL.

6 years agoserver: Add support for GroupBy in graphs.
Sebastian Harl [Thu, 14 May 2015 12:29:25 +0000 (14:29 +0200)]
server: Add support for GroupBy in graphs.

6 years agograph: Add support for grouping of metrics.
Sebastian Harl [Thu, 14 May 2015 12:14:45 +0000 (14:14 +0200)]
graph: Add support for grouping of metrics.

All time-series of a group will be added up to a single time-series.

6 years agograph: Use a (much) more verbose legend if there's more than one metric.
Sebastian Harl [Thu, 14 May 2015 10:50:08 +0000 (12:50 +0200)]
graph: Use a (much) more verbose legend if there's more than one metric.

Else, we'll just see, for example, a lot of different lines labeled "value"
when querying collectd metrics.

6 years agoAdd rudimentary support for dynamic graphs based on a metrics query.
Sebastian Harl [Thu, 14 May 2015 10:42:51 +0000 (12:42 +0200)]
Add rudimentary support for dynamic graphs based on a metrics query.

A new page now allows to query metrics using the simple query language of the
webUI. All returned metrics will be thrown into a single graph.

6 years agoserver/query: Factor out the query parser into a separate function.
Sebastian Harl [Wed, 13 May 2015 20:53:48 +0000 (22:53 +0200)]
server/query: Factor out the query parser into a separate function.

6 years agograph: Introduce a new type representing a metric.
Sebastian Harl [Wed, 13 May 2015 20:34:43 +0000 (22:34 +0200)]
graph: Introduce a new type representing a metric.

The new type allows to add further information to a metric.

6 years agoAdd a separate package for handling graphs and plots.
Sebastian Harl [Tue, 12 May 2015 21:13:01 +0000 (23:13 +0200)]
Add a separate package for handling graphs and plots.

For now, the package is a simple wrapper around It
supports graphing multiple metrics in the same graph (even though that's not
used by the server yet).

6 years agoConvert the code to the new client.Client interface.
Sebastian Harl [Tue, 12 May 2015 20:43:16 +0000 (22:43 +0200)]
Convert the code to the new client.Client interface.

Drop the custom query abstraction in favor of client.Query().

6 years agoMigrate to
Sebastian Harl [Sat, 25 Apr 2015 12:34:31 +0000 (14:34 +0200)]
Migrate to

This is the new, official fork of

6 years agoAdd support for host.<attribute> queries.
Sebastian Harl [Sat, 25 Apr 2015 11:59:40 +0000 (13:59 +0200)]
Add support for host.<attribute> queries.

6 years agoMerged branch 'master' of git://
Sebastian Harl [Fri, 17 Apr 2015 20:12:05 +0000 (22:12 +0200)]
Merged branch 'master' of git://

6 years agoLog the remote server version on startup.
Sebastian Harl [Sun, 22 Feb 2015 18:27:31 +0000 (19:27 +0100)]
Log the remote server version on startup.

6 years agoInclude the remote server version on the index page.
Sebastian Harl [Sun, 22 Feb 2015 18:25:26 +0000 (19:25 +0100)]
Include the remote server version on the index page.

6 years agoDon't try to display metric information after the query failed.
Sebastian Harl [Sat, 21 Feb 2015 23:20:32 +0000 (00:20 +0100)]
Don't try to display metric information after the query failed.

7 years agoAdded simple Travis-CI configuration file.
Sebastian Harl [Tue, 23 Dec 2014 12:04:25 +0000 (13:04 +0100)]
Added simple Travis-CI configuration file.

7 years agoUse the current username by default.
Sebastian Harl [Tue, 23 Dec 2014 12:03:27 +0000 (13:03 +0100)]
Use the current username by default.

7 years agoRemove query data from the URI path.
Sebastian Harl [Thu, 4 Dec 2014 21:35:54 +0000 (22:35 +0100)]
Remove query data from the URI path.

7 years agoAdded support for looking up other object types besides hosts.
Sebastian Harl [Wed, 26 Nov 2014 21:18:20 +0000 (22:18 +0100)]
Added support for looking up other object types besides hosts.

A query may now be prefixed with <type>: to chose a different type. The
default is still hosts.

7 years agoDon't return an HTTP error status if a handler fails.
Sebastian Harl [Wed, 26 Nov 2014 21:10:00 +0000 (22:10 +0100)]
Don't return an HTTP error status if a handler fails.

This might confuse browsers and, more importantly, now we re-populate the
query input field with the user's query in case it failed.

7 years agoUse the 'page' type in the error handler as well.
Sebastian Harl [Wed, 26 Nov 2014 21:03:31 +0000 (22:03 +0100)]
Use the 'page' type in the error handler as well.

7 years agoAdded a very simple query language for name or attribute based lookups.
Sebastian Harl [Wed, 26 Nov 2014 20:59:23 +0000 (21:59 +0100)]
Added a very simple query language for name or attribute based lookups.

This is a language suitable for simple queries using the lookup form. It
supports quoted and unquoted strings representing either regular expression
for object names or a colon-separated key/value pair for matching attribute

7 years agoMake a metric's graph's time-range configurable.
Sebastian Harl [Mon, 24 Nov 2014 08:57:23 +0000 (09:57 +0100)]
Make a metric's graph's time-range configurable.

7 years agoMake a graph's start and end times configurable.
Sebastian Harl [Sun, 23 Nov 2014 16:29:35 +0000 (17:29 +0100)]
Make a graph's start and end times configurable.

7 years agoImproved error reporting in graph(): correctly report bad requests.
Sebastian Harl [Sun, 23 Nov 2014 15:02:07 +0000 (16:02 +0100)]
Improved error reporting in graph(): correctly report bad requests.

7 years agoLet the query helper ensure that all string arguments are escaped.
Sebastian Harl [Sun, 23 Nov 2014 11:33:27 +0000 (12:33 +0100)]
Let the query helper ensure that all string arguments are escaped.

Introduce a new type, identifier, to be used for strings that shall never be
escaped, similar to how html/template treats the HTML, JS, etc. types. The
query helper now expects printf style format and value arguments.

7 years agoSplit server.go into server.go and query.go.
Sebastian Harl [Sat, 22 Nov 2014 14:24:44 +0000 (15:24 +0100)]
Split server.go into server.go and query.go.

7 years agoSimplified URL parsing and un-escape URIs.
Sebastian Harl [Sat, 22 Nov 2014 12:07:00 +0000 (13:07 +0100)]
Simplified URL parsing and un-escape URIs.

This avoids subsequent string-joins in various handlers and generally unifies
URL handling.

Also, it fixes handling of URLs containing (escaped) spaces.

7 years agoGive content generators more control over the generated page.
Sebastian Harl [Sat, 22 Nov 2014 11:20:18 +0000 (12:20 +0100)]
Give content generators more control over the generated page.

7 years agoShow graphs only if SysDB indicated that time-series are available.
Sebastian Harl [Sat, 22 Nov 2014 10:29:03 +0000 (11:29 +0100)]
Show graphs only if SysDB indicated that time-series are available.

7 years agoMake sure to break overly long "words" when displaying attribute values.
Sebastian Harl [Fri, 21 Nov 2014 22:54:53 +0000 (23:54 +0100)]
Make sure to break overly long "words" when displaying attribute values.

7 years agograph: Use a date string for x-axis tick markers.
Sebastian Harl [Fri, 21 Nov 2014 20:36:21 +0000 (21:36 +0100)]
graph: Use a date string for x-axis tick markers.

This is a very basic implementation which is not well suited for all time
ranges but it's good enough to get started.

7 years agoAdded support for simple SVG graphs for metrics.
Sebastian Harl [Fri, 21 Nov 2014 20:23:57 +0000 (21:23 +0100)]
Added support for simple SVG graphs for metrics.

The graph will be displayed when querying a metric. The graph itself mostly
uses default settings of the Plotinum package for now.

7 years agoserver: Make it easier to add special handlers.
Sebastian Harl [Fri, 21 Nov 2014 20:04:29 +0000 (21:04 +0100)]
server: Make it easier to add special handlers.

Currently, this is used for serving static content.

7 years agoMake sure to not use a client connection multiple times in parallel.
Sebastian Harl [Thu, 20 Nov 2014 22:35:27 +0000 (23:35 +0100)]
Make sure to not use a client connection multiple times in parallel.

That's not supported by the client at the moment. Instead, use multiple
connections. That's a bit of a hack but the server can easily handle many idle

7 years agoInitial commit of the SysDB web interface.
Sebastian Harl [Thu, 20 Nov 2014 22:19:18 +0000 (23:19 +0100)]
Initial commit of the SysDB web interface.

This is the initial version of a web-based client programm for querying SysDB
( For now, it supports browsing, querying, and displaying
basic information about hosts, services, and metrics.