Skip to main content

SLO objective unique identifier

Reading time: 0 minute(s) (0 words)

In addition to a Display name (displayName), every SLO objective you create in Nobl9 features a machine-readable Name (name) that serves as its unique identifier. While related, they serve different purposes and have different rules governing them.

The name is the primary, machine-readable identifier for an objective. Nobl9 requires the name to be unique across all objectives within a single SLO and can only contain lowercase alphanumeric characters or hyphens and must start and end with an alphanumeric character.

Conversely, the displayName is a user-friendly, human-readable label shown in the Nobl9 web application. It has fewer character restrictions and does not have to be unique.

You can define the objective name in two ways:

  1. Manual assignment: You explicitly specify the name for each objective in the YAML definition when creating an SLO or using the Nobl9 web application. When a name is set manually, it becomes read-only after the SLO is saved.
  2. Automatic generation: If you omit the name field (possible only in the Nobl9 web application), Nobl9 automatically generates it from the displayName, converting it into a compliant format. An auto-generated name can be modified one time using an SLOs-as-code tool.

Here’s a quick comparison of the two fields:

AttributeNameDisplay name
PurposeUnique machine-readable identifier for API and sloctlHuman-readable label for the UI
UniquenessMust be unique within the SLONot required
FormatAlpha-numeric lowercase characters and dashesFlexible, allows most characters
SourceCan be set manually or auto-generatedMust be provided by the user
MutabilityRead-only after being set (manual) or edited once (auto-generated)Always editable