Configuring Tables in a Custom Dashboard | MuleSoft Documentation
# Configuring Tables in a Custom Dashboard
In Anypoint Monitoring, you can configure tables for custom dashboard. In addition to configuring properties that are common to other charts, such advanced or basic metric queries and time ranges, you can also:
  * Lay out for time-series data in a tabular format and display aggregated data.
  * Add color-coded thresholds to indicate whether a value is above, below, or within an given range.
  * Provide links from values in a column to a specified web page.
  * Set pagination properties.


## General Settings for Basic and Advanced Data Queries
**General** tab settings include basic and advanced queries (or modes) for configuring time-series data. Both configurations share fields for the title and a short description.
Basic and Advanced Mode Settings  
---  
Title to display in the UI. Defaults to Panel Title.  
Description | Short description to display in the UI when users hover over the information (`i`) icon.  
Other settings are specific to the setting mode (basic or advanced).
### Basic Mode
In the **General** configuration tab, a basic query selects a single metric for a resource (a deployed application or API) in a given environment.
Basic Mode Settings  
---  
Panel Type |  From the drop-down menu, select the type of panel to display for the resource — `Application Panel`, `API Panel`, or `API Analytics Panel` (deprecated).  
The drop-down menu includes these types of metrics:
  * Inbound response metrics and averages
  * JVM metrics
  * Outbound response metrics and averages

For a list of basic metrics, see Basic Mode Metrics  
Environment | The environment where your application or API is deployed.  
Resource | A deployed application. This option is available only if you selected `Application Panel` as your panel type.  
A deployed API. This option is available only if you selected `API Panel` or `API Analytics Panel` (deprecated) as your panel type.  
Version / Instance | The Mule version or instance on which your API is deployed. This option is available only if you selected `API Panel` or `API Analytics Panel` (deprecated) as your panel type.  
After you complete your configuration, click **Save Changes**.
To exit the configuration and return to the dashboard, click the **X**.
When you create an application panel using a JVM metric, the query that supports the panel uses only the worker-id for the app. When you modify the panel at a later time, the resource fields are populated with the query content. Because some apps share a worker-id, the resource that appears in the selector might appear to be a different resource from the resource you selected originally. However, all resources share the same worker, so the query has the correct information despite the selector displaying a different resource name.   
---  
### Advanced Mode
In the **General** configuration tab, advanced settings support one or more fine-tuned queries for your chart.
If you switch back to the basic configuration, some of the advanced configuration queries are removed.   
---  
Advanced Mode Settings for Applications  
---  
Lists JVM and Mule app properties (such as `jvm.memory` and `app_inbound_metric`) that you can add to your chart. This field provides matching suggestions when you type in a character. For example, `jvm.c` will produce a list of all values that contain those characters (such as `jvm.classloading` and `jvm.cpu.operatingsystem`). For a list of advanced metrics, see Advanced Mode Metrics  
Supports conditional logic for filtering the **From** data source you selected.
  * Select one or more filters tags (such as `app_id`, `env_id`, `org_id`, `worker_id`).
  * Available operators include:
    * `=` The value on the left matches the value on the right.
    * The value on the left is less than the value on the right.
    * The value on the left is greater than the value on the right.
  * You can also construct a query that contains multiple filtering expressions by using logical `AND` or `OR` operators between the expressions. Example:
  * `Where env_id = Sandbox`
  * `Where env_id = Sandbox AND app_id= app3`
  * `Where env_id = Sandbox OR env_id= Production`

Grouping `AND` or `OR` conditions within parentheses is _not allowed_. For example, `Where env_id = Sandbox AND (app_id= app3 OR app_id=app2)` isn’t allowed.  
Add one or more `field` settings to create a function that selects a field from the **From** data and applies an operation to it (such as the `mean` of the `heap_total`).  
Group By |  For grouping the data by a selected time interval (such as `$_interval`, `1s`, `10m`, `1h`), filter tag (such as `tag(env_id)`), and fill options (such as `none`, `null`, `0`, `previous`, `linear`). Valid values and arguments:
  * `time($_interval)` for the automated time interval setting, or you can specify time intervals of `1m`, `5m`, `10m`, `15m`, or `1h`.
  * `fill()` where valid values are `none`, `null`, `0`, `previous`, `linear`.
  * `LIMIT`: Numeric value (N) used to limit the result to the first N data points (combined series and timestamp values) returned by a query.
  * `SLIMIT`: Numeric value (N) used to return the all data points (combined series and timestamp values) from the first N series returned by the query.
  * `ORDER BY time DESC`: Returns results in descending time order.
Alias By | You can create a label for your metric using a literal string (such as `my string`) or supported variables (for example, `$tag_worker_id` or `$tag_env_id`).  
Advanced Mode Settings for APIs  
---  
`http_summary_metric` For a list of advanced metrics, see Advanced Mode Metrics  
Provides conditional logic for filtering the **From** data source you selected. You can select one or more filter tags (such as `api_id`, `org_id`, `api_version_id`, `method`, `status code`). Example: `Where status_code = 200`.  
For creating a function that selects a field (such as `request_size_average`,`response_time_max`, or `response_time_sum`) from the HTTP summary and applies an operation to it (such as the `mean` of the `response_time_average`). You can add one or more `field` settings.  
Group by |  For grouping the data by a selected time interval (such as `$_interval`, `1s`, `10m`, `1h`), filter tag (such as `tag(api_id)`), and fill options (such as `none`, `null`, `0`, `previous`, `linear`).  
Alias by |  You can create a label for your metric using a literal string (such as `my string`) or supported variables (for example, `$tag_api_id`). The alias must always begin with `$tag`. The syntax is `$tag_yourTagName`. To use your tag as an alias, the tag must be used to `group by` in the query.  
After you complete your configuration, click **Save Changes**.
To exit the configuration and return to the dashboard, click **X**.
## Time Range (Overrides, Time Shifts, Info Display)
Time range configurations provide a way to override _relative_ time ranges (such as the last 30 minutes) selected from the dashboard UI by end users.
Time Range Settings  
---  
Override Relative Time | The amount of time covered by the statistic, for example, the last hour (`1h`) or last thirty minutes (`30m`). Note that this setting only overrides _relative_ time ranges selected by end users from the dashboard UI. When these users select an _absolute time and date range_ for the dashboard, the configuration for the time range override will be disabled.  
Add Time Shift | How long ago the covered time period ended, for example, `1s` for one second ago.  
Hide Time Override Info | Indicates whether the singlestat or table will display information about its settings, such as `30 minutes, ending 1 second ago`.  
After you complete your configuration, you can click Save Changes. To exit the configuration and return to the dashboard, simply click the `X`.
## Options (Data and Pagination Settings)
In the Options configuration tab, you can set layout, column, and pagination options for tables in a custom dashboard.
### Data Settings (Options tab)
Value Settings  
---  
Time Series to Rows |  Creates a table with values for a given metric at a given time period. Like Time Series to Columns, the first column, Time, is for timestamps (such as `2018-04-25 06:37:40`). However, subsequent columns are Metric (for listing specific metrics, such as `worker-0`) and Value for listing the values of the metric at that time period.  
Time Series to Columns |  Creates a table that shows values for a given metric at a given time period. Like Time Series to Rows, the first column, Time, is for timestamps. However, there is a column for each metric, such as `worker-0`, which lists the values of that metric at a given time period.  
Time Series to Aggregations |  Transforms time series into a table that calculates totals, averages, and so on for a given metric. The first column, Metric, is for metrics such as `worker-0`, and subsequent columns are for any combination of these values: Avg, Min, Max, Total, Current, or Count for a given metric. Note that this example uses color-coded thresholds (see the cell coloring in the Avg and Max cells and value coloring for the Min value).  
If you select Time Series to Aggregations, you can add pre-defined columns to the table.
Columns for Aggregations  
---  
Columns and their order are determined by the data query. Only available setting when Time Series to Rows, Time Series to Columns, Annotations, or Table is selected.  
Averages the recorded data for a given metric.  
Provides the lowest recorded value for a given metric.  
Provides the highest recorded valued for a given metric.  
Provides the sum of all values recorded in the table.  
Shows the current value for a given metric.  
Provides the total number of data points collected on the metric.  
### Paging (Options tab)
In the Options configuration tab, you can set pagination properties for tables so that they do not become to long and are more manageable.
Paging Properties  
---  
Rows per Page | Number of table rows allowed per page.  
Checkbox for making the table scrollable.  
Font Size | Percentage of the default font size from 80% to 250%.  
After you complete your configuration, you can open another configuration tab or click Save Changes. To exit the configuration and return to the dashboard, simply click the `X`.
## Column Styles (Options, Data Types, Thresholds. Links)
In the Column Styles configuration tab, you can create (+Add) and apply one or more rules for table columns. The rules are listed on the left side of the Column Styles pane.
To remove a rule, you need to click it, then find and click the Remove Rule button near the bottom left of the screen.
### Options (Column Styles tab)
Apply To Columns Named | Identifies the column or columns to which the rule applies. You need to provides the name or a regular expression (regex) that matches the name of one or more columns in the table. For a regex, you the following syntax: `/my.*regex/`  
---|---  
Column Header | Provides a title for the column. For example, if you add the `Avg` column to a table that aggregates data, you might change the column name to `Average`. You can use strings such as `$1` for a regular expression.  
Render Value As Link | Treats values in the column as a link that you can configure through the Link settings.  
### Link (Column Styles tab)
In the Column Styles configuration tab, you can use configure a link from a value to a specified web page.
Note that Link settings are only available when _Render Value As Link_ is checked.
Specifies a URL that you can open when you click a value in the column.  
---  
For providing a description of the link. This text appears when the end user hovers over the cell with the link. Use the same variables as for URL.  
Open In New Tab | Displays the web content in a new browser tab when you click on the value.  
Data type for values in the column. Valid values are Number, String, Date, and Hidden.  
---  
Label for the unit of measure to use for the value, such as `bytes` and `megabytes/second`. It is important to know the data type for your value before adding this label to the value. A wide variety of units are available.  
Decimals | The level of precision allowed for a decimal value, for example, `2` to limit a value of `10.12345` to `10.12`.  
### Thresholds (Column Styles tab)
In the Column Styles configuration tab, you can set thresholds for your data if Type is set to Number.
Thresholds | Comma-separated values, for example, `50000000,100000000`. Values between the two values might be treated as warning values. Values below the first value might be treated as acceptable, while values above the second value might be treated as errors. Note that your threshold values must match the unit of measure used for your data (for example, `byte`) _even if the specified Unit is converted to MB or GB in the table_.  
---|---  
Color Mode | Indicates whether to apply the color code to the Value in a cell, to the Cell, to the entire Row, or whether color coding is Disabled.  
Color used to code values below (left-most color box), between (middle color box), and above (right-most color box) the specified threshold settings. For example, green values might represent OK, yellow a warning, and red an error. You can also invert the color coding.  
After you complete your configuration, you can open another configuration tab or click Save Changes. To exit the configuration and return to the dashboard, simply click the `X`.