SigNoz/signoz · error · model.ApiError

could not deprovision dashboards: %w

Error message

could not deprovision dashboards: %w

What it means

Internal error raised inside the uninstall transaction when deprovisionDashboards fails to delete the dashboards associated with an integration. It aborts the transaction, so the installed-integration row is also not deleted.

Source

Thrown at pkg/query-service/app/integrations/manager.go:283

	return &IntegrationsListItem{
		IntegrationSummary: integrationDetails.IntegrationSummary,
		IsInstalled:        true,
	}, nil
}

func (m *Manager) UninstallIntegration(
	ctx context.Context,
	orgId string,
	integrationId string,
) *model.ApiError {
	orgUUID, err := valuer.NewUUID(orgId)
	if err != nil {
		return model.BadRequest(fmt.Errorf("invalid org id: %w", err))
	}

	err = m.installedIntegrationsRepo.runInTx(ctx, func(ctx context.Context) error {
		if err := m.deprovisionDashboards(ctx, orgUUID, integrationId); err != nil {
			return model.InternalError(fmt.Errorf("could not deprovision dashboards: %w", err))
		}
		apiErr := m.installedIntegrationsRepo.delete(ctx, orgId, integrationId)
		if apiErr != nil {
			return model.WrapApiError(apiErr, "could not delete installed integration")
		}

		return nil
	})
	if err != nil {
		return model.WrapApiError(model.InternalError(err), "could not uninstall integration")
	}
	return nil
}

func (m *Manager) GetPipelinesForInstalledIntegrations(
	ctx context.Context,
	orgId string,
) ([]pipelinetypes.GettablePipeline, error) {

View on GitHub (pinned to 5069bf80b0)

Solutions

  1. Check query-service logs for the wrapped deprovisionDashboards error
  2. Verify database connectivity and dashboards module health
  3. Repair or remove stale integration_dashboard rows, then retry uninstall
  4. Retry the uninstall after the underlying issue is fixed (it runs in a transaction, so partial state is rolled back)
Defensive patterns

Strategy: try-catch

Try / catch

err := mgr.UninstallIntegration(ctx, orgId, id)
if err != nil { inspect wrapped 'could not deprovision dashboards' cause; fix stale rows; retry uninstall }

Prevention

When it happens

Trigger: Uninstalling an integration while the dashboard module (CreateV2/delete path) errors — e.g. database issues, missing dashboard rows in an inconsistent state, or dashboard module misconfiguration.

Common situations: Partially failed prior installs leaving inconsistent integration_dashboard rows, DB outages, or version drift in the dashboards module.

Related errors


AI-assisted analysis of SigNoz/signoz@5069bf80b0 (2026-08-28). Data as JSON: /api/errors/5fdf3390174c1fbb. Report an issue: GitHub.