<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Parca data source on Grafana Labs</title><link>https://grafana.com/docs/grafana/v13.3/datasources/parca/</link><description>Recent content in Parca data source on Grafana Labs</description><generator>Hugo -- gohugo.io</generator><language>en</language><atom:link href="/docs/grafana/v13.3/datasources/parca/index.xml" rel="self" type="application/rss+xml"/><item><title>Configure the Parca data source</title><link>https://grafana.com/docs/grafana/v13.3/datasources/parca/configure/</link><pubDate>Mon, 02 Nov 2026 21:20:48 +0000</pubDate><guid>https://grafana.com/docs/grafana/v13.3/datasources/parca/configure/</guid><content><![CDATA[&lt;h1 id=&#34;configure-the-parca-data-source&#34;&gt;Configure the Parca data source&lt;/h1&gt;


&lt;div class=&#34;admonition admonition-warning&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Warning&lt;/p&gt;&lt;p&gt;This plugin is deprecated and will only receive critical security updates. Support will end on January 2, 2027.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;This document explains how to install and configure the Parca data source in Grafana.&lt;/p&gt;
&lt;p&gt;To use the Parca data source, you must build it from source and install it into your local Grafana plugin directory. After it&amp;rsquo;s installed, you can configure the data source using the Grafana UI, a YAML provisioning file, or Terraform.
If you make any changes in the UI, select &lt;strong&gt;Save &amp;amp; test&lt;/strong&gt; to preserve those changes.&lt;/p&gt;
&lt;h2 id=&#34;before-you-begin&#34;&gt;Before you begin&lt;/h2&gt;
&lt;p&gt;Before you install the Parca data source, ensure you have:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Grafana:&lt;/strong&gt; A self-managed Grafana instance, version 12.3 or later. The Parca data source isn&amp;rsquo;t available in Grafana Cloud.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Server access:&lt;/strong&gt; Shell access to the host running Grafana, with permission to write to the plugin directory and restart Grafana.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Grafana permissions:&lt;/strong&gt; &lt;code&gt;Organization administrator&lt;/code&gt; role to add and configure the data source.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Parca instance:&lt;/strong&gt; A running Parca instance (v0.19 or later) accessible from your Grafana server.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Build tools:&lt;/strong&gt; Node.js, npm, and Go. For the required versions, refer to the &lt;code&gt;engines&lt;/code&gt; field in &lt;a href=&#34;https://github.com/grafana/grafana-parca-datasource/blob/main/package.json&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&lt;code&gt;package.json&lt;/code&gt;&lt;/a&gt; and the &lt;code&gt;go&lt;/code&gt; directive in &lt;a href=&#34;https://github.com/grafana/grafana-parca-datasource/blob/main/go.mod&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&lt;code&gt;go.mod&lt;/code&gt;&lt;/a&gt; in the data source repository.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;install-the-data-source&#34;&gt;Install the data source&lt;/h2&gt;
&lt;p&gt;The Parca data source has both a frontend and a Go backend, so you must build both and then copy the result into your Grafana plugin directory.&lt;/p&gt;
&lt;h3 id=&#34;build-the-data-source-from-source&#34;&gt;Build the data source from source&lt;/h3&gt;
&lt;p&gt;Clone the repository and build the frontend and backend:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;sh&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sh&#34;&gt;git clone https://github.com/grafana/grafana-parca-datasource.git
cd grafana-parca-datasource
npm ci
npm run build
go run github.com/magefile/mage -v buildAll&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Both build commands are required. &lt;code&gt;npm run build&lt;/code&gt; produces the frontend assets, and the &lt;code&gt;mage buildAll&lt;/code&gt; target compiles the backend executables for each supported platform. Running only &lt;code&gt;npm run build&lt;/code&gt; produces a data source that Grafana loads but can&amp;rsquo;t query, because the backend executable is missing.&lt;/p&gt;
&lt;p&gt;Both commands write their output to the &lt;code&gt;dist/&lt;/code&gt; directory.&lt;/p&gt;
&lt;h3 id=&#34;deploy-the-data-source-to-grafana&#34;&gt;Deploy the data source to Grafana&lt;/h3&gt;
&lt;p&gt;Copy the contents of &lt;code&gt;dist/&lt;/code&gt; into a &lt;code&gt;parca&lt;/code&gt; directory inside your Grafana plugin directory. On a package-based Linux installation, the plugin directory is &lt;code&gt;/var/lib/grafana/plugins&lt;/code&gt;:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;sh&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sh&#34;&gt;sudo mkdir -p /var/lib/grafana/plugins/parca
sudo cp -a dist/. /var/lib/grafana/plugins/parca/
sudo chown -R grafana:grafana /var/lib/grafana/plugins/parca&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The Grafana process must be able to read every file in the directory and execute the backend binary.&lt;/p&gt;
&lt;p&gt;If you run Grafana in Docker, mount the &lt;code&gt;dist/&lt;/code&gt; directory at &lt;code&gt;/var/lib/grafana/plugins/parca&lt;/code&gt; instead:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;sh&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sh&#34;&gt;docker run -d \
  -v &amp;#34;$(pwd)/dist:/var/lib/grafana/plugins/parca&amp;#34; \
  -e GF_PLUGINS_ALLOW_LOADING_UNSIGNED_PLUGINS=parca \
  -p 3000:3000 \
  grafana/grafana:latest&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The plugin directory path is set by the &lt;code&gt;plugins&lt;/code&gt; configuration option. If you&amp;rsquo;ve changed it, use your configured path instead. For more information, refer to 
    &lt;a href=&#34;/docs/grafana/v13.3/setup-grafana/configure-grafana/#plugins&#34;&gt;Configure Grafana&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;allow-the-unsigned-plugin&#34;&gt;Allow the unsigned plugin&lt;/h3&gt;
&lt;p&gt;A data source you build yourself isn&amp;rsquo;t signed, and Grafana refuses to load unsigned plugins by default. Add the &lt;code&gt;parca&lt;/code&gt; plugin ID to the &lt;code&gt;allow_loading_unsigned_plugins&lt;/code&gt; option in your Grafana configuration file, typically &lt;code&gt;/etc/grafana/grafana.ini&lt;/code&gt;:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;ini&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-ini&#34;&gt;[plugins]
allow_loading_unsigned_plugins = parca&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Restart Grafana to load the data source:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;sh&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-sh&#34;&gt;sudo systemctl restart grafana-server&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;When Grafana loads an unsigned plugin, it writes a warning to the server log:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;text&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-text&#34;&gt;WARN[...] Permitting unsigned plugin. This is not recommended   pluginId=parca&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;For more information, refer to 
    &lt;a href=&#34;/docs/grafana/v13.3/administration/plugin-management/plugin-sign/&#34;&gt;Plugin signatures&lt;/a&gt; and the 
    &lt;a href=&#34;/docs/grafana/v13.3/setup-grafana/configure-grafana/#allow_loading_unsigned_plugins&#34;&gt;&lt;code&gt;allow_loading_unsigned_plugins&lt;/code&gt; option&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;verify-the-data-source-loaded&#34;&gt;Verify the data source loaded&lt;/h3&gt;
&lt;p&gt;To confirm Grafana loaded the Parca data source:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Click &lt;strong&gt;Connections&lt;/strong&gt; in the left-side menu.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Add new connection&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Type &lt;code&gt;Parca&lt;/code&gt; in the search bar.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;If &lt;strong&gt;Parca&lt;/strong&gt; doesn&amp;rsquo;t appear, check the Grafana server log for plugin loading errors. Refer to 
    &lt;a href=&#34;/docs/grafana/v13.3/datasources/parca/troubleshooting/#installation-issues&#34;&gt;Troubleshoot Parca data source issues&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;migrate-from-the-bundled-data-source&#34;&gt;Migrate from the bundled data source&lt;/h3&gt;
&lt;p&gt;Grafana 13.1 and earlier include a bundled Parca data source. Grafana 13.2 and later don&amp;rsquo;t, so you must install the external Parca data source, which you build from the &lt;a href=&#34;https://github.com/grafana/grafana-parca-datasource&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;grafana/grafana-parca-datasource&lt;/a&gt; repository. Both use the plugin ID &lt;code&gt;parca&lt;/code&gt;, so your existing Parca data sources work with the external Parca data source without any changes.&lt;/p&gt;
&lt;p&gt;The external Parca data source is available in Grafana 12.3 and later. If you already have Parca data sources configured, switch to the external Parca data source before you upgrade to Grafana 13.2:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Build, deploy, and allow the external Parca data source. Refer to &lt;a href=&#34;#build-the-data-source-from-source&#34;&gt;Build the data source from source&lt;/a&gt;, &lt;a href=&#34;#deploy-the-data-source-to-grafana&#34;&gt;Deploy the data source to Grafana&lt;/a&gt;, and &lt;a href=&#34;#allow-the-unsigned-plugin&#34;&gt;Allow the unsigned plugin&lt;/a&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add the following to your Grafana configuration file. Without this setting, Grafana 12.3 through 13.1 load the bundled Parca data source and ignore the external one.&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;ini&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-ini&#34;&gt;[plugin.parca]
as_external = true&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Restart Grafana.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;


&lt;div class=&#34;admonition admonition-caution&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Caution&lt;/p&gt;&lt;p&gt;Don&amp;rsquo;t delete and recreate your existing Parca data sources. Dashboards and alert rules reference data sources by UID, so a new UID breaks those references. Keep the existing data source and its UID.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;If you upgrade to Grafana 13.2 or later before you install the external Parca data source, your existing Parca data sources and any panels that query them report the &lt;code&gt;parca&lt;/code&gt; plugin isn&amp;rsquo;t found. To resolve this, install the external Parca data source and restart Grafana. You don&amp;rsquo;t need to change your data sources.&lt;/p&gt;
&lt;h2 id=&#34;add-the-data-source&#34;&gt;Add the data source&lt;/h2&gt;
&lt;p&gt;After the data source is installed, add it in Grafana:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Click &lt;strong&gt;Connections&lt;/strong&gt; in the left-side menu.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Add new connection&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Type &lt;code&gt;Parca&lt;/code&gt; in the search bar.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Parca&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Add new data source&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;configure-settings&#34;&gt;Configure settings&lt;/h2&gt;
&lt;p&gt;The &lt;strong&gt;Settings&lt;/strong&gt; tab contains the following configuration sections.&lt;/p&gt;
&lt;h3 id=&#34;basic-settings&#34;&gt;Basic settings&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Setting&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Name&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;A name to identify this data source in panels, queries, and Explore.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Default&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Toggle to make this the default data source for new panels.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;connection&#34;&gt;Connection&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Setting&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;URL&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;The URL of your Parca instance. For example, &lt;code&gt;http://localhost:7070&lt;/code&gt;. Grafana connects to Parca using gRPC-Web, so the URL should point to the Parca HTTP endpoint.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;authentication&#34;&gt;Authentication&lt;/h3&gt;
&lt;p&gt;Use this section to select an authentication method to access the data source. The available methods are:&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Method&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Basic authentication&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Authenticate with a username and password. Enter values in the &lt;strong&gt;User&lt;/strong&gt; and &lt;strong&gt;Password&lt;/strong&gt; fields.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Forward OAuth Identity&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Forward the logged-in user&amp;rsquo;s OAuth token to the data source.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;No Authentication&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Connect without credentials. Use this when the Parca instance doesn&amp;rsquo;t require authentication.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;tls-settings&#34;&gt;TLS settings&lt;/h3&gt;
&lt;p&gt;Configure TLS for secure communication with your Parca instance.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Setting&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Add self-signed certificate&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Toggle to provide a CA certificate. When enabled, paste the CA certificate in the &lt;strong&gt;CA Certificate&lt;/strong&gt; field.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;TLS Client Authentication&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Toggle to enable mutual TLS. When enabled, provide the &lt;strong&gt;Server Name&lt;/strong&gt;, &lt;strong&gt;Client Certificate&lt;/strong&gt;, and &lt;strong&gt;Client Key&lt;/strong&gt;.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Skip TLS certificate validation&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Toggle to skip server certificate verification. Use only for testing.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;Use Transport Layer Security (TLS) for an additional layer of security when working with Parca.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h3 id=&#34;custom-http-headers&#34;&gt;Custom HTTP headers&lt;/h3&gt;
&lt;p&gt;Add custom HTTP headers to requests sent to the Parca instance. Click &lt;strong&gt;Add header&lt;/strong&gt; to add a new row with &lt;strong&gt;Header&lt;/strong&gt; (name) and &lt;strong&gt;Value&lt;/strong&gt; (secret) fields.&lt;/p&gt;
&lt;p&gt;Custom headers are useful for passing authentication tokens or routing information required by proxies between Grafana and Parca.&lt;/p&gt;
&lt;h2 id=&#34;additional-settings&#34;&gt;Additional settings&lt;/h2&gt;
&lt;p&gt;Click the down arrow to expand the &lt;strong&gt;Additional settings&lt;/strong&gt; section. These settings are optional.&lt;/p&gt;
&lt;h3 id=&#34;advanced-http-settings&#34;&gt;Advanced HTTP settings&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Setting&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Allowed cookies&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Cookies that should be forwarded to the data source. The Grafana proxy strips all cookies by default.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Timeout&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;The HTTP request timeout in seconds.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;secure-socks-proxy&#34;&gt;Secure SOCKS proxy&lt;/h3&gt;


&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;This section is only visible when the Grafana server has the secure SOCKS proxy feature enabled.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Setting&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Enabled&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Toggle to route requests to the Parca instance through a secure SOCKS proxy.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h2 id=&#34;verify-the-connection&#34;&gt;Verify the connection&lt;/h2&gt;
&lt;p&gt;Click &lt;strong&gt;Save &amp;amp; test&lt;/strong&gt; to verify that Grafana can connect to your Parca instance. The health check queries the available profile types from the Parca server. A successful connection displays the message&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Data source is working&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;If the test fails, verify that the URL is correct and that your Parca instance is running and accessible from the Grafana server. For more help, refer to 
    &lt;a href=&#34;/docs/grafana/v13.3/datasources/parca/troubleshooting/&#34;&gt;Troubleshoot Parca data source issues&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;provision-the-data-source&#34;&gt;Provision the data source&lt;/h2&gt;
&lt;p&gt;You can define the data source in YAML files as part of the Grafana provisioning system.
For more information, refer to 
    &lt;a href=&#34;/docs/grafana/v13.3/administration/provisioning/#data-sources&#34;&gt;Provisioning Grafana&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Provisioning doesn&amp;rsquo;t install the data source. Install it first, as described in &lt;a href=&#34;#install-the-data-source&#34;&gt;Install the data source&lt;/a&gt;, or Grafana fails to provision it because the &lt;code&gt;parca&lt;/code&gt; plugin ID isn&amp;rsquo;t registered.&lt;/p&gt;
&lt;h3 id=&#34;yaml-provisioning-example&#34;&gt;YAML provisioning example&lt;/h3&gt;
&lt;p&gt;Create a file such as &lt;code&gt;/etc/grafana/provisioning/datasources/parca.yaml&lt;/code&gt; and restart Grafana:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;YAML&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-yaml&#34;&gt;apiVersion: 1

datasources:
  - name: Parca
    type: parca
    uid: parca
    access: proxy
    url: http://localhost:7070&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Set &lt;code&gt;url&lt;/code&gt; to an address the Grafana server can reach. If Grafana and Parca run in separate containers, &lt;code&gt;localhost&lt;/code&gt; resolves to the Grafana container, so use the Parca service name instead, for example &lt;code&gt;http://parca:7070&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Set &lt;code&gt;uid&lt;/code&gt; explicitly so dashboards can reference the data source by a stable UID. If you&amp;rsquo;re replacing an existing Parca data source, use its current UID.&lt;/p&gt;
&lt;p&gt;To provision with basic authentication:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;YAML&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-yaml&#34;&gt;apiVersion: 1

datasources:
  - name: Parca
    type: parca
    uid: parca
    access: proxy
    url: http://localhost:7070
    basicAuth: true
    basicAuthUser: &amp;lt;USERNAME&amp;gt;
    secureJsonData:
      basicAuthPassword: &amp;lt;PASSWORD&amp;gt;&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Replace the following:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;USERNAME&amp;gt;&lt;/code&gt;: Your Parca username.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;PASSWORD&amp;gt;&lt;/code&gt;: Your Parca password.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;terraform-example&#34;&gt;Terraform example&lt;/h3&gt;
&lt;p&gt;To provision the data source with Terraform, use the &lt;a href=&#34;https://registry.terraform.io/providers/grafana/grafana/latest/docs/resources/data_source&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&lt;code&gt;grafana_data_source&lt;/code&gt; resource&lt;/a&gt;:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;hcl&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-hcl&#34;&gt;resource &amp;#34;grafana_data_source&amp;#34; &amp;#34;parca&amp;#34; {
  type = &amp;#34;parca&amp;#34;
  name = &amp;#34;Parca&amp;#34;
  uid  = &amp;#34;parca&amp;#34;
  url  = &amp;#34;http://localhost:7070&amp;#34;
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;To provision with basic authentication:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;hcl&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-hcl&#34;&gt;resource &amp;#34;grafana_data_source&amp;#34; &amp;#34;parca&amp;#34; {
  type                = &amp;#34;parca&amp;#34;
  name                = &amp;#34;Parca&amp;#34;
  uid                 = &amp;#34;parca&amp;#34;
  url                 = &amp;#34;http://localhost:7070&amp;#34;
  basic_auth_enabled  = true
  basic_auth_username = &amp;#34;&amp;lt;USERNAME&amp;gt;&amp;#34;

  secure_json_data_encoded = jsonencode({
    basicAuthPassword = &amp;#34;&amp;lt;PASSWORD&amp;gt;&amp;#34;
  })
}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Replace the following:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;USERNAME&amp;gt;&lt;/code&gt;: Your Parca username.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;lt;PASSWORD&amp;gt;&lt;/code&gt;: Your Parca password.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;next-steps&#34;&gt;Next steps&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
    &lt;a href=&#34;/docs/grafana/v13.3/datasources/parca/query-editor/&#34;&gt;Query profiling data with the Parca query editor&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
]]></content><description>&lt;h1 id="configure-the-parca-data-source">Configure the Parca data source&lt;/h1>
&lt;div class="admonition admonition-warning">&lt;blockquote>&lt;p class="title text-uppercase">Warning&lt;/p>&lt;p>This plugin is deprecated and will only receive critical security updates. Support will end on January 2, 2027.&lt;/p></description></item><item><title>Parca query editor</title><link>https://grafana.com/docs/grafana/v13.3/datasources/parca/query-editor/</link><pubDate>Mon, 02 Nov 2026 21:20:48 +0000</pubDate><guid>https://grafana.com/docs/grafana/v13.3/datasources/parca/query-editor/</guid><content><![CDATA[&lt;h1 id=&#34;parca-query-editor&#34;&gt;Parca query editor&lt;/h1&gt;


&lt;div class=&#34;admonition admonition-warning&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Warning&lt;/p&gt;&lt;p&gt;This plugin is deprecated and will only receive critical security updates. Support will end on January 2, 2027.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;This document explains how to use the Parca query editor to query and visualize continuous profiling data.&lt;/p&gt;
&lt;p&gt;The query editor gives you access to a profile type selector, a label selector with autocomplete, and collapsible options for controlling query behavior.&lt;/p&gt;
&lt;h2 id=&#34;before-you-begin&#34;&gt;Before you begin&lt;/h2&gt;
&lt;p&gt;Before using the query editor, ensure you have:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
    &lt;a href=&#34;/docs/grafana/v13.3/datasources/parca/configure/&#34;&gt;Configured the Parca data source&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Verified the connection using &lt;strong&gt;Save &amp;amp; test&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;access-the-query-editor&#34;&gt;Access the query editor&lt;/h2&gt;
&lt;p&gt;To access the query editor:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Sign in to Grafana.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Explore&lt;/strong&gt; from the left-side menu.&lt;/li&gt;
&lt;li&gt;Select your Parca data source from the data source drop-down.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;You can also access the query editor from a dashboard panel by selecting the Parca data source when editing a panel.&lt;/p&gt;
&lt;h2 id=&#34;profile-type-selector&#34;&gt;Profile type selector&lt;/h2&gt;
&lt;p&gt;Select a profile type from the cascading drop-down menu. Profile types are grouped by name at the first level, with a second level showing the sample type.&lt;/p&gt;
&lt;p&gt;For example, a &lt;code&gt;process_cpu&lt;/code&gt; profile might show sample types like &lt;code&gt;cpu&lt;/code&gt; or &lt;code&gt;samples&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;You must select a profile type for the query to be valid. Grafana doesn&amp;rsquo;t return any data if the profile type isn&amp;rsquo;t selected when a query runs.&lt;/p&gt;
&lt;h3 id=&#34;profile-type-id-format&#34;&gt;Profile type ID format&lt;/h3&gt;
&lt;p&gt;Each profile type has an ID in the format &lt;code&gt;name:sampleType:sampleUnit:periodType:periodUnit&lt;/code&gt;. Delta profile types include an additional &lt;code&gt;:delta&lt;/code&gt; suffix. You don&amp;rsquo;t need to construct these IDs manually &amp;ndash; the cascading drop-down handles selection for you.&lt;/p&gt;
&lt;p&gt;Examples of profile type IDs:&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Profile type ID&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;process_cpu:samples:count:cpu:nanoseconds&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;CPU profile measuring sample counts.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;memory:alloc_objects:count:space:bytes&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Memory profile measuring allocated objects.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;process_cpu:cpu:nanoseconds:cpu:nanoseconds:delta&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Delta CPU profile measuring nanoseconds.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h2 id=&#34;label-selector&#34;&gt;Label selector&lt;/h2&gt;
&lt;p&gt;Use the label selector to filter profiles by labels. The editor provides autocomplete for both label names and label values.&lt;/p&gt;
&lt;h3 id=&#34;syntax&#34;&gt;Syntax&lt;/h3&gt;
&lt;p&gt;Parca uses a syntax similar to Prometheus for label filtering. Wrap label matchers in curly braces using the &lt;code&gt;{key=&amp;quot;value&amp;quot;}&lt;/code&gt; format.&lt;/p&gt;
&lt;p&gt;The following operators are supported:&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Operator&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
              &lt;th&gt;Example&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;=&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Equals&lt;/td&gt;
              &lt;td&gt;&lt;code&gt;{job=&amp;quot;my-service&amp;quot;}&lt;/code&gt;&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;!=&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Not equals&lt;/td&gt;
              &lt;td&gt;&lt;code&gt;{job!=&amp;quot;test-service&amp;quot;}&lt;/code&gt;&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;=~&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Regular expression match&lt;/td&gt;
              &lt;td&gt;&lt;code&gt;{job=~&amp;quot;prod-.*&amp;quot;}&lt;/code&gt;&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;!~&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Negative regular expression match&lt;/td&gt;
              &lt;td&gt;&lt;code&gt;{job!~&amp;quot;test-.*&amp;quot;}&lt;/code&gt;&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;p&gt;You can combine multiple label matchers separated by commas:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;text&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-text&#34;&gt;{job=&amp;#34;my-service&amp;#34;, instance=~&amp;#34;10.0.0.*&amp;#34;}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;The label selector can be left empty to query all profiles of the selected type without filtering.&lt;/p&gt;
&lt;p&gt;Refer to the &lt;a href=&#34;https://www.parca.dev/docs&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Parca documentation&lt;/a&gt; for additional syntax details.&lt;/p&gt;
&lt;h3 id=&#34;autocomplete&#34;&gt;Autocomplete&lt;/h3&gt;
&lt;p&gt;The label selector provides autocomplete suggestions as you type. Autocomplete is triggered by the following characters: &lt;code&gt;{&lt;/code&gt;, &lt;code&gt;,&lt;/code&gt;, &lt;code&gt;[&lt;/code&gt;, &lt;code&gt;(&lt;/code&gt;, &lt;code&gt;=&lt;/code&gt;, &lt;code&gt;~&lt;/code&gt;, space, and &lt;code&gt;&amp;quot;&lt;/code&gt;.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Label names:&lt;/strong&gt; Suggested when you start typing inside curly braces or after a comma.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Label values:&lt;/strong&gt; Suggested after typing a label name followed by &lt;code&gt;=&lt;/code&gt; or &lt;code&gt;=&amp;quot;&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;keyboard-shortcuts&#34;&gt;Keyboard shortcuts&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Shortcut&lt;/th&gt;
              &lt;th&gt;Action&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Shift &#43; Enter&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Run the query with current input.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h2 id=&#34;query-types&#34;&gt;Query types&lt;/h2&gt;
&lt;p&gt;Expand the &lt;strong&gt;Options&lt;/strong&gt; section to select a query type. The query type controls what data is returned and how it&amp;rsquo;s visualized.&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Query type&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Metric&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Returns aggregated metric data visualized as a time series.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Profile&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Returns a merged profile visualized as a flame graph.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;Both&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;Returns both metric and profile data. Only available in Explore.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;The &lt;strong&gt;Both&lt;/strong&gt; option is only available in 
    &lt;a href=&#34;/docs/grafana/v13.3/explore/&#34;&gt;Explore&lt;/a&gt;. In dashboard panels, you can select either &lt;strong&gt;Metric&lt;/strong&gt; or &lt;strong&gt;Profile&lt;/strong&gt; because panels support only one visualization type. If a query set to &lt;strong&gt;Both&lt;/strong&gt; is moved from Explore to a dashboard, Grafana automatically changes it to &lt;strong&gt;Profile&lt;/strong&gt;.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h2 id=&#34;use-template-variables-in-queries&#34;&gt;Use template variables in queries&lt;/h2&gt;
&lt;p&gt;The label selector field supports Grafana template variables. You can use variables like &lt;code&gt;$job&lt;/code&gt; or &lt;code&gt;$instance&lt;/code&gt; in the label selector to create dynamic, reusable dashboards.&lt;/p&gt;
&lt;p&gt;For more information about supported variable types, examples, and limitations, refer to 
    &lt;a href=&#34;/docs/grafana/v13.3/datasources/parca/template-variables/&#34;&gt;Parca template variables&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;query-examples&#34;&gt;Query examples&lt;/h2&gt;
&lt;p&gt;The following examples show common profiling queries.&lt;/p&gt;
&lt;h3 id=&#34;query-cpu-profiles-for-a-specific-service&#34;&gt;Query CPU profiles for a specific service&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Select &lt;strong&gt;process_cpu&lt;/strong&gt; &amp;gt; &lt;strong&gt;cpu&lt;/strong&gt; from the profile type drop-down.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Enter a label selector to filter by service:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;text&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-text&#34;&gt;{job=&amp;#34;my-service&amp;#34;}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Set query type to &lt;strong&gt;Profile&lt;/strong&gt; to view a flame graph, or &lt;strong&gt;Metric&lt;/strong&gt; to view CPU usage over time.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;compare-profiles-across-instances&#34;&gt;Compare profiles across instances&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Select a profile type such as &lt;strong&gt;process_cpu&lt;/strong&gt; &amp;gt; &lt;strong&gt;samples&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Filter to a specific service and instance:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;text&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-text&#34;&gt;{job=&amp;#34;my-service&amp;#34;, instance=&amp;#34;10.0.0.1:7070&amp;#34;}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Add a second query (click &lt;strong&gt;&#43; Add query&lt;/strong&gt;) with a different instance:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;text&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-text&#34;&gt;{job=&amp;#34;my-service&amp;#34;, instance=&amp;#34;10.0.0.2:7070&amp;#34;}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Set both queries to &lt;strong&gt;Metric&lt;/strong&gt; to compare time-series data across instances.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;find-memory-allocation-hot-spots&#34;&gt;Find memory allocation hot spots&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Select &lt;strong&gt;memory&lt;/strong&gt; &amp;gt; &lt;strong&gt;alloc_objects&lt;/strong&gt; from the profile type drop-down.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Optionally filter by service:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;text&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-text&#34;&gt;{job=&amp;#34;api-gateway&amp;#34;}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Set query type to &lt;strong&gt;Profile&lt;/strong&gt; to view a flame graph showing which functions allocate the most objects.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Adjust the time range to narrow down to a specific incident window.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;profile-query-results&#34;&gt;Profile query results&lt;/h2&gt;
&lt;p&gt;Profiles are visualized as a flame graph. Refer to the 
    &lt;a href=&#34;/docs/grafana/v13.3/panels-visualizations/visualizations/flame-graph/&#34;&gt;flame graph documentation&lt;/a&gt; to learn about the visualization and its features.&lt;/p&gt;
&lt;p&gt;Parca returns profiles aggregated over the selected time range. The absolute values in the flame graph grow as the time range gets bigger while keeping the relative values meaningful. You can zoom in on the time range to get a higher granularity profile, down to the point of a single Parca scrape interval.&lt;/p&gt;
&lt;p&gt;The flame graph displays the following columns:&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Column&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;level&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;The depth of the function in the call stack.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;value&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;The cumulative value including child functions.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;self&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;The value attributable to this function only.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;strong&gt;label&lt;/strong&gt;&lt;/td&gt;
              &lt;td&gt;The function name or symbol.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;p&gt;Units are automatically mapped from Parca to Grafana formats: &lt;code&gt;nanoseconds&lt;/code&gt; displays as &lt;code&gt;ns&lt;/code&gt; and &lt;code&gt;count&lt;/code&gt; displays as a short number.&lt;/p&gt;
&lt;h2 id=&#34;metrics-query-results&#34;&gt;Metrics query results&lt;/h2&gt;
&lt;p&gt;Metrics results represent the aggregated value over time of the selected profile type.&lt;/p&gt;
&lt;p&gt;Parca returns a separate time series for each label combination, allowing you to quickly identify spikes in the value of scraped profiles and zoom in to a particular time range for further investigation.&lt;/p&gt;
&lt;p&gt;The time-series value field is named after the sample type from the profile type ID. For example, a query using &lt;code&gt;process_cpu:samples:count:cpu:nanoseconds&lt;/code&gt; produces a value field named &lt;code&gt;samples&lt;/code&gt;.&lt;/p&gt;
]]></content><description>&lt;h1 id="parca-query-editor">Parca query editor&lt;/h1>
&lt;div class="admonition admonition-warning">&lt;blockquote>&lt;p class="title text-uppercase">Warning&lt;/p>&lt;p>This plugin is deprecated and will only receive critical security updates. Support will end on January 2, 2027.&lt;/p>&lt;/blockquote>&lt;/div>
&lt;p>This document explains how to use the Parca query editor to query and visualize continuous profiling data.&lt;/p></description></item><item><title>Parca template variables</title><link>https://grafana.com/docs/grafana/v13.3/datasources/parca/template-variables/</link><pubDate>Mon, 02 Nov 2026 21:20:48 +0000</pubDate><guid>https://grafana.com/docs/grafana/v13.3/datasources/parca/template-variables/</guid><content><![CDATA[&lt;h1 id=&#34;parca-template-variables&#34;&gt;Parca template variables&lt;/h1&gt;


&lt;div class=&#34;admonition admonition-warning&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Warning&lt;/p&gt;&lt;p&gt;This plugin is deprecated and will only receive critical security updates. Support will end on January 2, 2027.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;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.&lt;/p&gt;
&lt;p&gt;For an introduction to template variables, refer to the 
    &lt;a href=&#34;/docs/grafana/v13.3/dashboards/variables/&#34;&gt;Variables&lt;/a&gt; documentation.&lt;/p&gt;
&lt;h2 id=&#34;supported-variable-types&#34;&gt;Supported variable types&lt;/h2&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Variable type&lt;/th&gt;
              &lt;th&gt;Supported&lt;/th&gt;
              &lt;th&gt;Notes&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;Custom&lt;/td&gt;
              &lt;td&gt;Yes&lt;/td&gt;
              &lt;td&gt;Define a static list of values manually.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Text box&lt;/td&gt;
              &lt;td&gt;Yes&lt;/td&gt;
              &lt;td&gt;Enter a free-form value at the top of the dashboard.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Constant&lt;/td&gt;
              &lt;td&gt;Yes&lt;/td&gt;
              &lt;td&gt;Define a hidden, fixed value.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Data source&lt;/td&gt;
              &lt;td&gt;Yes&lt;/td&gt;
              &lt;td&gt;Select a data source instance by name.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Query&lt;/td&gt;
              &lt;td&gt;No&lt;/td&gt;
              &lt;td&gt;Parca doesn&amp;rsquo;t implement variable queries to dynamically populate drop-downs.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;

&lt;div class=&#34;admonition admonition-note&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Note&lt;/p&gt;&lt;p&gt;Parca doesn&amp;rsquo;t support query-type variables. You can&amp;rsquo;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.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;h2 id=&#34;use-variables-in-the-label-selector&#34;&gt;Use variables in the label selector&lt;/h2&gt;
&lt;p&gt;The Parca query editor&amp;rsquo;s label selector field supports template variable interpolation. Use the standard &lt;code&gt;$variablename&lt;/code&gt; or &lt;code&gt;${variablename}&lt;/code&gt; syntax. Variables are interpolated in the label selector only &amp;ndash; the profile type drop-down doesn&amp;rsquo;t support them.&lt;/p&gt;
&lt;h3 id=&#34;variable-syntax-options&#34;&gt;Variable syntax options&lt;/h3&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Syntax&lt;/th&gt;
              &lt;th&gt;Description&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;$variablename&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Simple syntax for most cases.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;${variablename}&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Use when the variable is adjacent to other text (for example, &lt;code&gt;${host}_suffix&lt;/code&gt;).&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;${variablename:format}&lt;/code&gt;&lt;/td&gt;
              &lt;td&gt;Apply a specific format to the variable value.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h2 id=&#34;example-filter-profiles-by-service&#34;&gt;Example: Filter profiles by service&lt;/h2&gt;
&lt;p&gt;Create a custom variable to switch between services in your profiling dashboard.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Navigate to the dashboard you want to update and click &lt;strong&gt;Edit&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click the &lt;strong&gt;Add new element&lt;/strong&gt; icon (blue plus sign).&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Variable&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Custom&lt;/strong&gt; as the variable type.&lt;/li&gt;
&lt;li&gt;Enter a &lt;strong&gt;Name&lt;/strong&gt;, for example &lt;code&gt;service&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Select an option in the &lt;strong&gt;Display&lt;/strong&gt; drop-down list to control where on the dashboard the variable is displayed.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Open variable editor&lt;/strong&gt; to open the &lt;strong&gt;Custom options&lt;/strong&gt; dialog box.&lt;/li&gt;
&lt;li&gt;Enter comma-separated values, for example &lt;code&gt;frontend, backend, api-gateway&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Apply&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Save&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;(Optional) Enter a description of the changes you&amp;rsquo;ve made.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Save&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Exit edit&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;In your Parca query&amp;rsquo;s label selector, reference the variable:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;text&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-text&#34;&gt;{job=&amp;#34;$service&amp;#34;}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;When you change the drop-down selection, the panel refreshes to show profiles for the selected service.&lt;/p&gt;
&lt;h2 id=&#34;example-filter-by-service-and-instance&#34;&gt;Example: Filter by service and instance&lt;/h2&gt;
&lt;p&gt;Create two custom variables to filter by multiple dimensions.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Create a variable named &lt;code&gt;service&lt;/code&gt; with custom values &lt;code&gt;frontend, backend, api-gateway&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Create a second variable named &lt;code&gt;instance&lt;/code&gt; with custom values for your instance addresses, for example &lt;code&gt;10.0.0.1:7070, 10.0.0.2:7070, 10.0.0.3:7070&lt;/code&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;In your Parca query&amp;rsquo;s label selector, reference both variables:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;text&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-text&#34;&gt;{job=&amp;#34;$service&amp;#34;, instance=&amp;#34;$instance&amp;#34;}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;h2 id=&#34;example-use-a-text-box-variable-for-free-form-filtering&#34;&gt;Example: Use a text box variable for free-form filtering&lt;/h2&gt;
&lt;p&gt;Create a text box variable for free-form label filtering.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Navigate to the dashboard you want to update and click &lt;strong&gt;Edit&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click the &lt;strong&gt;Add new element&lt;/strong&gt; icon (blue plus sign).&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Variable&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Textbox&lt;/strong&gt; as the variable type.&lt;/li&gt;
&lt;li&gt;Enter a &lt;strong&gt;Name&lt;/strong&gt;, for example &lt;code&gt;label_filter&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Optionally set a default &lt;strong&gt;Value&lt;/strong&gt;, for example &lt;code&gt;job=&amp;quot;my-service&amp;quot;&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Save&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;(Optional) Enter a description of the changes you&amp;rsquo;ve made.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Save&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Exit edit&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;In your Parca query&amp;rsquo;s label selector, reference the variable:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;text&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-text&#34;&gt;{$label_filter}&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;This lets you type any label matcher directly into the variable input at the top of the dashboard without editing the panel query.&lt;/p&gt;
&lt;h2 id=&#34;limitations&#34;&gt;Limitations&lt;/h2&gt;
&lt;p&gt;Parca template variable support has the following limitations:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;No query variable support:&lt;/strong&gt; You can&amp;rsquo;t use Parca as a data source for populating variable options. Define values manually with custom variables or use another data source.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Label selector only:&lt;/strong&gt; Variables are interpolated in the label selector field. The profile type drop-down doesn&amp;rsquo;t support variables.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;No free-form filters:&lt;/strong&gt; Parca doesn&amp;rsquo;t support free-form 
    &lt;a href=&#34;/docs/grafana/v13.3/visualizations/dashboards/build-dashboards/filter-group-by/&#34;&gt;filters&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;next-steps&#34;&gt;Next steps&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
    &lt;a href=&#34;/docs/grafana/v13.3/datasources/parca/query-editor/&#34;&gt;Build queries&lt;/a&gt; using your template variables.&lt;/li&gt;
&lt;li&gt;
    &lt;a href=&#34;/docs/grafana/v13.3/datasources/parca/troubleshooting/&#34;&gt;Troubleshoot issues&lt;/a&gt; if queries aren&amp;rsquo;t returning expected data.&lt;/li&gt;
&lt;/ul&gt;
]]></content><description>&lt;h1 id="parca-template-variables">Parca template variables&lt;/h1>
&lt;div class="admonition admonition-warning">&lt;blockquote>&lt;p class="title text-uppercase">Warning&lt;/p>&lt;p>This plugin is deprecated and will only receive critical security updates. Support will end on January 2, 2027.&lt;/p>&lt;/blockquote>&lt;/div>
&lt;p>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.&lt;/p></description></item><item><title>Troubleshoot Parca data source issues</title><link>https://grafana.com/docs/grafana/v13.3/datasources/parca/troubleshooting/</link><pubDate>Mon, 02 Nov 2026 21:20:48 +0000</pubDate><guid>https://grafana.com/docs/grafana/v13.3/datasources/parca/troubleshooting/</guid><content><![CDATA[&lt;h1 id=&#34;troubleshoot-parca-data-source-issues&#34;&gt;Troubleshoot Parca data source issues&lt;/h1&gt;


&lt;div class=&#34;admonition admonition-warning&#34;&gt;&lt;blockquote&gt;&lt;p class=&#34;title text-uppercase&#34;&gt;Warning&lt;/p&gt;&lt;p&gt;This plugin is deprecated and will only receive critical security updates. Support will end on January 2, 2027.&lt;/p&gt;&lt;/blockquote&gt;&lt;/div&gt;

&lt;p&gt;This page provides solutions to common issues you might encounter when installing, configuring, or using the Parca data source. For installation and configuration instructions, refer to 
    &lt;a href=&#34;/docs/grafana/v13.3/datasources/parca/configure/&#34;&gt;Configure the Parca data source&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;installation-issues&#34;&gt;Installation issues&lt;/h2&gt;
&lt;p&gt;These errors occur when Grafana can&amp;rsquo;t load the manually installed Parca data source. Because Grafana doesn&amp;rsquo;t bundle it, you build and install it yourself. Refer to 
    &lt;a href=&#34;/docs/grafana/v13.3/datasources/parca/configure/#install-the-data-source&#34;&gt;Install the data source&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id=&#34;parca-doesnt-appear-in-the-data-source-list&#34;&gt;Parca doesn&amp;rsquo;t appear in the data source list&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Searching for &lt;code&gt;Parca&lt;/code&gt; under &lt;strong&gt;Connections&lt;/strong&gt; &amp;gt; &lt;strong&gt;Add new connection&lt;/strong&gt; returns no results.&lt;/li&gt;
&lt;li&gt;Existing Parca data sources report the &lt;code&gt;parca&lt;/code&gt; plugin isn&amp;rsquo;t found.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Possible causes and solutions:&lt;/strong&gt;&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Cause&lt;/th&gt;
              &lt;th&gt;Solution&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;Data source isn&amp;rsquo;t installed&lt;/td&gt;
              &lt;td&gt;Build and install the Parca data source. Grafana 13.2 and later don&amp;rsquo;t bundle it.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Wrong plugin directory&lt;/td&gt;
              &lt;td&gt;Confirm the files are in a &lt;code&gt;parca&lt;/code&gt; directory inside the configured plugin path. Refer to the &lt;code&gt;plugins&lt;/code&gt; option in 
    &lt;a href=&#34;/docs/grafana/v13.3/setup-grafana/configure-grafana/#plugins&#34;&gt;Configure Grafana&lt;/a&gt;.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;&lt;code&gt;plugin.json&lt;/code&gt; missing&lt;/td&gt;
              &lt;td&gt;Verify the &lt;code&gt;parca&lt;/code&gt; directory contains &lt;code&gt;plugin.json&lt;/code&gt; at its top level. Copy the &lt;em&gt;contents&lt;/em&gt; of &lt;code&gt;dist/&lt;/code&gt;, not the &lt;code&gt;dist&lt;/code&gt; directory itself.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Unsigned plugin blocked&lt;/td&gt;
              &lt;td&gt;Add &lt;code&gt;allow_loading_unsigned_plugins = parca&lt;/code&gt; to the &lt;code&gt;[plugins]&lt;/code&gt; section of your Grafana configuration file and restart Grafana.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Grafana wasn&amp;rsquo;t restarted&lt;/td&gt;
              &lt;td&gt;Restart Grafana. It discovers plugins only at startup.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;File permissions&lt;/td&gt;
              &lt;td&gt;Verify the Grafana process can read the files. On package-based installations, run &lt;code&gt;chown -R grafana:grafana&lt;/code&gt; on the &lt;code&gt;parca&lt;/code&gt; directory.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;p&gt;When Grafana loads the Parca data source, it logs the following warning on startup:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;text&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-text&#34;&gt;WARN[...] Permitting unsigned plugin. This is not recommended   pluginId=parca&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;If this warning is absent, Grafana didn&amp;rsquo;t load it. Search the server log for &lt;code&gt;parca&lt;/code&gt; to find the reason.&lt;/p&gt;
&lt;h3 id=&#34;queries-fail-but-the-data-source-appears&#34;&gt;Queries fail but the data source appears&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The Parca data source appears in the list and you can save it, but &lt;strong&gt;Save &amp;amp; test&lt;/strong&gt; or any query fails.&lt;/li&gt;
&lt;li&gt;The server log mentions a missing or non-executable backend binary.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Solutions:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Verify you ran both build steps. The data source needs its Go backend as well as its frontend assets, so &lt;code&gt;npm run build&lt;/code&gt; alone isn&amp;rsquo;t enough. Run &lt;code&gt;go run github.com/magefile/mage -v buildAll&lt;/code&gt; and reinstall.&lt;/li&gt;
&lt;li&gt;Verify the &lt;code&gt;parca&lt;/code&gt; directory contains a &lt;code&gt;gpx_grafana-parca-datasource_*&lt;/code&gt; executable for your operating system and architecture.&lt;/li&gt;
&lt;li&gt;Verify the executable has the execute permission bit set and isn&amp;rsquo;t blocked by &lt;code&gt;noexec&lt;/code&gt; on the mounted filesystem.&lt;/li&gt;
&lt;li&gt;Restart Grafana after replacing any files.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;connection-errors&#34;&gt;Connection errors&lt;/h2&gt;
&lt;p&gt;These errors occur when Grafana can&amp;rsquo;t reach the Parca instance.&lt;/p&gt;
&lt;h3 id=&#34;save--test-fails&#34;&gt;&amp;ldquo;Save &amp;amp; test&amp;rdquo; fails&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Data source test times out or returns an error.&lt;/li&gt;
&lt;li&gt;Unable to connect to the Parca server.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Possible causes and solutions:&lt;/strong&gt;&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Cause&lt;/th&gt;
              &lt;th&gt;Solution&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;Incorrect URL&lt;/td&gt;
              &lt;td&gt;Verify the URL points to your Parca HTTP endpoint (for example, &lt;code&gt;http://localhost:7070&lt;/code&gt;). Grafana connects using gRPC-Web.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Parca isn&amp;rsquo;t running&lt;/td&gt;
              &lt;td&gt;Verify that your Parca instance is running and accessible from the Grafana server.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Firewall blocking&lt;/td&gt;
              &lt;td&gt;Check that firewall rules allow outbound traffic from Grafana to the Parca server on the configured port.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;TLS misconfiguration&lt;/td&gt;
              &lt;td&gt;If using HTTPS, verify that TLS certificates are correctly configured on both Grafana and Parca.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;p&gt;When the connection succeeds, the health check displays &lt;strong&gt;&amp;ldquo;Data source is working&amp;rdquo;&lt;/strong&gt;. The health check queries the available profile types from the Parca server, so any connectivity or authentication issue causes it to fail.&lt;/p&gt;
&lt;h3 id=&#34;connection-refused-or-timeout-errors&#34;&gt;Connection refused or timeout errors&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Queries fail with network errors.&lt;/li&gt;
&lt;li&gt;Intermittent connection issues.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Solutions:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Verify network connectivity from the Grafana server to the Parca endpoint.&lt;/li&gt;
&lt;li&gt;Check that the Parca server is healthy and responding to requests.&lt;/li&gt;
&lt;li&gt;If a reverse proxy sits between Grafana and Parca, verify it forwards gRPC-Web requests without buffering or rewriting them. The Parca data source queries Parca using gRPC-Web over the Parca HTTP endpoint.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;query-errors&#34;&gt;Query errors&lt;/h2&gt;
&lt;p&gt;These errors occur when running queries against the Parca data source.&lt;/p&gt;
&lt;h3 id=&#34;invalid-report-type-or-try-updating-parca-to-v019&#34;&gt;&amp;ldquo;Invalid report type&amp;rdquo; or &amp;ldquo;try updating Parca to v0.19&#43;&amp;rdquo;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Queries fail with an error containing &amp;ldquo;invalid report type.&amp;rdquo;&lt;/li&gt;
&lt;li&gt;The error message suggests updating Parca to v0.19&#43;.&lt;/li&gt;
&lt;li&gt;Flame graph data doesn&amp;rsquo;t load.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Solutions:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Upgrade your Parca server to v0.19 or later. This error occurs because older versions of Parca don&amp;rsquo;t support the flame graph Arrow format that Grafana requires.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;unknown-report-type-returned-from-query-update-parca&#34;&gt;&lt;code&gt;Unknown report type returned from query. update parca&lt;/code&gt;&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Profile queries fail with this exact error message.&lt;/li&gt;
&lt;li&gt;Metric queries may still succeed.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Solutions:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Upgrade your Parca server. This error occurs when the Parca server returns a response format that Grafana doesn&amp;rsquo;t recognize. Updating to the latest Parca version resolves the issue.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id=&#34;no-data-or-empty-results&#34;&gt;&amp;ldquo;No data&amp;rdquo; or empty results&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Query runs without error but returns no data.&lt;/li&gt;
&lt;li&gt;Flame graph or metrics panel shows &amp;ldquo;No data.&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Possible causes and solutions:&lt;/strong&gt;&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Cause&lt;/th&gt;
              &lt;th&gt;Solution&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;No profile type selected&lt;/td&gt;
              &lt;td&gt;Select a profile type from the drop-down menu. This field is required &amp;ndash; queries silently return empty data without it.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Time range doesn&amp;rsquo;t contain data&lt;/td&gt;
              &lt;td&gt;Expand the dashboard time range or verify that profiling data exists for the selected period.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Label selector too restrictive&lt;/td&gt;
              &lt;td&gt;Remove or broaden label filters to verify that matching profiles exist.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Label selector syntax error&lt;/td&gt;
              &lt;td&gt;Verify the label selector uses valid syntax (for example, &lt;code&gt;{job=&amp;quot;my-service&amp;quot;}&lt;/code&gt;). Refer to the 
    &lt;a href=&#34;/docs/grafana/v13.3/datasources/parca/query-editor/&#34;&gt;query editor documentation&lt;/a&gt; for supported operators.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Parca isn&amp;rsquo;t scraping targets&lt;/td&gt;
              &lt;td&gt;Check your Parca configuration to verify that targets are being scraped and profiles collected.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h2 id=&#34;query-editor-issues&#34;&gt;Query editor issues&lt;/h2&gt;
&lt;p&gt;These issues relate to the query editor interface.&lt;/p&gt;
&lt;h3 id=&#34;profile-type-drop-down-is-empty&#34;&gt;Profile type drop-down is empty&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The profile type selector shows no options.&lt;/li&gt;
&lt;li&gt;The button text reads &lt;strong&gt;Select a profile type&lt;/strong&gt; with nothing to choose.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Possible causes and solutions:&lt;/strong&gt;&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Cause&lt;/th&gt;
              &lt;th&gt;Solution&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;Connection to Parca failed&lt;/td&gt;
              &lt;td&gt;Verify the data source connection using &lt;strong&gt;Save &amp;amp; test&lt;/strong&gt; in the data source settings.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Parca has no scraped data&lt;/td&gt;
              &lt;td&gt;Verify that Parca is scraping targets and has collected profile data.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Network or auth error&lt;/td&gt;
              &lt;td&gt;Check the browser developer console for failed requests to the &lt;code&gt;profileTypes&lt;/code&gt; resource endpoint.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;both-query-type-is-missing&#34;&gt;&amp;ldquo;Both&amp;rdquo; query type is missing&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Only &lt;strong&gt;Metric&lt;/strong&gt; and &lt;strong&gt;Profile&lt;/strong&gt; appear in the query type options.&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;Both&lt;/strong&gt; option isn&amp;rsquo;t available.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This is expected behavior. The &lt;strong&gt;Both&lt;/strong&gt; query type is only available in 
    &lt;a href=&#34;/docs/grafana/v13.3/explore/&#34;&gt;Explore&lt;/a&gt;. Dashboard panels support only one visualization type, so Grafana limits the options to &lt;strong&gt;Metric&lt;/strong&gt; or &lt;strong&gt;Profile&lt;/strong&gt;. If a query set to &lt;strong&gt;Both&lt;/strong&gt; in Explore is used in a dashboard, Grafana automatically changes it to &lt;strong&gt;Profile&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id=&#34;autocomplete-suggestions-dont-appear&#34;&gt;Autocomplete suggestions don&amp;rsquo;t appear&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;No label name or value suggestions appear when typing in the label selector.&lt;/li&gt;
&lt;li&gt;Autocomplete works for some labels but not others.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Possible causes and solutions:&lt;/strong&gt;&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Cause&lt;/th&gt;
              &lt;th&gt;Solution&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;Label names haven&amp;rsquo;t loaded&lt;/td&gt;
              &lt;td&gt;Wait a moment after opening the query editor. Autocomplete loads label names from Parca on initialization.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Connection to Parca failed&lt;/td&gt;
              &lt;td&gt;Verify the data source connection. Autocomplete queries the &lt;code&gt;labelNames&lt;/code&gt; and &lt;code&gt;labelValues&lt;/code&gt; resource endpoints.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Cursor position not recognized&lt;/td&gt;
              &lt;td&gt;Place your cursor inside curly braces &lt;code&gt;{}&lt;/code&gt; and after an &lt;code&gt;=&lt;/code&gt; sign for value suggestions. Autocomplete triggers on specific characters: &lt;code&gt;{&lt;/code&gt;, &lt;code&gt;,&lt;/code&gt;, &lt;code&gt;=&lt;/code&gt;, &lt;code&gt;~&lt;/code&gt;, &lt;code&gt;&amp;quot;&lt;/code&gt;, space.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h2 id=&#34;template-variable-issues&#34;&gt;Template variable issues&lt;/h2&gt;
&lt;p&gt;These issues relate to using template variables with the Parca data source.&lt;/p&gt;
&lt;h3 id=&#34;variables-dont-resolve-in-queries&#34;&gt;Variables don&amp;rsquo;t resolve in queries&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Variable syntax like &lt;code&gt;$variable&lt;/code&gt; appears literally in query results instead of being replaced.&lt;/li&gt;
&lt;li&gt;Queries return no data when using variables.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Possible causes and solutions:&lt;/strong&gt;&lt;/p&gt;
&lt;section class=&#34;expand-table-wrapper&#34;&gt;&lt;div class=&#34;button-div&#34;&gt;
      &lt;button class=&#34;expand-table-btn&#34;&gt;Expand table&lt;/button&gt;
    &lt;/div&gt;&lt;div class=&#34;responsive-table-wrapper&#34;&gt;
    &lt;table&gt;
      &lt;thead&gt;
          &lt;tr&gt;
              &lt;th&gt;Cause&lt;/th&gt;
              &lt;th&gt;Solution&lt;/th&gt;
          &lt;/tr&gt;
      &lt;/thead&gt;
      &lt;tbody&gt;
          &lt;tr&gt;
              &lt;td&gt;Variable used in profile type&lt;/td&gt;
              &lt;td&gt;Template variables are only supported in the &lt;strong&gt;label selector&lt;/strong&gt; field. The profile type drop-down doesn&amp;rsquo;t support variable interpolation.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Variable not defined&lt;/td&gt;
              &lt;td&gt;Verify the variable exists in &lt;strong&gt;Dashboard options&lt;/strong&gt; &amp;gt; &lt;strong&gt;Variables&lt;/strong&gt; and has valid values.&lt;/td&gt;
          &lt;/tr&gt;
          &lt;tr&gt;
              &lt;td&gt;Wrong variable syntax&lt;/td&gt;
              &lt;td&gt;Use &lt;code&gt;$variablename&lt;/code&gt; or &lt;code&gt;${variablename}&lt;/code&gt;. Verify there are no typos in the variable name.&lt;/td&gt;
          &lt;/tr&gt;
      &lt;/tbody&gt;
    &lt;/table&gt;
  &lt;/div&gt;
&lt;/section&gt;&lt;h3 id=&#34;cant-use-parca-to-populate-variable-options&#34;&gt;Can&amp;rsquo;t use Parca to populate variable options&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;Symptoms:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;When creating a query-type variable with the Parca data source, no values are returned.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Parca doesn&amp;rsquo;t support query-type variables. You can&amp;rsquo;t use the Parca data source to dynamically populate variable drop-downs. Use &lt;strong&gt;Custom&lt;/strong&gt; variables with manually defined values, &lt;strong&gt;Text box&lt;/strong&gt; variables for free-form input, or a different data source for query-type variables. Refer to 
    &lt;a href=&#34;/docs/grafana/v13.3/datasources/parca/template-variables/&#34;&gt;Parca template variables&lt;/a&gt; for supported variable types and examples.&lt;/p&gt;
&lt;h2 id=&#34;enable-debug-logging&#34;&gt;Enable debug logging&lt;/h2&gt;
&lt;p&gt;To capture detailed error information for troubleshooting:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;Set the Grafana log level to &lt;code&gt;debug&lt;/code&gt; in the configuration file:&lt;/p&gt;

&lt;div class=&#34;code-snippet &#34;&gt;&lt;div class=&#34;lang-toolbar&#34;&gt;
    &lt;span class=&#34;lang-toolbar__item lang-toolbar__item-active&#34;&gt;ini&lt;/span&gt;
    &lt;span class=&#34;code-clipboard&#34;&gt;
      &lt;button x-data=&#34;app_code_snippet()&#34; x-init=&#34;init()&#34; @click=&#34;copy()&#34;&gt;
        &lt;img class=&#34;code-clipboard__icon&#34; src=&#34;/media/images/icons/icon-copy-small-2.svg&#34; alt=&#34;Copy code to clipboard&#34; width=&#34;14&#34; height=&#34;13&#34;&gt;
        &lt;span&gt;Copy&lt;/span&gt;
      &lt;/button&gt;
    &lt;/span&gt;
    &lt;div class=&#34;lang-toolbar__border&#34;&gt;&lt;/div&gt;
  &lt;/div&gt;&lt;div class=&#34;code-snippet &#34;&gt;
    &lt;pre data-expanded=&#34;false&#34;&gt;&lt;code class=&#34;language-ini&#34;&gt;[log]
level = debug&lt;/code&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Review logs in &lt;code&gt;/var/log/grafana/grafana.log&lt;/code&gt; (or your configured log location).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Look for Parca-specific entries that include request and response details. Common log messages include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;&amp;quot;Failed to get profile types&amp;quot;&lt;/code&gt; &amp;ndash; profile type loading failed.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;quot;Failed to get label names&amp;quot;&lt;/code&gt; &amp;ndash; label autocomplete data failed to load.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;quot;Failed to process query&amp;quot;&lt;/code&gt; &amp;ndash; a query to Parca returned an error.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&amp;quot;Failed to unmarshall query&amp;quot;&lt;/code&gt; &amp;ndash; the query JSON couldn&amp;rsquo;t be parsed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Reset the log level to &lt;code&gt;info&lt;/code&gt; after troubleshooting to avoid excessive log volume.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id=&#34;get-additional-help&#34;&gt;Get additional help&lt;/h2&gt;
&lt;p&gt;If you&amp;rsquo;ve tried the solutions on this page and still encounter issues:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Check the &lt;a href=&#34;https://community.grafana.com/&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Grafana community forums&lt;/a&gt; for similar issues.&lt;/li&gt;
&lt;li&gt;Review the &lt;a href=&#34;https://github.com/grafana/grafana-parca-datasource/issues&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;repository issues&lt;/a&gt; for known bugs related to the Parca data source.&lt;/li&gt;
&lt;li&gt;Refer to the &lt;a href=&#34;https://www.parca.dev/docs&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;Parca documentation&lt;/a&gt; for service-specific guidance.&lt;/li&gt;
&lt;li&gt;Report new bugs in the &lt;a href=&#34;https://github.com/grafana/grafana-parca-datasource/issues/new&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;grafana/grafana-parca-datasource&lt;/a&gt; repository. The Parca data source is deprecated and only receives critical security updates until January 2, 2027.&lt;/li&gt;
&lt;li&gt;When reporting issues, include:
&lt;ul&gt;
&lt;li&gt;Grafana version&lt;/li&gt;
&lt;li&gt;Parca server version&lt;/li&gt;
&lt;li&gt;Data source commit or version you built from&lt;/li&gt;
&lt;li&gt;Error messages (redact sensitive information)&lt;/li&gt;
&lt;li&gt;Steps to reproduce&lt;/li&gt;
&lt;li&gt;Relevant configuration (redact credentials)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
]]></content><description>&lt;h1 id="troubleshoot-parca-data-source-issues">Troubleshoot Parca data source issues&lt;/h1>
&lt;div class="admonition admonition-warning">&lt;blockquote>&lt;p class="title text-uppercase">Warning&lt;/p>&lt;p>This plugin is deprecated and will only receive critical security updates. Support will end on January 2, 2027.&lt;/p></description></item></channel></rss>