Skip to content


Subversion checkout URL

You can clone with
Download ZIP

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
Commits on Jan 14, 2013
@p-goetz p-goetz added possibility to add annotations to graphs (#16) 56baffd
@p-goetz p-goetz added possibility to add annotations to graphs (#16), now with Annota…
…tino classes
@p-goetz p-goetz added annotation classes to d791a8b
@p-goetz p-goetz added annotation table in create_table and put functionality for anno…
@p-goetz p-goetz formatted code cadea22
Commits on Jan 17, 2013
@p-goetz p-goetz Revert "formatted code"
This reverts commit ee682a1.
@p-goetz p-goetz formatted relevant code 3fd7dfd
@p-goetz p-goetz refactored metrics form tag edit elements
introduced class TagsPanel to encapsulate the form elements and logic
for manipulating tags as a preparation to reuse the panel for the
annotations tags manipulation
@p-goetz p-goetz introduced AnnotationsForm to manipulate the tags that should be used…
… as filter for annotations
@p-goetz p-goetz added query build to AnnotationsForm
added query build to AnnotationsForm
implemented tag retrieval in TagsPanel
@p-goetz p-goetz changed TagsPanel#getTags() to allow for duplicate keys and added log…
…ic to create graph from separate query parameters

getTags() now returns a String[][] with tag keys and values.
added query parameter "a" to define tag filters for annotations
@p-goetz p-goetz removed 'tsdb-annotation' table to store annotation values
annotations are now being stored in the 'tsdb' table together with
metric values.
@p-goetz p-goetz implemented UI changes to define arithmetic expressions
added an extra text field with auto-suggest functionality for
arithmetic expressions; the auto-suggest works with already selected
metrics from the metrics form
@p-goetz p-goetz added ANTLR grammatic and calculator class to interpret arithmetic ex…

the parser/lexer/tree walker are generated by ANTLR at build time, so
they are not checked in
@p-goetz p-goetz added ID to query to be able to identify a query object uniquely afte…
…r is has been created

this identification is needed for the arithmetic expressions to map
query results to operators in an arithmetic expression
@p-goetz p-goetz refactored GraphHandler to be more readable and consistent and to sup…
…port the plotting of arithmetic expression results

introduction of several small helper methods to get doGraph() small
enough to be readable
@p-goetz p-goetz fixed NPE in ArithmeticExpressionCalculator: empty expressions are ig…
@p-goetz p-goetz removed 'tsdb-annotation' table from "" script 6b88964
@p-goetz p-goetz removed NPE in GWT code when working with the JSON result for a query…
… (possibly a consequence of the annotations being stored inside the 'tsdb' table)
@p-goetz p-goetz fixed NPE in GraphHandler for missing "e" URL parameter
when the "e" URL parameter is not being added to the URL (e.g. for legacy graph URLs), then a NullPointerException occured. This has been fixed.
@p-goetz p-goetz Fixed division by zero problem in ArithmeticExpressionCalculator 2181756
@p-goetz p-goetz refresh graph on blur event in arithmetic expressions text box and su…
…pport multiple formulas (again on blur).
@p-goetz p-goetz added possibility to hide metric graphs when using arithmetic express…
@p-goetz p-goetz added function rules to ANTLR grammar files
functions can be expressed in the following form:, param2, paramN) and can occur anywhere in the expression as a factor. The parameters can be single metrics, but also complex expressions themselves.
@p-goetz p-goetz forgot to add FunctionNode class that holds information about a funct…
…ion and its parameters in the expression tree
@p-goetz p-goetz added initialization of FunctionCalculator objects to ArithmeticExpre…

function calculator classes can be added by a new command line argument --fncalculators, which takes a comma-separated list of calculator definitions as input. Each definition consists of a function name and a class name, separated by ":". The FunctionCalculators will then be initialized via reflection, therefore a default constructor is mandatory.
@p-goetz p-goetz introduced TimestampValues to hold a list of TimestampValue instances…
… and defined interface method calculate in FunctionCalculator
@p-goetz p-goetz bugfix: function node was not handled correctly by the expression cal…

renamed TestFunctionCalculator to DoubleFunctionCalculator
@p-goetz p-goetz fixed source layout 2481337
@p-goetz p-goetz fixed NPE in MetricNode
while preparing the MetricNode TimestampValues there was an NPE when there were no datapoints existing. This has been fixed.
@p-goetz p-goetz fixed auto-suggest for arithmetic expressions
arithmetic expressions get auto-suggestions including metrics and functions.
@p-goetz p-goetz Fixed errors in ANTLR grammar b7198b4
@p-goetz p-goetz remove invalid formulas after metric removal 5275492
@p-goetz p-goetz changed ANTLR grammar to accept wildcard '*' in identifier (e.g. used…
… in tag values)
@p-goetz p-goetz changed ANTLR grammar to accept wildcard '*' in identifier (e.g. used…
… in tag values)
@p-goetz p-goetz added tab indentation in for ANTLR to execute the download…
… command
@p-goetz p-goetz added ANTLR compile to 13f62f0
@p-goetz p-goetz fixed bug "net.opentsdb.uid.NoSuchUniqueName: No such name for 'metri…
…cs': 'timelineannotation'"

Check if there are already annotations present in hbase before trying to query them.
@p-goetz p-goetz fixed timestamp offset bug for annotations
annotation timestamps did only use their base_time (from the hbase key) but not the delta (from the hbase qualifier). Plus the timestamps had to be "translated" to the local time zone.
@p-goetz p-goetz split wildcard metrics used in arithmetic expressions in their separa…
…te timelines
@p-goetz p-goetz fixed faulty annotation timeline merge 8a7678b
@p-goetz p-goetz fixed incorrect labels for arithmetic expression results of grouped m…
Commits on Jan 18, 2013
@p-goetz p-goetz added support for literal nodes in arithmetic expressions (e.g. "2.5 …
…* <metric>")
@p-goetz p-goetz Issue #11: fixed NPE for ASCII Queries d1f032d
@p-goetz p-goetz removed surrounding quotation marks ("") from metric names in arithme…
…tic expressions
@p-goetz p-goetz Issue #10: fixed JSON error when returning an empty result set. c726c8b
@bsjaekel bsjaekel remove merge marker 9c10e5b
@bsjaekel bsjaekel fix antlr download url 457b418
@bsjaekel bsjaekel build fixes 79accca
@bsjaekel bsjaekel fix missing stuff from metric form 14c1b79
Commits on Jan 24, 2013
@bsjaekel bsjaekel moved to gradle 6ad2d1f