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"
}
}