User documentation for yang module rwmon.yang

module rw-project                                                            1
  rw-project data                                                          1.1
    list rw-project:project                                              1.1.1
      container rw-project:project-config                              1.1.1.1
        list rw-project:user                                         1.1.1.1.1
          list rw-project:role                                     1.1.1.1.1.1
      container rw-project:project-state                               1.1.1.2
        list rw-project:user                                         1.1.1.2.1
          list rw-project:role                                     1.1.1.2.1.1
        list rw-project:role                                         1.1.1.2.2
      container rwmon:nfvi-metrics                                     1.1.1.3
        container rwmon:vcpu                                         1.1.1.3.1
        container rwmon:memory                                       1.1.1.3.2
        container rwmon:storage                                      1.1.1.3.3
        container rwmon:external-ports                               1.1.1.3.4
        container rwmon:internal-ports                               1.1.1.3.5
        container rwmon:network                                      1.1.1.3.6
          container rwmon:incoming                                 1.1.1.3.6.1
          container rwmon:outgoing                                 1.1.1.3.6.2
      container rwmon:alarm                                            1.1.1.4
        container rwmon:actions                                      1.1.1.4.1
          list rwmon:ok                                            1.1.1.4.1.1
          list rwmon:insufficient-data                             1.1.1.4.1.2
          list rwmon:alarm                                         1.1.1.4.1.3
module rwmon                                                                 2


1  module rw-project

1.1  rw-project data
  Description
    This yang module defines project-based tenancy for RIFT.ware.
    Authorization for project access is defined in terms of RIFT.ware's
    Role-Based Access Control (RBAC) model.

1.1.1  list rw-project:project
  Description
    Configuration and state for individual projects.  RIFT.ware
    applications and projects are expected to augment this list in
    order to add configuration for projects that is specific to the
    product or application.  As such, this list contains minimal
    data defined in this yang module.

    When augmenting this element, other yang modules should prefer to
    define containers with the same name as the augmenting module.
    (Augmenting RIFT.ware modules should prefer to augment without
    the rw prefix [for new features], or should prefer to augment the
    augmented container of an existing augment, to ease future
    adoption and/or standardization.)
  Leaves
    name: name, type: STRING, description: Name of the project.
    name: description, type: STRING, description: Information about project
  XPath Path
    /rw-project:project
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']
  RW.REST URI Path
    /rw-project:project/STRING
  JSON Config Sample
    [
      {
        "name": "STRING",
        "description": "STRING",
        "project-config": {
          "user": [ { ... }, { ... } ]
        },
        "rwmon:nfvi-metrics": {
          "timestamp": 0.0,
          "vcpu": { ... },
          "memory": { ... },
          "storage": { ... },
          "external-ports": { ... },
          "internal-ports": { ... },
          "network": { ... }
        },
        "rwmon:alarm": {
          "alarm-id": "STRING",
          "name": "STRING",
          "description": "STRING",
          "vdur-id": "STRING",
          "actions": { ... },
          "repeat": true,
          "enabled": true,
          "severity": "LOW",
          "metric": "CPU_UTILIZATION",
          "statistic": "AVERAGE",
          "operation": "GE",
          "value": 0.0,
          "period": 0,
          "evaluations": 0
        }
      }, {
        ...
      }
    ]
  JSON Sample
    [
      {
        "name": "STRING",
        "description": "STRING",
        "project-config": {
          "user": [ { ... }, { ... } ]
        },
        "project-state": {
          "user": [ { ... }, { ... } ],
          "role": [ { ... }, { ... } ]
        },
        "rwmon:nfvi-metrics": {
          "timestamp": 0.0,
          "vcpu": { ... },
          "memory": { ... },
          "storage": { ... },
          "external-ports": { ... },
          "internal-ports": { ... },
          "network": { ... }
        },
        "rwmon:alarm": {
          "alarm-id": "STRING",
          "name": "STRING",
          "description": "STRING",
          "vdur-id": "STRING",
          "actions": { ... },
          "repeat": true,
          "enabled": true,
          "severity": "LOW",
          "metric": "CPU_UTILIZATION",
          "statistic": "AVERAGE",
          "operation": "GE",
          "value": 0.0,
          "period": 0,
          "evaluations": 0
        }
      }, {
        ...
      }
    ]
  XML Config Sample
    <rw-project:project xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:name>STRING</rw-project:name>
      <rw-project:description>STRING</rw-project:description>
      <rw-project:project-config>
        <rw-project:user>...</rw-project:user>
      </rw-project:project-config>
      <rwmon:nfvi-metrics xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
        <rwmon:timestamp>0.0</rwmon:timestamp>
        <rwmon:vcpu>...</rwmon:vcpu>
        <rwmon:memory>...</rwmon:memory>
        <rwmon:storage>...</rwmon:storage>
        <rwmon:external-ports>...</rwmon:external-ports>
        <rwmon:internal-ports>...</rwmon:internal-ports>
        <rwmon:network>...</rwmon:network>
      </rwmon:nfvi-metrics>
      <rwmon:alarm xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
        <rwmon:alarm-id>STRING</rwmon:alarm-id>
        <rwmon:name>STRING</rwmon:name>
        <rwmon:description>STRING</rwmon:description>
        <rwmon:vdur-id>STRING</rwmon:vdur-id>
        <rwmon:actions>...</rwmon:actions>
        <rwmon:repeat>true</rwmon:repeat>
        <rwmon:enabled>true</rwmon:enabled>
        <rwmon:severity>LOW</rwmon:severity>
        <rwmon:metric>CPU_UTILIZATION</rwmon:metric>
        <rwmon:statistic>AVERAGE</rwmon:statistic>
        <rwmon:operation>GE</rwmon:operation>
        <rwmon:value>0.0</rwmon:value>
        <rwmon:period>0</rwmon:period>
        <rwmon:evaluations>0</rwmon:evaluations>
      </rwmon:alarm>
    </rw-project:project>
  XML Sample
    <rw-project:project xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:name>STRING</rw-project:name>
      <rw-project:description>STRING</rw-project:description>
      <rw-project:project-config>
        <rw-project:user>...</rw-project:user>
      </rw-project:project-config>
      <rw-project:project-state>
        <rw-project:user>...</rw-project:user>
        <rw-project:role>...</rw-project:role>
      </rw-project:project-state>
      <rwmon:nfvi-metrics xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
        <rwmon:timestamp>0.0</rwmon:timestamp>
        <rwmon:vcpu>...</rwmon:vcpu>
        <rwmon:memory>...</rwmon:memory>
        <rwmon:storage>...</rwmon:storage>
        <rwmon:external-ports>...</rwmon:external-ports>
        <rwmon:internal-ports>...</rwmon:internal-ports>
        <rwmon:network>...</rwmon:network>
      </rwmon:nfvi-metrics>
      <rwmon:alarm xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
        <rwmon:alarm-id>STRING</rwmon:alarm-id>
        <rwmon:name>STRING</rwmon:name>
        <rwmon:description>STRING</rwmon:description>
        <rwmon:vdur-id>STRING</rwmon:vdur-id>
        <rwmon:actions>...</rwmon:actions>
        <rwmon:repeat>true</rwmon:repeat>
        <rwmon:enabled>true</rwmon:enabled>
        <rwmon:severity>LOW</rwmon:severity>
        <rwmon:metric>CPU_UTILIZATION</rwmon:metric>
        <rwmon:statistic>AVERAGE</rwmon:statistic>
        <rwmon:operation>GE</rwmon:operation>
        <rwmon:value>0.0</rwmon:value>
        <rwmon:period>0</rwmon:period>
        <rwmon:evaluations>0</rwmon:evaluations>
      </rwmon:alarm>
    </rw-project:project>

1.1.1.1  container rw-project:project-config
  Description
    General Project configuration supported by all products.
  XPath Path
    /rw-project:project/rw-project:project-config
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rw-project:project-config
  RW.REST URI Path
    /rw-project:project/STRING/project-config
  JSON Config Sample
    {
      "user": [
        {
          "user-domain": "STRING",
          "user-name": "STRING",
          "role": [ { ... }, { ... } ]
        }, {
          ...
        }
      ]
    }
  JSON Sample
    {
      "user": [
        {
          "user-domain": "STRING",
          "user-name": "STRING",
          "role": [ { ... }, { ... } ]
        }, {
          ...
        }
      ]
    }
  XML Config Sample
    <rw-project:project-config xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:user>
        <rw-project:user-name>STRING</rw-project:user-name>
        <rw-project:user-domain>STRING</rw-project:user-domain>
        <rw-project:role>...</rw-project:role>
      </rw-project:user>
    </rw-project:project-config>
  XML Sample
    <rw-project:project-config xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:user>
        <rw-project:user-name>STRING</rw-project:user-name>
        <rw-project:user-domain>STRING</rw-project:user-domain>
        <rw-project:role>...</rw-project:role>
      </rw-project:user>
    </rw-project:project-config>

1.1.1.1.1  list rw-project:user
  Description
    The list of Users who have been assigned Roles within this
    Project.
  Leaves
    name: user-domain, type: LEAFREF, description: The user domain.  This is the source of the user identity.
    Different domains may duplicate a user-name, but such users
    would be considered distinct by RIFT.ware.
    name: user-name, type: LEAFREF, description: The user name.  The syntax of this name depends on the domain.
    For example, if the domain is a login name, it might be limited
    to alphanumeric characters.  However, if the domain is email address,
    the syntax could include additional characters, such as the at(@) sign.
  XPath Path
    /rw-project:project/rw-project:project-config/rw-project:user
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rw-project:project-config/rw-project:user[rw-project:user-name='STRING'][rw-project:user-domain='STRING']
  RW.REST URI Path
    /rw-project:project/STRING/project-config/user/STRING,STRING
  JSON Config Sample
    [
      {
        "user-domain": "STRING",
        "user-name": "STRING",
        "role": [
          {
            "role": "STRING"
          }, {
            ...
          }
        ]
      }, {
        ...
      }
    ]
  JSON Sample
    [
      {
        "user-domain": "STRING",
        "user-name": "STRING",
        "role": [
          {
            "role": "STRING"
          }, {
            ...
          }
        ]
      }, {
        ...
      }
    ]
  XML Config Sample
    <rw-project:user xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:user-name>STRING</rw-project:user-name>
      <rw-project:user-domain>STRING</rw-project:user-domain>
      <rw-project:role>
        <rw-project:role>STRING</rw-project:role>
      </rw-project:role>
    </rw-project:user>
  XML Sample
    <rw-project:user xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:user-name>STRING</rw-project:user-name>
      <rw-project:user-domain>STRING</rw-project:user-domain>
      <rw-project:role>
        <rw-project:role>STRING</rw-project:role>
      </rw-project:role>
    </rw-project:user>

1.1.1.1.1.1  list rw-project:role
  Description
    The list of Roles the User has been assigned.
  Leaves
    name: role, type: STRING, description: The Role, independent of Keys.
  XPath Path
    /rw-project:project/rw-project:project-config/rw-project:user/rw-project:role
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rw-project:project-config/rw-project:user[rw-project:user-name='STRING'][rw-project:user-domain='STRING']/rw-project:role[rw-project:role='STRING']
  RW.REST URI Path
    /rw-project:project/STRING/project-config/user/STRING,STRING/role/STRING
  JSON Config Sample
    [
      {
        "role": "STRING"
      }, {
        ...
      }
    ]
  JSON Sample
    [
      {
        "role": "STRING"
      }, {
        ...
      }
    ]
  XML Config Sample
    <rw-project:role xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:role>STRING</rw-project:role>
    </rw-project:role>
  XML Sample
    <rw-project:role xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:role>STRING</rw-project:role>
    </rw-project:role>

1.1.1.2  container rw-project:project-state
  Description
    General Project operational state supported by all products.
  XPath Path
    /rw-project:project/rw-project:project-state
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rw-project:project-state
  RW.REST URI Path
    /rw-project:project/STRING/project-state
  JSON Sample
    {
      "user": [
        {
          "user-domain": "STRING",
          "user-name": "STRING",
          "role": [ { ... }, { ... } ]
        }, {
          ...
        }
      ],
      "role": [
        {
          "role": "STRING",
          "description": "STRING"
        }, {
          ...
        }
      ]
    }
  XML Sample
    <rw-project:project-state xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:user>
        <rw-project:user-name>STRING</rw-project:user-name>
        <rw-project:user-domain>STRING</rw-project:user-domain>
        <rw-project:role>...</rw-project:role>
      </rw-project:user>
      <rw-project:role>
        <rw-project:role>STRING</rw-project:role>
        <rw-project:description>STRING</rw-project:description>
      </rw-project:role>
    </rw-project:project-state>

1.1.1.2.1  list rw-project:user
  Description
    The state of Users who have been assigned Roles within
    this Project.
  Leaves
    name: user-domain, type: STRING, description: The user domain.  This is the source of the user identity.
    Different domains may duplicate a user-name, but such users
    would be considered distinct by RIFT.ware.
    name: user-name, type: STRING, description: The user name.  The syntax of this name depends on the domain.
    For example, if the domain is a login name, it might be limited
    to alphanumeric characters.  However, if the domain is some
    kind of email address, the syntax could include assitional
    characters, such as the at sign.
  XPath Path
    /rw-project:project/rw-project:project-state/rw-project:user
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rw-project:project-state/rw-project:user[rw-project:user-name='STRING'][rw-project:user-domain='STRING']
  RW.REST URI Path
    /rw-project:project/STRING/project-state/user/STRING,STRING
  JSON Sample
    [
      {
        "user-domain": "STRING",
        "user-name": "STRING",
        "role": [
          {
            "role": "STRING",
            "state": "STRING"
          }, {
            ...
          }
        ]
      }, {
        ...
      }
    ]
  XML Sample
    <rw-project:user xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:user-name>STRING</rw-project:user-name>
      <rw-project:user-domain>STRING</rw-project:user-domain>
      <rw-project:role>
        <rw-project:role>STRING</rw-project:role>
        <rw-project:state>STRING</rw-project:state>
      </rw-project:role>
    </rw-project:user>

1.1.1.2.1.1  list rw-project:role
  Description
    The state of the Roles the User has been assigned.
  Leaves
    name: role, type: STRING, description: The Role, independent of Keys.
    name: state, type: STRING, description: The assignment of a User to a Role may be an asynchronous
    operation.  This value indicates whether the Role
    assignment is active.  If the value is 'active', then the
    assignment is complete and active.  Any other value
    indicates that Role assignment is in a transitional or
    failed state, as described in the value.
  XPath Path
    /rw-project:project/rw-project:project-state/rw-project:user/rw-project:role
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rw-project:project-state/rw-project:user[rw-project:user-name='STRING'][rw-project:user-domain='STRING']/rw-project:role[rw-project:role='STRING']
  RW.REST URI Path
    /rw-project:project/STRING/project-state/user/STRING,STRING/role/STRING
  JSON Sample
    [
      {
        "role": "STRING",
        "state": "STRING"
      }, {
        ...
      }
    ]
  XML Sample
    <rw-project:role xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:role>STRING</rw-project:role>
      <rw-project:state>STRING</rw-project:state>
    </rw-project:role>

1.1.1.2.2  list rw-project:role
  Description
    The set of Roles that may be configured into
    /rw-project:project/rw-project:config/rw-project:user/
    rw-project:role.
  Leaves
    name: role, type: STRING, description: The Role, independent of Keys.
    name: description, type: STRING, description: A description of the Role.
  XPath Path
    /rw-project:project/rw-project:project-state/rw-project:role
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rw-project:project-state/rw-project:role[rw-project:role='STRING']
  RW.REST URI Path
    /rw-project:project/STRING/project-state/role/STRING
  JSON Sample
    [
      {
        "role": "STRING",
        "description": "STRING"
      }, {
        ...
      }
    ]
  XML Sample
    <rw-project:role xmlns:rw-project="http://riftio.com/ns/riftware-1.0/rw-project">
      <rw-project:role>STRING</rw-project:role>
      <rw-project:description>STRING</rw-project:description>
    </rw-project:role>

1.1.1.3  container rwmon:nfvi-metrics
  Leaves
    name: timestamp, type: DECIMAL64, description: This is the time when the metric was captured. The timestamp is
    represented as the number of seconds since the beginning of the Unix
    epoch.
  XPath Path
    /rw-project:project/rwmon:nfvi-metrics
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:nfvi-metrics
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:nfvi-metrics
  JSON Config Sample
    {
      "timestamp": 0.0,
      "vcpu": {
        "label": "VCPU",
        "total": 0,
        "utilization": 0.0
      },
      "memory": {
        "label": "MEMORY",
        "used": 0,
        "total": 0,
        "utilization": 0.0
      },
      "storage": {
        "label": "STORAGE",
        "used": 0,
        "total": 0,
        "utilization": 0.0
      },
      "external-ports": {
        "label": "EXTERNAL PORTS",
        "total": 0
      },
      "internal-ports": {
        "label": "INTERNAL PORTS",
        "total": 0
      },
      "network": {
        "label": "NETWORK TRAFFIC",
        "incoming": { ... },
        "outgoing": { ... }
      }
    }
  JSON Sample
    {
      "timestamp": 0.0,
      "vcpu": {
        "label": "VCPU",
        "total": 0,
        "utilization": 0.0
      },
      "memory": {
        "label": "MEMORY",
        "used": 0,
        "total": 0,
        "utilization": 0.0
      },
      "storage": {
        "label": "STORAGE",
        "used": 0,
        "total": 0,
        "utilization": 0.0
      },
      "external-ports": {
        "label": "EXTERNAL PORTS",
        "total": 0
      },
      "internal-ports": {
        "label": "INTERNAL PORTS",
        "total": 0
      },
      "network": {
        "label": "NETWORK TRAFFIC",
        "incoming": { ... },
        "outgoing": { ... }
      }
    }
  XML Config Sample
    <rwmon:nfvi-metrics xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:timestamp>0.0</rwmon:timestamp>
      <rwmon:vcpu>
        <rwmon:label>VCPU</rwmon:label>
        <rwmon:total>0</rwmon:total>
        <rwmon:utilization>0.0</rwmon:utilization>
      </rwmon:vcpu>
      <rwmon:memory>
        <rwmon:label>MEMORY</rwmon:label>
        <rwmon:used>0</rwmon:used>
        <rwmon:total>0</rwmon:total>
        <rwmon:utilization>0.0</rwmon:utilization>
      </rwmon:memory>
      <rwmon:storage>
        <rwmon:label>STORAGE</rwmon:label>
        <rwmon:used>0</rwmon:used>
        <rwmon:total>0</rwmon:total>
        <rwmon:utilization>0.0</rwmon:utilization>
      </rwmon:storage>
      <rwmon:external-ports>
        <rwmon:label>EXTERNAL PORTS</rwmon:label>
        <rwmon:total>0</rwmon:total>
      </rwmon:external-ports>
      <rwmon:internal-ports>
        <rwmon:label>INTERNAL PORTS</rwmon:label>
        <rwmon:total>0</rwmon:total>
      </rwmon:internal-ports>
      <rwmon:network>
        <rwmon:label>NETWORK TRAFFIC</rwmon:label>
        <rwmon:incoming>...</rwmon:incoming>
        <rwmon:outgoing>...</rwmon:outgoing>
      </rwmon:network>
    </rwmon:nfvi-metrics>
  XML Sample
    <rwmon:nfvi-metrics xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:timestamp>0.0</rwmon:timestamp>
      <rwmon:vcpu>
        <rwmon:label>VCPU</rwmon:label>
        <rwmon:total>0</rwmon:total>
        <rwmon:utilization>0.0</rwmon:utilization>
      </rwmon:vcpu>
      <rwmon:memory>
        <rwmon:label>MEMORY</rwmon:label>
        <rwmon:used>0</rwmon:used>
        <rwmon:total>0</rwmon:total>
        <rwmon:utilization>0.0</rwmon:utilization>
      </rwmon:memory>
      <rwmon:storage>
        <rwmon:label>STORAGE</rwmon:label>
        <rwmon:used>0</rwmon:used>
        <rwmon:total>0</rwmon:total>
        <rwmon:utilization>0.0</rwmon:utilization>
      </rwmon:storage>
      <rwmon:external-ports>
        <rwmon:label>EXTERNAL PORTS</rwmon:label>
        <rwmon:total>0</rwmon:total>
      </rwmon:external-ports>
      <rwmon:internal-ports>
        <rwmon:label>INTERNAL PORTS</rwmon:label>
        <rwmon:total>0</rwmon:total>
      </rwmon:internal-ports>
      <rwmon:network>
        <rwmon:label>NETWORK TRAFFIC</rwmon:label>
        <rwmon:incoming>...</rwmon:incoming>
        <rwmon:outgoing>...</rwmon:outgoing>
      </rwmon:network>
    </rwmon:nfvi-metrics>

1.1.1.3.1  container rwmon:vcpu
  Leaves
    name: label, type: STRING, description: Label to show in UI
    name: total, type: UINT64, description: The total number of VCPUs available.
    name: utilization, type: DECIMAL64, description: The VCPU utilization (percentage).
  XPath Path
    /rw-project:project/rwmon:nfvi-metrics/rwmon:vcpu
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:nfvi-metrics/rwmon:vcpu
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:nfvi-metrics/vcpu
  JSON Config Sample
    {
      "label": "VCPU",
      "total": 0,
      "utilization": 0.0
    }
  JSON Sample
    {
      "label": "VCPU",
      "total": 0,
      "utilization": 0.0
    }
  XML Config Sample
    <rwmon:vcpu xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>VCPU</rwmon:label>
      <rwmon:total>0</rwmon:total>
      <rwmon:utilization>0.0</rwmon:utilization>
    </rwmon:vcpu>
  XML Sample
    <rwmon:vcpu xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>VCPU</rwmon:label>
      <rwmon:total>0</rwmon:total>
      <rwmon:utilization>0.0</rwmon:utilization>
    </rwmon:vcpu>

1.1.1.3.2  container rwmon:memory
  Leaves
    name: label, type: STRING, description: Label to show in UI
    name: used, type: UINT64, description: The amount of memory (bytes) currently in use.
    name: total, type: UINT64, description: The amount of memory (bytes) available.
    name: utilization, type: DECIMAL64, description: The memory utilization (percentage).
  XPath Path
    /rw-project:project/rwmon:nfvi-metrics/rwmon:memory
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:nfvi-metrics/rwmon:memory
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:nfvi-metrics/memory
  JSON Config Sample
    {
      "label": "MEMORY",
      "used": 0,
      "total": 0,
      "utilization": 0.0
    }
  JSON Sample
    {
      "label": "MEMORY",
      "used": 0,
      "total": 0,
      "utilization": 0.0
    }
  XML Config Sample
    <rwmon:memory xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>MEMORY</rwmon:label>
      <rwmon:used>0</rwmon:used>
      <rwmon:total>0</rwmon:total>
      <rwmon:utilization>0.0</rwmon:utilization>
    </rwmon:memory>
  XML Sample
    <rwmon:memory xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>MEMORY</rwmon:label>
      <rwmon:used>0</rwmon:used>
      <rwmon:total>0</rwmon:total>
      <rwmon:utilization>0.0</rwmon:utilization>
    </rwmon:memory>

1.1.1.3.3  container rwmon:storage
  Leaves
    name: label, type: STRING, description: Label to show in UI
    name: used, type: UINT64, description: The amount of storage (bytes) currently in use.
    name: total, type: UINT64, description: The amount of storage (bytes) available.
    name: utilization, type: DECIMAL64, description: The storage utilization (percentage).
  XPath Path
    /rw-project:project/rwmon:nfvi-metrics/rwmon:storage
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:nfvi-metrics/rwmon:storage
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:nfvi-metrics/storage
  JSON Config Sample
    {
      "label": "STORAGE",
      "used": 0,
      "total": 0,
      "utilization": 0.0
    }
  JSON Sample
    {
      "label": "STORAGE",
      "used": 0,
      "total": 0,
      "utilization": 0.0
    }
  XML Config Sample
    <rwmon:storage xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>STORAGE</rwmon:label>
      <rwmon:used>0</rwmon:used>
      <rwmon:total>0</rwmon:total>
      <rwmon:utilization>0.0</rwmon:utilization>
    </rwmon:storage>
  XML Sample
    <rwmon:storage xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>STORAGE</rwmon:label>
      <rwmon:used>0</rwmon:used>
      <rwmon:total>0</rwmon:total>
      <rwmon:utilization>0.0</rwmon:utilization>
    </rwmon:storage>

1.1.1.3.4  container rwmon:external-ports
  Leaves
    name: label, type: STRING, description: Label to show in UI
    name: total, type: UINT64, description: The total number of external ports.
  XPath Path
    /rw-project:project/rwmon:nfvi-metrics/rwmon:external-ports
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:nfvi-metrics/rwmon:external-ports
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:nfvi-metrics/external-ports
  JSON Config Sample
    {
      "label": "EXTERNAL PORTS",
      "total": 0
    }
  JSON Sample
    {
      "label": "EXTERNAL PORTS",
      "total": 0
    }
  XML Config Sample
    <rwmon:external-ports xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>EXTERNAL PORTS</rwmon:label>
      <rwmon:total>0</rwmon:total>
    </rwmon:external-ports>
  XML Sample
    <rwmon:external-ports xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>EXTERNAL PORTS</rwmon:label>
      <rwmon:total>0</rwmon:total>
    </rwmon:external-ports>

1.1.1.3.5  container rwmon:internal-ports
  Leaves
    name: label, type: STRING, description: Label to show in UI
    name: total, type: UINT64, description: The total number of internal ports.
  XPath Path
    /rw-project:project/rwmon:nfvi-metrics/rwmon:internal-ports
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:nfvi-metrics/rwmon:internal-ports
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:nfvi-metrics/internal-ports
  JSON Config Sample
    {
      "label": "INTERNAL PORTS",
      "total": 0
    }
  JSON Sample
    {
      "label": "INTERNAL PORTS",
      "total": 0
    }
  XML Config Sample
    <rwmon:internal-ports xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>INTERNAL PORTS</rwmon:label>
      <rwmon:total>0</rwmon:total>
    </rwmon:internal-ports>
  XML Sample
    <rwmon:internal-ports xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>INTERNAL PORTS</rwmon:label>
      <rwmon:total>0</rwmon:total>
    </rwmon:internal-ports>

1.1.1.3.6  container rwmon:network
  Leaves
    name: label, type: STRING, description: Label to show in UI
  XPath Path
    /rw-project:project/rwmon:nfvi-metrics/rwmon:network
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:nfvi-metrics/rwmon:network
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:nfvi-metrics/network
  JSON Config Sample
    {
      "label": "NETWORK TRAFFIC",
      "incoming": {
        "label": "INCOMING NETWORK TRAFFIC",
        "bytes": 0,
        "packets": 0,
        "byte-rate": 0.0,
        "packet-rate": 0.0
      },
      "outgoing": {
        "label": "OUTGOING NETWORK TRAFFIC",
        "bytes": 0,
        "packets": 0,
        "byte-rate": 0.0,
        "packet-rate": 0.0
      }
    }
  JSON Sample
    {
      "label": "NETWORK TRAFFIC",
      "incoming": {
        "label": "INCOMING NETWORK TRAFFIC",
        "bytes": 0,
        "packets": 0,
        "byte-rate": 0.0,
        "packet-rate": 0.0
      },
      "outgoing": {
        "label": "OUTGOING NETWORK TRAFFIC",
        "bytes": 0,
        "packets": 0,
        "byte-rate": 0.0,
        "packet-rate": 0.0
      }
    }
  XML Config Sample
    <rwmon:network xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>NETWORK TRAFFIC</rwmon:label>
      <rwmon:incoming>
        <rwmon:label>INCOMING NETWORK TRAFFIC</rwmon:label>
        <rwmon:bytes>0</rwmon:bytes>
        <rwmon:packets>0</rwmon:packets>
        <rwmon:byte-rate>0.0</rwmon:byte-rate>
        <rwmon:packet-rate>0.0</rwmon:packet-rate>
      </rwmon:incoming>
      <rwmon:outgoing>
        <rwmon:label>OUTGOING NETWORK TRAFFIC</rwmon:label>
        <rwmon:bytes>0</rwmon:bytes>
        <rwmon:packets>0</rwmon:packets>
        <rwmon:byte-rate>0.0</rwmon:byte-rate>
        <rwmon:packet-rate>0.0</rwmon:packet-rate>
      </rwmon:outgoing>
    </rwmon:network>
  XML Sample
    <rwmon:network xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>NETWORK TRAFFIC</rwmon:label>
      <rwmon:incoming>
        <rwmon:label>INCOMING NETWORK TRAFFIC</rwmon:label>
        <rwmon:bytes>0</rwmon:bytes>
        <rwmon:packets>0</rwmon:packets>
        <rwmon:byte-rate>0.0</rwmon:byte-rate>
        <rwmon:packet-rate>0.0</rwmon:packet-rate>
      </rwmon:incoming>
      <rwmon:outgoing>
        <rwmon:label>OUTGOING NETWORK TRAFFIC</rwmon:label>
        <rwmon:bytes>0</rwmon:bytes>
        <rwmon:packets>0</rwmon:packets>
        <rwmon:byte-rate>0.0</rwmon:byte-rate>
        <rwmon:packet-rate>0.0</rwmon:packet-rate>
      </rwmon:outgoing>
    </rwmon:network>

1.1.1.3.6.1  container rwmon:incoming
  Leaves
    name: label, type: STRING, description: Label to show in UI
    name: bytes, type: UINT64, description: The cumulative number of incoming bytes.
    name: packets, type: UINT64, description: The cumulative number of incoming packets.
    name: byte-rate, type: DECIMAL64, description: The current incoming byte-rate (bytes per second).
    name: packet-rate, type: DECIMAL64, description: The current incoming packet (packets per second).
  XPath Path
    /rw-project:project/rwmon:nfvi-metrics/rwmon:network/rwmon:incoming
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:nfvi-metrics/rwmon:network/rwmon:incoming
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:nfvi-metrics/network/incoming
  JSON Config Sample
    {
      "label": "INCOMING NETWORK TRAFFIC",
      "bytes": 0,
      "packets": 0,
      "byte-rate": 0.0,
      "packet-rate": 0.0
    }
  JSON Sample
    {
      "label": "INCOMING NETWORK TRAFFIC",
      "bytes": 0,
      "packets": 0,
      "byte-rate": 0.0,
      "packet-rate": 0.0
    }
  XML Config Sample
    <rwmon:incoming xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>INCOMING NETWORK TRAFFIC</rwmon:label>
      <rwmon:bytes>0</rwmon:bytes>
      <rwmon:packets>0</rwmon:packets>
      <rwmon:byte-rate>0.0</rwmon:byte-rate>
      <rwmon:packet-rate>0.0</rwmon:packet-rate>
    </rwmon:incoming>
  XML Sample
    <rwmon:incoming xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>INCOMING NETWORK TRAFFIC</rwmon:label>
      <rwmon:bytes>0</rwmon:bytes>
      <rwmon:packets>0</rwmon:packets>
      <rwmon:byte-rate>0.0</rwmon:byte-rate>
      <rwmon:packet-rate>0.0</rwmon:packet-rate>
    </rwmon:incoming>

1.1.1.3.6.2  container rwmon:outgoing
  Leaves
    name: label, type: STRING, description: Label to show in UI
    name: bytes, type: UINT64, description: The cumulative number of outgoing bytes.
    name: packets, type: UINT64, description: The cumulative number of outgoing packets.
    name: byte-rate, type: DECIMAL64, description: The current outgoing byte-rate (bytes per second).
    name: packet-rate, type: DECIMAL64, description: The current outgoing packet (packets per second).
  XPath Path
    /rw-project:project/rwmon:nfvi-metrics/rwmon:network/rwmon:outgoing
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:nfvi-metrics/rwmon:network/rwmon:outgoing
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:nfvi-metrics/network/outgoing
  JSON Config Sample
    {
      "label": "OUTGOING NETWORK TRAFFIC",
      "bytes": 0,
      "packets": 0,
      "byte-rate": 0.0,
      "packet-rate": 0.0
    }
  JSON Sample
    {
      "label": "OUTGOING NETWORK TRAFFIC",
      "bytes": 0,
      "packets": 0,
      "byte-rate": 0.0,
      "packet-rate": 0.0
    }
  XML Config Sample
    <rwmon:outgoing xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>OUTGOING NETWORK TRAFFIC</rwmon:label>
      <rwmon:bytes>0</rwmon:bytes>
      <rwmon:packets>0</rwmon:packets>
      <rwmon:byte-rate>0.0</rwmon:byte-rate>
      <rwmon:packet-rate>0.0</rwmon:packet-rate>
    </rwmon:outgoing>
  XML Sample
    <rwmon:outgoing xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:label>OUTGOING NETWORK TRAFFIC</rwmon:label>
      <rwmon:bytes>0</rwmon:bytes>
      <rwmon:packets>0</rwmon:packets>
      <rwmon:byte-rate>0.0</rwmon:byte-rate>
      <rwmon:packet-rate>0.0</rwmon:packet-rate>
    </rwmon:outgoing>

1.1.1.4  container rwmon:alarm
  Leaves
    name: alarm-id, type: STRING, description: This field is reserved for the identifier assigned by the VIM provider
    name: name, type: STRING, description: A human readable string to identify the alarm
    name: description, type: STRING, description: A description of this alarm
    name: vdur-id, type: STRING, description: The identifier of the VDUR that the alarm is associated with
    name: repeat, type: BOOLEAN, description: This flag indicates whether the alarm should be repeatedly emitted
    while the associated threshold has been crossed.
    name: enabled, type: BOOLEAN, description: This flag indicates whether the alarm has been enabled or
    disabled.
    name: severity, type: ENUM, description: A measure of the importance or urgency of the alarm
    name: metric, type: ENUM, description: The metric to be tracked by this alarm.
    name: statistic, type: ENUM, description: The type of metric statistic that is tracked by this alarm
    name: operation, type: ENUM, description: The relational operator used to define whether an alarm should be
    triggered in certain scenarios, such as if the metric statistic
    goes above or below a specified value.
    name: value, type: DECIMAL64, description: This value defines the threshold that, if crossed, will trigger
    the alarm.
    name: period, type: UINT32, description: The period defines the length of time (seconds) that the metric
    data are collected over in oreder to evaluate the chosen
    statistic.
    name: evaluations, type: UINT32, description: Defines the length of time (seconds) in which metric data are
    collected in order to evaluate the chosen statistic.
  XPath Path
    /rw-project:project/rwmon:alarm
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:alarm
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:alarm
  JSON Config Sample
    {
      "alarm-id": "STRING",
      "name": "STRING",
      "description": "STRING",
      "vdur-id": "STRING",
      "actions": {
        "ok": [ { ... }, { ... } ],
        "insufficient-data": [ { ... }, { ... } ],
        "alarm": [ { ... }, { ... } ]
      },
      "repeat": true,
      "enabled": true,
      "severity": "LOW",
      "metric": "CPU_UTILIZATION",
      "statistic": "AVERAGE",
      "operation": "GE",
      "value": 0.0,
      "period": 0,
      "evaluations": 0
    }
  JSON Sample
    {
      "alarm-id": "STRING",
      "name": "STRING",
      "description": "STRING",
      "vdur-id": "STRING",
      "actions": {
        "ok": [ { ... }, { ... } ],
        "insufficient-data": [ { ... }, { ... } ],
        "alarm": [ { ... }, { ... } ]
      },
      "repeat": true,
      "enabled": true,
      "severity": "LOW",
      "metric": "CPU_UTILIZATION",
      "statistic": "AVERAGE",
      "operation": "GE",
      "value": 0.0,
      "period": 0,
      "evaluations": 0
    }
  XML Config Sample
    <rwmon:alarm xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:alarm-id>STRING</rwmon:alarm-id>
      <rwmon:name>STRING</rwmon:name>
      <rwmon:description>STRING</rwmon:description>
      <rwmon:vdur-id>STRING</rwmon:vdur-id>
      <rwmon:actions>
        <rwmon:ok>...</rwmon:ok>
        <rwmon:insufficient-data>...</rwmon:insufficient-data>
        <rwmon:alarm>...</rwmon:alarm>
      </rwmon:actions>
      <rwmon:repeat>true</rwmon:repeat>
      <rwmon:enabled>true</rwmon:enabled>
      <rwmon:severity>LOW</rwmon:severity>
      <rwmon:metric>CPU_UTILIZATION</rwmon:metric>
      <rwmon:statistic>AVERAGE</rwmon:statistic>
      <rwmon:operation>GE</rwmon:operation>
      <rwmon:value>0.0</rwmon:value>
      <rwmon:period>0</rwmon:period>
      <rwmon:evaluations>0</rwmon:evaluations>
    </rwmon:alarm>
  XML Sample
    <rwmon:alarm xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:alarm-id>STRING</rwmon:alarm-id>
      <rwmon:name>STRING</rwmon:name>
      <rwmon:description>STRING</rwmon:description>
      <rwmon:vdur-id>STRING</rwmon:vdur-id>
      <rwmon:actions>
        <rwmon:ok>...</rwmon:ok>
        <rwmon:insufficient-data>...</rwmon:insufficient-data>
        <rwmon:alarm>...</rwmon:alarm>
      </rwmon:actions>
      <rwmon:repeat>true</rwmon:repeat>
      <rwmon:enabled>true</rwmon:enabled>
      <rwmon:severity>LOW</rwmon:severity>
      <rwmon:metric>CPU_UTILIZATION</rwmon:metric>
      <rwmon:statistic>AVERAGE</rwmon:statistic>
      <rwmon:operation>GE</rwmon:operation>
      <rwmon:value>0.0</rwmon:value>
      <rwmon:period>0</rwmon:period>
      <rwmon:evaluations>0</rwmon:evaluations>
    </rwmon:alarm>

1.1.1.4.1  container rwmon:actions
  XPath Path
    /rw-project:project/rwmon:alarm/rwmon:actions
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:alarm/rwmon:actions
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:alarm/actions
  JSON Config Sample
    {
      "ok": [
        {
          "url": "STRING"
        }, {
          ...
        }
      ],
      "insufficient-data": [
        {
          "url": "STRING"
        }, {
          ...
        }
      ],
      "alarm": [
        {
          "url": "STRING"
        }, {
          ...
        }
      ]
    }
  JSON Sample
    {
      "ok": [
        {
          "url": "STRING"
        }, {
          ...
        }
      ],
      "insufficient-data": [
        {
          "url": "STRING"
        }, {
          ...
        }
      ],
      "alarm": [
        {
          "url": "STRING"
        }, {
          ...
        }
      ]
    }
  XML Config Sample
    <rwmon:actions xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:ok>
        <rwmon:url>STRING</rwmon:url>
      </rwmon:ok>
      <rwmon:insufficient-data>
        <rwmon:url>STRING</rwmon:url>
      </rwmon:insufficient-data>
      <rwmon:alarm>
        <rwmon:url>STRING</rwmon:url>
      </rwmon:alarm>
    </rwmon:actions>
  XML Sample
    <rwmon:actions xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:ok>
        <rwmon:url>STRING</rwmon:url>
      </rwmon:ok>
      <rwmon:insufficient-data>
        <rwmon:url>STRING</rwmon:url>
      </rwmon:insufficient-data>
      <rwmon:alarm>
        <rwmon:url>STRING</rwmon:url>
      </rwmon:alarm>
    </rwmon:actions>

1.1.1.4.1.1  list rwmon:ok
  Leaves
    name: url, type: STRING
  XPath Path
    /rw-project:project/rwmon:alarm/rwmon:actions/rwmon:ok
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:alarm/rwmon:actions/rwmon:ok[rwmon:url='STRING']
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:alarm/actions/ok/STRING
  JSON Config Sample
    [
      {
        "url": "STRING"
      }, {
        ...
      }
    ]
  JSON Sample
    [
      {
        "url": "STRING"
      }, {
        ...
      }
    ]
  XML Config Sample
    <rwmon:ok xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:url>STRING</rwmon:url>
    </rwmon:ok>
  XML Sample
    <rwmon:ok xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:url>STRING</rwmon:url>
    </rwmon:ok>

1.1.1.4.1.2  list rwmon:insufficient-data
  Leaves
    name: url, type: STRING
  XPath Path
    /rw-project:project/rwmon:alarm/rwmon:actions/rwmon:insufficient-data
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:alarm/rwmon:actions/rwmon:insufficient-data[rwmon:url='STRING']
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:alarm/actions/insufficient-data/STRING
  JSON Config Sample
    [
      {
        "url": "STRING"
      }, {
        ...
      }
    ]
  JSON Sample
    [
      {
        "url": "STRING"
      }, {
        ...
      }
    ]
  XML Config Sample
    <rwmon:insufficient-data xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:url>STRING</rwmon:url>
    </rwmon:insufficient-data>
  XML Sample
    <rwmon:insufficient-data xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:url>STRING</rwmon:url>
    </rwmon:insufficient-data>

1.1.1.4.1.3  list rwmon:alarm
  Leaves
    name: url, type: STRING
  XPath Path
    /rw-project:project/rwmon:alarm/rwmon:actions/rwmon:alarm
  XPath Keyed Path
    /rw-project:project[rw-project:name='STRING']/rwmon:alarm/rwmon:actions/rwmon:alarm[rwmon:url='STRING']
  RW.REST URI Path
    /rw-project:project/STRING/rwmon:alarm/actions/alarm/STRING
  JSON Config Sample
    [
      {
        "url": "STRING"
      }, {
        ...
      }
    ]
  JSON Sample
    [
      {
        "url": "STRING"
      }, {
        ...
      }
    ]
  XML Config Sample
    <rwmon:alarm xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:url>STRING</rwmon:url>
    </rwmon:alarm>
  XML Sample
    <rwmon:alarm xmlns:rwmon="http://riftio.com/ns/riftware-1.0/rwmon">
      <rwmon:url>STRING</rwmon:url>
    </rwmon:alarm>

2  module rwmon

