Define MELT Processing
This page contains instructions for the multiple objects you may need to define for MELT processing:
(Required) the rules for mapping the metadata in incoming OTLP packets to entity attributes using an fmm:resourceMapping
object. See Define Resource Mappings.
(Sometimes required) If you declare multiple fmm:resourceMapping
objects, you must declare fmm:entityPriority
objects to specify which fmm:resourceMapping
object is primary. See Define Entity Priority.
(Optional) Define the rules for mapping OTLP metrics to Cisco Observability Platform metrics in an fmm:metricMapping
object. See Define Metric Mapping.
(Optional) Define the rules for aggregating metrics in an fmm:metricAggregation
object. See Define Metric Aggregation.
Define Resource Mappings
An OTLP packet's resource map (metadata) is a list of key-value pairs. Depending on what data type is in the OTLP packet's payload, you must map that data to attributes in a specific entity type. You must define this mapping for every entity in your solution; otherwise, the Cisco Observability Platform cannot properly represent the entities in your domain. To define the rules for mapping the metadata in incoming OTLP packets to entity attributes:
In a new file, <your-solution-name>/fmm/objects/resource-mapping.json
, define a MELT workflow of type fmm:resourceMapping.
Add the new fmm:resourceMapping
object to your solution:
Make the following changes to your solution manifest file (<your-solution-name>/manifest.json
):
- In
dependencies
, add fmm
.
- In
objects
, add this snippet:
Validate manifest.json
with the command fsoc solution validate.
Shortcut To create a file with an empty fmm:resourceMapping, run the fsoc solution extend command from the root folder of your solution:
where <entity-name>
should already exist.
Define Entity Priority
Entity priority determines what association rule takes precedence, when there are multiple rules that apply to an entity. To declare entity priority, do the following:
In a new file, <your-solution-name>/fmm/objects/entity-priority.json
, define a MELT workflow of type fmm:entityPriority.
Add the new fmm:entityPriority
object to your solution:
Make the following changes to your solution manifest file (<your-solution-name>/manifest.json
):
- In
dependencies
, add fmm
.
- In
objects
, add this snippet:
Validate manifest.json
with the command fsoc solution validate.
Define Metric Mapping
To define the mapping rules between an OTLP metric and any fmm:metric
objects you declare within your solution, create a MELT workflow of type fmm:metricMapping
. Declaring fmm:metricMapping
is optional -- in other words, ingestion works without it. It's only required if you want to rename a metric.
To add the new fmm:metricMapping
declaration to your solution:
In a new file, <your-solution-name>/fmm/objects/metric-mapping.json
, define a knowledge object of type fmm:metricMapping.
Add the new fmm:metricMapping
object to your solution:
Make the following changes to your solution manifest file (<your-solution-name>/manifest.json
):
- In
dependencies
, add fmm
.
- In
objects
, add this snippet:
Validate manifest.json
with the command fsoc solution validate.
Define Metric Aggregation
You can aggregate metrics based on your domain model's entities and its associations. For example, you can roll up metrics from children entities into their parents. To define an aggregation, define a MELT workflow of type fmm:metricAggregation
and add it to your solution:
In a new file, <your-solution-name>/fmm/objects/metric-aggregation.json
, define a knowledge object of type fmm:metricAggregation.
Add the new fmm:metricAggregation
object to your solution:
Make the following changes to your solution manifest file (<your-solution-name>/manifest.json
):
- In
dependencies
, add fmm
.
- In
objects
, add this snippet:
Validate manifest.json
with the command fsoc solution validate.
Define Metric Derivations
You can derive metrics based on other metrics. To define a derivation, define a MELT workflow of type fmm:metricDerivation
and add it to your solution:
In a new file, <your-solution-name>/fmm/objects/metric-derivation.json
, define a knowledge object of type fmm:metricDerivation. You can put fmm:metricDerivation
workflows in the same file as an array of definitions.
Add the new fmm:metricDerivation
object to your solution:
Make the following changes to your solution manifest file (<your-solution-name>/manifest.json
):
- In
dependencies
, add fmm
.
- In
objects
, add this snippet:
Validate manifest.json
with the command fsoc solution validate.