SigNoz/signoz · error
CodeInternal
CodeInternal
Error message
unable to fetch license data with upstream server
What it means
SigNoz EE licensing Activate() calls the upstream Zeus license server (GetLicense); any upstream failure is wrapped as CodeInternal with this message.
Source
Thrown at ee/licensing/httplicensing/provider.go:101
organizations, err := provider.orgGetter.ListByOwnedKeyRange(ctx)
if err != nil {
return err
}
for _, organization := range organizations {
err := provider.Refresh(ctx, organization.ID)
if err != nil {
return err
}
}
return nil
}
func (provider *provider) Activate(ctx context.Context, organizationID valuer.UUID, key string) error {
data, err := provider.zeus.GetLicense(ctx, key)
if err != nil {
return errors.Wrapf(err, errors.TypeInternal, errors.CodeInternal, "unable to fetch license data with upstream server")
}
license, err := licensetypes.NewLicense(data, organizationID)
if err != nil {
return errors.Wrapf(err, errors.TypeInternal, errors.CodeInternal, "failed to create license entity")
}
storableLicense := licensetypes.NewStorableLicenseFromLicense(license)
err = provider.store.Create(ctx, storableLicense)
if err != nil {
return err
}
return nil
}
func (provider *provider) GetActive(ctx context.Context, organizationID valuer.UUID) (*licensetypes.License, error) {
storableLicenses, err := provider.store.GetAll(ctx, organizationID)View on GitHub (pinned to 5069bf80b0)
Solutions
- Restore outbound connectivity to the SigNoz licensing (Zeus) endpoint from the signoz service
- Check proxy/HTTP_PROXY env vars and DNS resolution inside the container
- Retry activation once network is confirmed healthy (transient 5xx)
- Inspect the wrapped cause error for HTTP status/TLS details and contact SigNoz support if upstream persists
Defensive patterns
Strategy: retry
Try / catch
err := licensing.Activate(ctx, orgID, key)
if err != nil {
if errors.Ast(err, errors.CodeInternal) && strings.Contains(err.Error(), "upstream") { backoff.Retry(activate, 3) }
} Prevention
- Allow egress to the SigNoz licensing domain from the signoz deployment
- Configure proxy env vars for air-gapped setups
- Surface the wrapped cause in logs for diagnosis
When it happens
Trigger: POST /api/v1/activate (or programmatic licensing.Activate) with a valid-format key while the Zeus server is unreachable, returns 5xx, TLS fails, or the response cannot be retrieved.
Common situations: Egress firewall blocking calls to the SigNoz licensing endpoint; DNS/proxy issues in air-gapped or on-prem deployments; Zeus outage; expired server TLS certs; retry after network partition.
Related errors
AI-assisted analysis of SigNoz/signoz@5069bf80b0 (2026-08-28).
Data as JSON: /api/errors/ca83ac1354efa9c3.
Report an issue: GitHub.