Flame Graph: Analyze with Grafana Assistant (#108684)

* Bare-bones mocked integration

* Create correct context based on the query

* Add data source name

* Do not bundle grafana/assistant with flame graph

* Rename component

* Add tests

* Mock grafana/assistant

* Update feature toggle and allow hiding the button

* Update deps

* Update types

* Update yarn.lock

* Fix typo in feature toggle description

* Enable grafanaAssistantInProfilesDrilldown by default

* Enable grafanaAssistantInProfilesDrilldown by default

* Show Analyze Flame Graph button only if there's context for the assistant
This commit is contained in:
Piotr Jamróz
2025-08-19 09:54:00 +02:00
committed by GitHub
parent ea833ddf1f
commit bbf01a6383
19 changed files with 539 additions and 8 deletions
+8
View File
@@ -1638,6 +1638,14 @@ var (
Owner: grafanaObservabilityTracesAndProfilingSquad,
FrontendOnly: true,
},
{
Name: "grafanaAssistantInProfilesDrilldown",
Description: "Enables integration with Grafana Assistant in Profiles Drilldown",
Stage: FeatureStageGeneralAvailability,
Owner: grafanaObservabilityTracesAndProfilingSquad,
FrontendOnly: true,
Expression: "true",
},
{
Name: "postgresDSUsePGX",
Description: "Enables using PGX instead of libpq for PostgreSQL datasource",
+1
View File
@@ -213,6 +213,7 @@ localizationForPlugins,experimental,@grafana/plugins-platform-backend,false,fals
unifiedNavbars,GA,@grafana/plugins-platform-backend,false,false,true
logsPanelControls,preview,@grafana/observability-logs,false,false,true
metricsFromProfiles,experimental,@grafana/observability-traces-and-profiling,false,false,true
grafanaAssistantInProfilesDrilldown,GA,@grafana/observability-traces-and-profiling,false,false,true
postgresDSUsePGX,experimental,@grafana/oss-big-tent,false,false,false
tempoAlerting,experimental,@grafana/observability-traces-and-profiling,false,false,true
pluginsAutoUpdate,experimental,@grafana/plugins-platform-backend,false,false,false
1 Name Stage Owner requiresDevMode RequiresRestart FrontendOnly
213 unifiedNavbars GA @grafana/plugins-platform-backend false false true
214 logsPanelControls preview @grafana/observability-logs false false true
215 metricsFromProfiles experimental @grafana/observability-traces-and-profiling false false true
216 grafanaAssistantInProfilesDrilldown GA @grafana/observability-traces-and-profiling false false true
217 postgresDSUsePGX experimental @grafana/oss-big-tent false false false
218 tempoAlerting experimental @grafana/observability-traces-and-profiling false false true
219 pluginsAutoUpdate experimental @grafana/plugins-platform-backend false false false
+4
View File
@@ -863,6 +863,10 @@ const (
// Enables creating metrics from profiles and storing them as recording rules
FlagMetricsFromProfiles = "metricsFromProfiles"
// FlagGrafanaAssistantInProfilesDrilldown
// Enables integration with Grafana Assistant in Profiles Drilldown
FlagGrafanaAssistantInProfilesDrilldown = "grafanaAssistantInProfilesDrilldown"
// FlagPostgresDSUsePGX
// Enables using PGX instead of libpq for PostgreSQL datasource
FlagPostgresDSUsePGX = "postgresDSUsePGX"
+31
View File
@@ -1472,6 +1472,37 @@
"codeowner": "@grafana/plugins-platform-backend"
}
},
{
"metadata": {
"name": "grafanaAssistantInProfilesDrilldown",
"resourceVersion": "1754572610001",
"creationTimestamp": "2025-08-01T07:43:17Z",
"annotations": {
"grafana.app/updatedTimestamp": "2025-08-07 13:16:50.001205 +0000 UTC"
}
},
"spec": {
"description": "Enables integration with Grafana Assistant in Profiles Drilldown",
"stage": "GA",
"codeowner": "@grafana/observability-traces-and-profiling",
"frontend": true,
"expression": "true"
}
},
{
"metadata": {
"name": "grafanaAssistantInProfilesDrillfown",
"resourceVersion": "1754034112469",
"creationTimestamp": "2025-08-01T07:41:52Z",
"deletionTimestamp": "2025-08-01T07:43:17Z"
},
"spec": {
"description": "Enables interation with Grafana Assitant in Profiles Drilldown",
"stage": "experimental",
"codeowner": "@grafana/observability-traces-and-profiling",
"frontend": true
}
},
{
"metadata": {
"name": "grafanaManagedRecordingRules",