This documentation and the Cisco Observability Platform functionalities it describes are subject to change. Data saved on the platform may disappear and APIs may change without notice.


fmm:metricAttributeMapping

Description

Note: This configuration is deprecated and will be replaced by a CNCF Serverless Workflow configuration.

Metric attribute mapping configuration schema.

Syntax

{
  "namespace": "<object>",
  "kind": "<string>",
  "name": "<string>",
  "displayName": "<string>",
  "description": "<string>",
  "scopeFilter": "<string>",
  "mappings": "<string>",
  "attributeNameMappings": "<string>",
  "tagNameMappings": "<string>"
}

Attributes

Attribute Description
namespace The name of the domain ( fmm:namespace object) that this configuration belongs to.
kind The data type of this configuration. Set this to metricAttributeMapping.
name The name of this configuration within the context of the namespace. Must be unique within a solution. Can contain only alphanumeric characters, underscores, or hyphens.
displayName The name of this configuration as it will appear in the user interface.
description Description of this configuration.
scopeFilter Required. A filter expression filtering the packets which are eligible for the specified transformations.
Predefined variables:
source (Source of the data)
metricAttributes (refers to OpenTelemetry metric attributes)
entity.type (entity type)
entity.namespace (entity namespace).
Predefined functions:
KeyValue getAttributes(metricAttributes, String name)
mappings List of metric attribute mapping configurations. Valid target map paths are "attributes" and "tags".
attributeNameMappings Mappings from OpenTelemetry metric attributes to FMM metric attributes.
For simple data copying operations, attributeNameMappings can be concise.
Same work can be done through mappings as well.
tagNameMappings Mappings from OpenTelemetry resource attributes to FMM metric tags.
For simple data copying operations, tagNameMappings can be concise.
Same work can be done through mappings as well.

Example

{
  "namespace": {
    "name": "k8s",
    "version": 1
  },
  "kind": "metricAttributeMapping",
  "name": "k8s_pod_metric_attribute_mappings",
  "displayName": "Kubernetes Pod Metric Attribute Mapping",
  "description": "Kubernetes Pod Metric Attribute Mapping",
  "scopeFilter": "entity.type.equals('pod') && metricName.equals('k8s.pod.network.io')",
  "attributeNameMappings": {
    "direction": "direction",
    "interface": "interface"
  }
}