Fork me on Github

2014-11-17: Version 0.6.0

This release focuses on a clearer query language. The underlying architecture has been refactored to allow for more powerful and generic expressions.

  • core:

    • Added support for arrays. Elements may be of any other supported data-type but only integers, decimals, and strings are fully supported.

  • store:

    • Refactored matchers: all matchers now operate on one or two expressions or other matchers, replacing the old and less flexible conditional matchers.

    • Attribute values may now be used anywhere in an expression.

    • On data-type mismatch when comparing attribute values, the values will be cast to string (previously only done for regex matches).

    • Added support for querying an object’s backends (array of strings).

    • Added support for iterating child objects and array values.

    • All matchers now return false if any operand is NULL (except for IS NULL).

    • All operations now return NULL if any operand is NULL.

    • Fixed behavior of not-operators (!=, !~) and let them not match if any of the operands is NULL.

    • Add support for looking up all object types (hosts, services, metrics).

    • Refactored the JSON formatter to be more flexible and powerful.

    • Record parent objects for each stored object.

  • frontend:

    • Added a separate parser mode for expressions.

    • Added a new queryable field name to be used in place of the rather magical keyword host when looking up hosts.

    • Improved error reporting in the parser and the (newly introduced) analyzer.

    • Apply filters to hosts in the FETCH command.

  • query language:

    • All operators may now be used in all places if the involved data-types support the respective operation. For example, regular expressions may be used to match any value. Non-string values are cast to strings for that purpose. IS NULL / IS NOT NULL may be applied to arbitrary expressions.

    • Introduced the IN operator to check if a value or an array of values is included in an array.

    • Added support for arrays: [<elem1>,<elem2>,…]

    • Added support for string and array concatenation using the || operator.

    • Attribute names have to be strings instead of identifiers now.

    • Access object fields using <field> rather than .<field>.

    • Let the LOOKUP and FETCH commands support services and metrics.

    • Introduced FETCH service|metric <host>.<name for fetching services and metrics.

    • Added support for ANY and ALL operators which apply a matcher to each value emitted by an iterator (a host’s services and metrics or arrays). MATCHING ANY service|metric|attribute <cmp> <expr> replaces MATCHING service|metric|attribute <cmp> <value> expressions.

Latest Releases:

» 0.8.0 — 2016-02-25
» 0.7.0 — 2015-02-21
» 0.6.0 — 2014-11-17

[feed]  RSS | Atom

 

 

 

   

 

Imprint | Github | Google+ (Community) | Twitter | Facebook