- Metric Sources
- Using Instrumental
- InstrumentalD
- Data Collector
- API Reference

# Graphs

Data is visualized in Instrumental on graphs. Each graph can have one or more query language expressions. These expressions select (and even transform) metric data. Here's a brief video on creating graphs and working with expressions:

## Table of Contents

## Adding Graphs

Add a graph by clicking the + icon in the sidebar or the new graph button on a graph group page, which will display the new graph menu. From there, select a blank graph or one of our suggested graphs.

**Suggested graphs** are graphs are pre-populated with metrics collected by InstrumentalD's system and service monitoring. They provide one-click setup of critical graphs, and contain excellent examples of advanced expressions.

**Blank graphs** are the primary mechanism for visualizing data, once any relevant InstrumentalD suggested graphs are created.

After creating a graph, you should set a descriptive title for the graph. Also consider writing a short description, to help teammates (and future you) understand the purpose of the graph. Simply click the title or description to start editing.

### Adding Expressions (metric data)

Query language expressions are added to graphs through the text box at the top left. An expression can be as simple as a single metric name, or more powerful with wildcards, functions, and time shifting.

InstrumentalD's suggested graphs will already have one or more expressions, but you can easily customize these graphs by editing and adding expressions.

As you type, matching metrics and query language functions are displayed:

**Metric results**are presented one metric name part at a time (metric names use dots as part separators).**Blue badges**indicate the total number of metrics beginning with this namespace. Select these results to drill down further.**Function results**include the parameters and returned data for each function.

### Editing Expressions

Edit expressions by clicking the expression. As you edit, you will see the same matching metrics and query language functions as when adding a new expression. Hit `ENTER`

to save your change, `ESC`

to cancel them.

### Hiding Expressions

Hide expressions by hovering over the expression, then click the eye icon. When an expression returns multiple metrics, hide individual expressions via the dropdown menu.

### Deleting Expressions

Delete expressions by clicking the trash can icon on a hidden expression. The expression must be hidden before it can be deleted.

## Sharing, Exporting, & Embedding

### Sharing through URLs

Copying the URL for a graph page is the easiest way to share a graph. All graph options, including time, duration, and resolution, are defined in the URL for the page. **Copied URLs are only accessible to other Instrumental users on your project.** To share with non-Instrumental users, export the graph instead of sharing the URL.

### Exporting/Embedding as a PNG or HTML

To export a graph, use the export buttons from the graph menu. Exported graphs do **not** update dynamically, they reflect the state of the graph at the time the export was made. You can also export graphs programmatically.

## Managing Graphs

### Graph Groups

Groups are collections of graphs. We recommend creating groups as needed for each team (devops vs development vs product management) or for each use case (post-deploy vs database metrics). There are no limits to the number of groups you can create.

Graphs can be moved between graph groups via the dropdown in the top right of the graph.

### Graph Settings

- Changes the graph to a cumulative, stacked graph. Particularly useful for visualizing the total value of multiple expressions.
- When enabled, data points with a value of zero will be removed. In most cases, the series_continuous() query language function should be used instead.
- Toggles the visibility of notices.

### Deleting Graphs

Graphs can be easily removed through the graph settings menu. It also possible to create and share graphs that are never saved. Just share the URL of any graph page. These intentionally temporary graphs are great for exploration without cluttering your graph groups.