This page describes what tags are, how to use them, and where to use tags in Cisco Cloud Observability.

Tags are labels consisting of key-value pairs that are associated with your entity data, such as hosts, load balancers, pods, service instances, and so on. Cisco Cloud Observability displays:

  • Promoted attributes/Propagated TagsCisco Cloud Observability automatically promotes certain attributes to tags. For example, region, namespace, and cluster. These attributes are sourced from cloud services, Kubernetes® workloads, and OpenTelemetry™ resource attributes. 
  • Global tags: Pre-defined tags in the Cisco Cloud Observability platform. These are reserved tags that are optimized and propagated to all metrics, events, logs, and traces (MELT) data that originates from a specific entity. Global tags are a subset of the attributes that are promoted to tags.  
  • Imported tags: Tags that are imported from Cloud Collectors and labels from Kubernetes workloads. 

Use Cases for Tags

Tags enable you to discover and dynamically organize data across your entire observable stack. You can use tags to:

  • Filter and group entities and their corresponding MELT data.
  • Limit the health scope of entities.
  • Quickly troubleshoot and analyze the root cause of issues.

Tag Format and Restrictions

The tag format is key:value, where value is a string. The following restrictions apply to tags:

  • Allowed characters: Letters, numbers, and spaces representable in UTF-8, and the following characters: + - = . _ : / @
  • Imported tags: Replace unsupported characters with an underscore (_).
  • Maximum key length: 512 characters
  • Maximum value length: 256 characters
  • Maximum number of tags per entity: 100

Tag keys:

  • Maximum value length < 600
  • Must follow the following regex pattern: "[a-zA-Z0-9+\\-=._:/@ ]*

Supported Operators

You can use these operators to filter data using tags:

OperatorsSyntax
=<tag> = <value>
!=<tag> != <value>
in<tag> in [<value1>, <value2>, ..., <valueN>]

Imported Tags

You can import tags associated with cloud entities when you connect your cloud services to Cisco Cloud Observability. By default, all tags are imported. Importing tags allows you to filter, group, and reduce health rule scope using tags. To enable importing tags and specify which tags to exclude, see:

For Kubernetes entities, labels on Kubernetes objects are ingested automatically and presented as custom tags in Cisco Cloud Observability. These tags enable you to filter, group, and reduce health rule scope for entities. To exclude specific labels, use labels within the filter parameter during Cisco AppDynamics Collector configuration. See Cisco AppDynamics Collectors Settings

Global Tags

Global tags are pre-defined, optimized, and immutable tag keys that you can use to tag your infrastructure. Global tags are a subset of the attributes that are promoted to tags. When an entity is tagged with a global tag, Cisco Cloud Observability automatically propagates the same tag to the metrics, events, logs, and traces generated from the entity. You can use global tags to filter and group MELT data across different entity types. For example, the tag region=eu-west-2 can be used to return pod, host, and service instances. Filtering MELT data using global tags is currently only supported in the API.

Propagated Tags

Some important attributes are promoted to tags. These tags belonging to an entity type are propagated to other entities based on the entity relationship model. For example, the aws.region tag on a worker node is propagated to a pod on the same worker node. 

The following sections include the lists of propagated tags along with the entities on which the tags are propagated:

Propagated Tags from Kubernetes 

You can use these tags to filter information for the listed entities in the table:

Promoted AttributesTagsEntities
  • service.namespace
  • k8s.namespace
  • k8s.namespace.name

namespace

  • k8s.cluster.name
  • aws.ecs.cluster.name

cluster

k8s.workload.name

workload.name

To observe Kubernetes entities, see Kubernetes Entities.

Propagated Tags from AWS

You can use these tags to filter information for the listed entities in the table:

To observe AWS entities, see Observe AWS Entities.

Propagated Tags from Azure

You can use these tags to filter information for the listed entities in the table:

To observe Azure entities, see Observe Azure Entities.

Propagated Tags from Google Cloud Platform

You can use these tags to filter information for the listed entities in the table:

To observe Google Cloud Platform entities, see Observe Google Cloud Platform Entities.

Use Tags

You can use tags to create filters to display only the required entities and data.

Observe Page

On the Observe page, you can group entities and create filters using global tags. See Filters

Observe displays only global tags and does not display tags that are imported from cloud connections.

Cisco Cloud Observability uses the following global tags:

  • aws.region

  • azure.location
  • azure.resource_group
  • cluster
  • env
  • namespace
  • owner
  • service
  • version

Entity-Centric Page List View

On the entity-centric page list view, you can create filters using tags. Use tags to filter entities and limit the scope of health rule evaluation. See Filters and Health Rules.

Cloud Services Tags

When creating a cloud connection, you can limit the cloud service instances to monitor, based on tags. The following table displays examples of tag expressions:

ExpressionDescriptionExample
Simple ExpressionPerforms a key-value match using the = and != operators.
  • tags(project) = 'cloudcollectors'
  • tags(project) != 'cloudcollectors'
In ExpressionIncludes or excludes a set of values for a given key using the IN operator.
  • tags(jira) IN [ 'XTNXBL', 'ACE' ]
  • !(tags(region)  IN [ 'US', 'IN' ])
Has ExpressionChecks for the presence or absence of a given key using the HAS operator.
  • HAS tags(createdBy)
  • !(HAS tags(createdBy))
Logical ExpressionCombines two or more expressions using the && and || operators.
  • tags(project) = 'cloudcollectors' || tags(jira) = 'XTNXBL'
  • tags(project) = 'cloudcollectors' && tags(jira) = 'XTNXBL'
Expression GroupGroups multiple expressions to control the order of evaluation using the ( ) operators. Nested groups are not supported.

(tags(project) = 'cloudcollectors' && tags(jira) = 'XTNXBL')

Complex ExpressionCombines two or more expressions.

(tags(env) = 'prod' || tags(env) = 'production') )
&& tags(project)  = 'cloudcollectors'  
&& tags(jira) IN [ 'XTNSBL', 'ACE' ]  
&& !(tags(region) IN ['US', 'IN'] )
&& HAS tags(monitorEnabled) 
&& !(HAS tags(restrictedUse))

For more information on cloud connections, see: 

  1. Configure AWS Cloud Connections
  2. Configure Azure Cloud Connection
  3. Configure Google Cloud Platform Connection

OpenTelemetry™ and Kubernetes® (as applicable) are trademarks of The Linux Foundation®.