module ietf-lmap-report {
namespace "urn:ietf:params:xml:ns:yang:ietf-lmap-report";
prefix "lmap-report";
import ietf-yang-types {
prefix yang;
}
import ietf-lmap-common {
prefix lmap-common;
}
organization
"IETF Large-Scale Measurement Platforms Working Group";
contact
"WG Web:
WG List:
Editor: Juergen Schoenwaelder
Editor: Vaibhav Bajpai
";
description
"This module defines a data model for reporting results from
measurement agents, which are part of a Large-Scale Measurement
Platform (LMAP), to result data collectors. This data model is
expected to be implemented by a collector.";
revision "2015-10-28" {
description
"Initial version";
reference
"RFC XXX: A YANG Data Model for LMAP Measurement Agents";
}
rpc report {
description
"The report operation is used by an LMAP measurement agent to
submit measurement results produced by measurement tasks to
a collector.";
input {
leaf date {
type yang:date-and-time;
mandatory true;
description
"The date and time when this result report was sent to
a collector.";
}
leaf agent-id {
type yang:uuid;
description
"The agent-id of the agent from which this
report originates.";
}
leaf group-id {
type string;
description
"The group-id of the agent from which this
report originates.";
}
leaf measurement-point {
type string;
description
"The measurement-point of the agent from which this
report originates.";
}
list task {
key name;
description
"The list of tasks for which results are reported.";
leaf name {
type string;
description
"The unique name of the task.";
}
uses lmap-common:metrics-grouping;
uses lmap-common:task-options-grouping {
description
"The list of task options there were in use then the
measurement was performed. This list must include
both the task specific options as well as the action
specific options.";
}
leaf-list tag {
type string;
description
"A tag contains additional information that is passed
with the result record to the collector. A tag can be
used to carry the Measurement Cycle ID.";
}
container header {
description
"This container lists the column labels. It does not
really serve a purpose other than making the result
data look nicely structured.";
leaf-list column {
type string;
description
"An ordered list of column labels. The order is determined
by the system and must match the order of the columns in
the result rows.";
}
}
list row {
description
"The rows of the result record.";
leaf start {
type yang:date-and-time;
mandatory true;
description
"The date and time when the measurement producing
this result row started.";
}
leaf end {
type yang:date-and-time;
description
"The date and time when the measurement producing
this result row stopped.";
}
leaf-list conflict {
type string;
description
"The name of a task overlapping with the execution
of the task that has produced this result record.";
}
leaf-list value {
type string;
description
"The value of a cell in the result row.";
}
}
}
}
}
}