Class: Opentsdb::QueryParser
- Inherits:
-
Object
- Object
- Opentsdb::QueryParser
- Defined in:
- lib/opentsdb/query_parser.rb
Overview
:nodoc:
Class Method Summary collapse
Class Method Details
.parse(q_string) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/opentsdb/query_parser.rb', line 5 def parse(q_string) parts = split_for(q_string, ':') return nil if parts.size < 2 || parts.size > 3 metric_query = {} metric_query[:aggregator] = parts[0] metric_query[:rate] = false metric = parts[1] if parts.size == 3 if metric.start_with?('rate') metric_query[:rate] = true metric_query[:rate_options] = parse_rate(metric) if metric.index('{') end metric = parts[2] end QueryParam.new metric_query.merge(parse_metric(metric)) end |