Parca template variables
{{< admonition type="warning" >}} This plugin is deprecated and will only receive critical security updates. Support will end on January 2, 2027. {{< /admonition >}}
Instead of hard-coding label values in your profiling queries, you can use template variables to create dynamic, reusable dashboards. Variables appear as drop-down menus at the top of the dashboard, making it easy to switch between services, instances, or environments without editing queries.
For an introduction to template variables, refer to the Variables documentation.
Supported variable types
| Variable type | Supported | Notes |
|---|---|---|
| Custom | Yes | Define a static list of values manually. |
| Text box | Yes | Enter a free-form value at the top of the dashboard. |
| Constant | Yes | Define a hidden, fixed value. |
| Data source | Yes | Select a data source instance by name. |
| Query | No | Parca doesn't implement variable queries to dynamically populate drop-downs. |
{{< admonition type="note" >}} Parca doesn't support query-type variables. You can't use the Parca data source to dynamically populate variable drop-downs. Use custom variables to define values manually, or use another data source to populate query variables. {{< /admonition >}}
Use variables in the label selector
The Parca query editor's label selector field supports template variable interpolation. Use the standard $variablename or ${variablename} syntax. Variables are interpolated in the label selector only -- the profile type drop-down doesn't support them.
Variable syntax options
| Syntax | Description |
|---|---|
$variablename |
Simple syntax for most cases. |
${variablename} |
Use when the variable is adjacent to other text (for example, ${host}_suffix). |
${variablename:format} |
Apply a specific format to the variable value. |
Example: Filter profiles by service
Create a custom variable to switch between services in your profiling dashboard.
In your Parca query's label selector, reference the variable:
{job="$service"}
When you change the drop-down selection, the panel refreshes to show profiles for the selected service.
Example: Filter by service and instance
Create two custom variables to filter by multiple dimensions.
- Create a variable named
servicewith custom valuesfrontend, backend, api-gateway. - Create a second variable named
instancewith custom values for your instance addresses, for example10.0.0.1:7070, 10.0.0.2:7070, 10.0.0.3:7070.
In your Parca query's label selector, reference both variables:
{job="$service", instance="$instance"}
Example: Use a text box variable for free-form filtering
Create a text box variable for free-form label filtering.
In your Parca query's label selector, reference the variable:
{$label_filter}
This lets you type any label matcher directly into the variable input at the top of the dashboard without editing the panel query.
Limitations
Parca template variable support has the following limitations:
- No query variable support: You can't use Parca as a data source for populating variable options. Define values manually with custom variables or use another data source.
- Label selector only: Variables are interpolated in the label selector field. The profile type drop-down doesn't support variables.
- No free-form filters: Parca doesn't support free-form filters.
Next steps
- Build queries using your template variables.
- Troubleshoot issues if queries aren't returning expected data.
谢谢你的反馈!