Skip to Content

Full Report Example

This is an example report that contains all widget and filter types. Feel free to copy this and paste it in your report editor to experiment with the different types of visualizations and filters.

report: title: Report with all widgets shortDescription: This reports tests all widgets longDescription: | ## What does this report show? All widgets and their possible visualizations logo: aws tags: - tag1 - tag2 filters: - type: generic filterLabel: Option filterExpression: account_id_filtered = '?' options: - label: account 1 value: 1 - label: account 2 value: 2 - label: account 3 value: 3 - type: generic filterLabel: Account filterExpression: account_id = '?' query: | select value, label from ( select 1 as value, 'account 1' as label union all select 2 as value, 'account 2' as label union all select 3 as value, 'account 3' as label ) order by value - type: date filterLabel: Event Date filterExpression: event_time < '?' defaultValue: now() - interval 30 DAY - type: date filterLabel: Expiration filterExpression: expiration_date < '?' defaultValue: now() + interval 30 DAY mode: future - type: search filterExpression: ip_address LIKE '%?%' filterLabel: IP Address - type: search filterExpression: average_load >= '?' filterLabel: minimum average load (%) defaultValue: 50 groups: - title: Group with filtered widgets description: Widgets using the filters above widgets: - title: Widget with a generic option filter display: type: table query: | select account_id as account_id_filtered, account_name from ( select 1 as account_id, 'account 1' as account_name union all select 2 as account_id, 'account 2' as account_name ) where 1=1 and account_id_filtered = '?' - title: Widget with a generic filter display: type: table query: | select account_id, account_name from ( select 1 as account_id, 'account 1' as account_name union all select 2 as account_id, 'account 2' as account_name ) where 1=1 and account_id = '?' - title: widget filtered by Event Date display: type: table query: | select event_time from ( select now() as event_time union all select now() - interval 10 day as event_time ) where 1=1 and event_time < '?' - title: widget filtered by Expiration Date display: type: table query: | select expiration_date from ( select now() as expiration_date union all select now() + interval 10 day as expiration_date ) where 1=1 and expiration_date < '?' - title: widget using search without default value display: type: table query: | select ip_address from ( select '192.168.1.1' as ip_address union all select '192.168.1.2' as ip_address union all select '192.168.2.1' as ip_address union all select '192.168.3.1' as ip_address ) where 1=1 and ip_address LIKE '%?%' - title: widget using search with default value display: type: table query: | select ip_address, average_load from ( select '192.168.1.1' as ip_address, 30 as average_load union all select '192.168.1.2' as ip_address, 40 as average_load union all select '192.168.2.1' as ip_address, 50 as average_load union all select '192.168.3.1' as ip_address, 60 as average_load ) where 1=1 and average_load >= '?' - title: Unfiltered widgets description: simple widgets with no filters applied widgets: - title: label widget display: type: label query: | select 1 - title: bar chart widget display: type: bar_chart entryLabel: average query: | select 'row 1' as x, 2 as y union all select 'row 2' as x, 3 as y - title: pie chart widget display: type: pie_chart total: show: true label: pie chart label query: | select 'slice 1' as slice, 10 as value union all select 'slice 2' as slice, 20 as value union all select 'slice 3' as slice, 5 as value - title: table widget display: type: table query: | select 'EU' as region, 2 as count, toDate(now()) as date union all select 'US' as region, 3 as count, toDate(now()) as date - title: table widget with search display: type: table query: | select 'EU' as region, 2 as count, toDate(now()) as date, concat('eu','abc') as search_string union all select 'US' as region, 3 as count, toDate(now()) as date, concat('us','def') as search_string - title: bar chart with multiple series display: type: bar_chart width: 100% query: | WITH toDate('2024-01-01') AS start_date, toDate('2024-01-05') AS end_date SELECT date, map( 'series 1', randUniform(10, 50), 'series 2', randUniform(0, 100), 'series 3', randUniform(10, 30) ), FROM ( SELECT addDays(start_date, number) AS date FROM numbers(dateDiff('day', start_date, end_date) + 1) ) ORDER BY date; - title: XY-chart display: type: xy_chart width: 100% queries: - title: Random series 1 query: | WITH toDate('2024-01-01') AS start_date, toDate('2024-01-05') AS end_date SELECT date, rand() / 1000000000 as random_normal FROM ( SELECT addDays(start_date, number) AS date FROM numbers(dateDiff('day', start_date, end_date) + 1) ) ORDER BY date; - title: Random series 2 query: | WITH toDate('2024-01-01') AS start_date, toDate('2024-01-05') AS end_date SELECT date, rand() / 1000000000 AS random_normal FROM ( SELECT addDays(start_date, number) AS date FROM numbers(dateDiff('day', start_date, end_date) + 1) ) ORDER BY date;
Last updated on