|
|
@@ -50,6 +50,7 @@ Macro example | Description
|
|
|
*$__timeFrom()* | Will be replaced by the start of the currently active time selection. For example, *FROM_UNIXTIME(1494410783)*
|
|
|
*$__timeTo()* | Will be replaced by the end of the currently active time selection. For example, *FROM_UNIXTIME(1494497183)*
|
|
|
*$__timeGroup(dateColumn,'5m')* | Will be replaced by an expression usable in GROUP BY clause. For example, *cast(cast(UNIX_TIMESTAMP(dateColumn)/(300) as signed)*300 as signed) as time_sec,*
|
|
|
+*$__timeGroup(dateColumn,'5m',0)* | Same as above but with a fill parameter so all null values will be converted to the fill value (all null values would be set to zero using this example).
|
|
|
*$__unixEpochFilter(dateColumn)* | Will be replaced by a time range filter using the specified column name with times represented as unix timestamp. For example, *dateColumn > 1494410783 AND dateColumn < 1494497183*
|
|
|
*$__unixEpochFrom()* | Will be replaced by the start of the currently active time selection as unix timestamp. For example, *1494410783*
|
|
|
*$__unixEpochTo()* | Will be replaced by the end of the currently active time selection as unix timestamp. For example, *1494497183*
|
|
|
@@ -119,6 +120,19 @@ GROUP BY 1, metric_name
|
|
|
ORDER BY 1
|
|
|
```
|
|
|
|
|
|
+Example using the fill parameter in the $__timeGroup macro to convert null values to be zero instead:
|
|
|
+
|
|
|
+```sql
|
|
|
+SELECT
|
|
|
+ $__timeGroup(atimestamp,'24h',0) as time_sec,
|
|
|
+ avg(afloat) as value,
|
|
|
+ avarchar as metric
|
|
|
+FROM testdata.grafana_metrics
|
|
|
+WHERE $__timeFilter(atimestamp)
|
|
|
+GROUP BY 1, avarchar
|
|
|
+ORDER BY 1
|
|
|
+```
|
|
|
+
|
|
|
Currently, there is no support for a dynamic group by time based on time range & panel width.
|
|
|
This is something we plan to add.
|
|
|
|