Report Item Components
A report consists of various report items that are composed of a collection of report item components. Report items can be preconfigured (delivered with Watson™ Explorer Engine), custom (defined by an administrator), or global (report item components that will apply to all report items in this report). Preconfigured report items have specific report item components defined to meet the specifications listed in the description of that report item. Both preconfigured and custom report items can be modified to include additional report item components. This section describes the process for adding report items and components to a report and what each component does.
When editing a report, you can click Add Report Item to add a new report item. The new report item will be added at the end of the current report, and you will be taken to the main report page.
You can customize the report item label, number of entries to display, and label for key column. To edit the report item, click edit on the report item header.
Each report item that you create will contain one or more components which will return data from the reporting database, and optionally contains conditions that will restrict that data to a specific subset. A report item can contain many components that can return data, but it is good practice to restrict the report item component to a single key value set (to maintain readability of the report). The key value column can be labeled by editing the report item and specifying a value for the Label for Key Column field.
If you select a preconfigured report item, the Convert to Custom button allows you to convert the preconfigured report item components into more detailed representations. This is a very useful way to learn about how report items are configured. Once you have a good understanding of the different report components, you will be able to use the custom report item components to create very specific reports.
Adding and editing report item components is achieved by clicking the Add Report Item Component button when viewing the report item that you wish to add the component to. Components define what is reported by this item and the conditions that must be met for the item to be reported. The following standard report item components are delivered with Watson Explorer Engine.
The following standard report item components are used to return results in a report. If these components do not meet your reporting needs (with the addition of appropriate conditions), you can create custom Projections, Grouping, and Double Grouping components. Custom components should only be created by advanced administrators with expertise in SQL.
- Aggregate by time (S) - View an aggregation at time intervals over the time period specified for the current report and then further separated by a specified table's value. When using this component, you must identify a key table that will be aggregated, and a table which the key table will be aggregated against. You can optionally specify a key expression. By default, the key expressions is tablename.value, but can be any SQL expression to identify the key grouping from the specified table. For example, if you wanted grouping to be based on source, the key expression would be numresults.key. Additionally, you can specify the Aggregation type (default: count), Value display Format (default: #,###.##), and if a Sample Scale should be used.
- Browse number of queries by time - View the number of queries aggregated at time intervals over the time period specified for the current report and then further separated by a specified table's value. This results in a table populated with columns that equate to a specific period of time and rows that equate to the grouping specified, with each cell identifying the number of queries that caused the grouping to occur in that time period. The default grouping expression is table.value.
- Browse sources by time - View a certain value, aggregated at time intervals over the time period specified for the current report and then further organized by source name. The returned aggregate values will be delivered on a per source basis in a time increment appropriate for the date range selected. For example: If a date range of a single day is selected, hourly results will be returned. If multiple months are selected results are returned on a per month basis. An Aggregation type can be selected, or a manual SQL Aggregation Expression to calculate each time/source pair can be specified. Additionally, you can specify the Format (default: #,###.##), and if a Sample Scale should be used.
- Simple aggregation(S) - Aggregate the values in a certain table using the type of aggregation specified. For example, count the number of queries, find the sum all the results returned, or find the maximum response time. The result is a single number delivered in a column that is titled by the expression used to obtain the aggregate number (for example avg(numresults.value)), not a table of values. A Join expression may be specified to prevent the cross product from being computed. Additionally, you can specify the Aggregation type (default: count) Format (default: #,###.##), and if a Sample Scale should be used.
- Simple aggregation by time(S) - Aggregate the values in a certain table per time increment. The returned aggregate values will be delivered in a time increment appropriate for the date range selected. For example: If a date range of a single day is selected, hourly results will be returned. If multiple months are selected results are returned on a per month basis. To subdivide aggregation by time across a table, use the aggregation by time component. This aggregator produces a single result per time period. A Join expression may be specified to prevent the cross product from being computed. Additionally, you can specify the Aggregation type (default: count) Format (default: #,###.##), a descriptive Label for the column of values, and if a Sample Scale should be used.
- Top values(S) - Display the most frequently occurring values of a certain table. For example, display the top queries. When adding top values, you must specify which table the top values will be taken from. Optionally, you can also specify if empty values will be returned (default false), the number of "Top" values to return (default 10), the table that will be used to identify which results are the top results (default query), a label for the column listing the number of occurrences of each top value (default number of queries), and if the resulting values should be truncated.
The following conditions will meet the vast majority of any restrictions that need to be placed on a report item. Any number of conditions can be added to a report, and the effect is cumulative on all report item components that return data. Use separate report items to apply conditions to individual report item components. If these conditions do not meet your reporting needs, you can create custom report item component Conditions. Custom components should only be created by advanced administrators with expertise in SQL.
- Condition - Doesn't have(S) - Add a condition so that the results returned by the report item does not have a certain property. For example, restrict to sessions that do not come from a certain IP address. Typically this will take the form of a literal = statement or a like statement (which allows the use of the SQL wildcard characters % and _). For example value = "400" will exclude only 400, but value like "4__" will exclude all 3 character entries starting with a 4. You can specify multiple expressions by using the or operator, for example value = "query-meta" or value = "new-project".
- Condition - Has(S) - Add a condition that any results returned by the report item have a certain property. For example, the project must be "custom-project", or the IP address must be "192.168.0.3". Typically this will take the form of a literal = statement or a like statement (which allows the use of the SQL wildcard characters % and _). For example value = "400" will only match 400, but value like "4__" will match 400-499 (and any other 3 character entries starting with a 4). You can specify multiple expressions by using the or operator, for example value = "query-meta" or value = "new-project".
- Condition - Has value(s)(S) - Limit the results returned by the report item to those that match a specific table value (or one of a set of values). For example, the project must be "custom-project", or the IP address must be "192.168.0.3". When the like option is enabled, the % (multiple characters) and _ (single character) wildcards can used. If the only_this option is enabled, any results that have multiple different values for the specified value (for example, multiple sources) will be rejected.
- Condition - Limit by IP - Limit the results returned by the report item to those that came from one of a set of IP addresses. The list of IP addresses must be entered in a new-line separated list. Wildcards and ranges are not supported, and the IPs must be listed using standard notation (for example if you enter 192.168.000.121 it will not match a recorded IP of 192.168.0.121). If you need to use wildcards, use the Condition - Has value(s) report item component on the ip table with the like option enabled. This will allow the use of the % (multiple characters) and _ (single character) wildcards. To define a list of excluded IP addresses, use the Condition - Doesn't have report item component.
- Condition - Limit by project - Limit the results returned by the report item to those that used a given project. The list of projects must be entered in a new-line separated list. Wildcards are not supported by this condition. If you need to use wildcards, use the Condition - Has value(s) report item component on the project table with the like option enabled. This will allow the use of the % (multiple characters) and _ (single character) wildcards. To define a list of excluded projects, use the Condition - Doesn't have report item component.
- Condition - Limit by source - Limit the results returned by the report item to those that queried one of the given sources. The list of sources must be entered in a new-line separated list. Wildcards are not supported by this condition. If you need to use wildcards, use the Condition - Has report item component on the numresults table with a Condition Expression of the format: key like "expression" where expression is the wildcarded expression that you want to use. Multiple expressions can be used by adding or and repeating the key expression. This will allow the use of the % (multiple characters) and _ (single character) wildcards. For example, key like "ex%ta" or key like "news-_" will match on example-metadata, news-1, and news-Y. To define a list of excluded sources, use the Condition - Doesn't have report item component.
- Condition - Non-empty queries - Limit the results returned by the report item to those in which the user entered a non-empty query. This condition has no configurable parameters.
- Condition - Zero-document queries - Limit the results returned by the report item to those in which none of the queried sources return any results. This condition has no configurable parameters.
Once you are finished modifying a report item, click Save to save your changes and return to the full report view.
It is also possible to change the sorting configuration for this report item by clicking the headings of the columns in the results.