share/collection.conf: Add graphs for the ping plugin.
Add URL of the project homepage.
src/utils_search.c: Safeguard against NULL-pointer errors.
src/graph_ident.c: ident_data_to_json: Average data points ...
... to send between 400 and 800 values. This reduces the time taken to
receive the values sent by the "instance_data_json" action considerably.
We should, however, do this in the data provider function or possibly in
the "instance_data_json" action. Also supporting other CFs would be a
wise move and while we're scanning the data we might compute total
average, minimum and maximum as well.
... to send between 400 and 800 values. This reduces the time taken to
receive the values sent by the "instance_data_json" action considerably.
We should, however, do this in the data provider function or possibly in
the "instance_data_json" action. Also supporting other CFs would be a
wise move and while we're scanning the data we might compute total
average, minimum and maximum as well.
Rename the "graph_data_json" action to "instance_data_json".
Fix compiler warnings.
README: Remove the "change default action" todo.
src/main.c: Change the default action to "list_graphs".
show_instance action: Add a selector for JSON vs. RRD presentation.
share/collection.js: Code cleanup.
src/action_show_instance.c: Fix compiler warning.
show_instance action: Switch to JavaScript-based drawing by default.
show_instance action: Fix the time arguments.
src/graph_ident.c: ident_data_to_json: Include the file name.
show_instance action: Export graph and instance data in a more structured fashion.
src/graph.c: Fix NULL-pointer dereference.
show_instance action: Add a very simple first scetch of a JavaScript based graphing solution.
src/graph_ident.c: Remove an unnecessary pair of brackets.
README: Document the licenses of the JavaScript libraries.
share/Makefile.am: Include new JavaScript files.
list_graphs action: Avoid linebreak in "42 instances".
share/: Import the "Raphaël" and "gRaphaël" JavaScript libraries.
README: New section "Dependencies".
README: Add more future plans.
src/dp_rrdtool.c: Actually do handle the config option.
AUTHORS: Filled with initial comment.
show_instance action: Add links to the JSON representation.
src/graph_def.c: Check for NULL pointers when printing strings.
src/graph_instance.c: Check return value of "def_get_rrdargs".
README: Document data providers and the license.
src/common.c: Fix "ds_list_from_rrd_file".
graph_{data,def}_json actions: Don't destroy the graph_config_t object.
src/graph_ident.c: Fix generation of JSON data.
src/dp_rrdtool.c: Check for "ds[].type" rather than "ds[].index".
src/graph_ident.c: Fix minor issues.
src/dp_rrdtool.c: Cleanups.
graph_data_json action: Implemented action to query graph data via JSON.
src/graph_instance.[ch]: Implement "inst_data_to_json".
src/graph_ident.[ch]: Implement "ident_data_to_json".
src/dp_rrdtool.c: Adapt to new callback prototype.
src/data_provider.[ch]: Implement "data_provider_get_ident_ds_names".
src/data_provider.[ch]: Implement "data_provider_get_ident_data".
src/data_provider.[ch]: Move privider handling functions to a central place.
graph_def_json action: Use "graph_def_to_json" rather than "def_to_json".
src/graph_def.c: Minor fixes.
src/graph.[ch]: Implement "graph_def_to_json".
graph_def_json action: Add action to request graph defs as JSON.
src/graph_def.[ch]: Implement "def_to_json".
src/graph_list.c: Remove an annoying debugging message.
share/collection.conf: Swap free and used areas of the "df" graph.
src/utils_cgi.c: Fix format error.
src/graph_list.[ch]: Use the data provider to read a list of files.
Add stub for config handling wrt. data providers.
src/dp_rrdtool.c: Implement "get_ident_data" callback.
src/dp_rrdtool.c: Implement "get_ident_ds_names".
src/dp_rrdtool.c: Implement basic RRDtool data provider.
src/graph_list.[ch]: Implement "gl_register_data_provider" dummy function.
src/graph_list.[ch]: Implement a stub for "gl_register_ident".
src/filesystem.[ch]: Make directory walking functions public.
src/graph_list.c: Clear instances (again) before scanning the file system.
src/utils_cgi.c: Import a list of reserved characters from RFC 3986.
src/graph_instance.c: Properly escape parameters.
"show instance" action: Don't free "inst".
src/utils_cgi.c: Implement "uri_escape_buffer".
"show graph" action: Actively query the selected instance.
"show instance" action: Add link to current host.
src/utils_search.[ch]: Implement "search_from_ident".
"list graphs" action: Add link to display dynamic graphs, too.
"list graphs" action: List only configured graphs by default.
src/graph_list.c: Add some diagnostic output.
src/main.c: Flush and close STDOUT before calling gl_update().
This hopefully signals the browser that the request is done
before doing the maintenance work.
This hopefully signals the browser that the request is done
before doing the maintenance work.
src/graph_list.c: Only write the cache after processing a request.
src/graph_list.c: Supply create mode to open(2).
Merge remote branch 'origin/master'
Conflicts:
src/main.c
Conflicts:
src/main.c
src/graph_def.c: Only replace the ALL token.
Remove call to "gl_update()" from various actions.
It's now handled in src/main.c
It's now handled in src/main.c
src/graph_list.[ch]: Fix parsing the JSON cache.
src/graph_list.[ch]: Fix parsing the JSON cache.
src/graph_list.c: A first take at a JSON parser for reading back the cache file.
It's UNTESTED!
It's UNTESTED!
src/graph.[ch]: Implement "graph_add_inst".
"show_graph_json" action: Use the callback interface of yajl.
src/graph_list.c: First take at writing the graph list to disk.
Fix printing of JSON values.
"show_graph_json" action: Update for the new interface.
src/graph.[ch]: Implement "graph_to_json".
src/graph_instance.[ch]: Implement "inst_to_json".
src/graph_ident.[ch]: Generate JSON data using libyajl.
configure.ac: Check for yajl.
share/collection.conf: Demonstrate the new functionality with "mysql_command" graphs.
src/graph_def.c: Add error messages to "def_create".
src/graph_def.c: Make it possible for one "DEF" to handle multiple files correctly.
src/graph_def.c: Use "ident_describe" to generate a legend entry …
… if no legend has been specified. Using the DS name here isn't as good
since often many files of the same type are grouped together.
… if no legend has been specified. Using the DS name here isn't as good
since often many files of the same type are grouped together.
src/graph_instance.c: inst_describe: Use the new "ident_describe" function.
src/graph_ident.[ch]: Implement "ident_describe".
share/collection.conf: Make the disk graphs more generic.
By removing the "disk" plugin name. Other plugins, for example the
NetApp plugin, create such graphs, too.
By removing the "disk" plugin name. Other plugins, for example the
NetApp plugin, create such graphs, too.
share/collection.conf: Add a couple more generic graphs.
"search" action: Use the new search infrastructure.
src/graph.c: Fix "graph_search_inst".
Checking if a graph selector intersects with the search selector is not
sufficient, because the instance may introduce a contradiction.
The "graph_search_inst_noselector" has been introduced to simplify the
(probably common) case of no search selector being present.
Checking if a graph selector intersects with the search selector is not
sufficient, because the instance may introduce a contradiction.
The "graph_search_inst_noselector" has been introduced to simplify the
(probably common) case of no search selector being present.
src/graph_list.c: Only call "graph_ident_intersect" if the search has an ident.
src/utils_search.[ch]: Implement "search_has_selector".