-- This MIB defines the traps that are generated by the Endace ERFSTREAM
-- event protocol.
-- 
-- LEGAL NOTICE:
-- This source code:
-- 
-- a) is a proprietary trade secret of Endace Technology Limited or any of
-- its related or affiliated companies, a New Zealand company, and its
-- suppliers and licensors ('Endace'). You must keep it strictly
-- confidential, and you must not copy, modify, disclose or distribute any
-- part of it to anyone else, without the prior written
-- authorisation of Endace Limited;
-- 
-- b) may also be part of inventions that are protected by patents and
-- patent applications; and
-- 
-- c) is copyright (C) to Endace, 2012 to 2021. All rights reserved.

ENDACE-ERFSTREAM-MIB DEFINITIONS ::= BEGIN

IMPORTS
    endace
        FROM ENDACE-MIB
    NOTIFICATION-GROUP, OBJECT-GROUP
        FROM SNMPv2-CONF
    Counter32, Counter64, Gauge32, MODULE-IDENTITY, NOTIFICATION-TYPE,
    OBJECT-IDENTITY, OBJECT-TYPE, Unsigned32
        FROM SNMPv2-SMI
    DisplayString, TEXTUAL-CONVENTION, TruthValue
        FROM SNMPv2-TC
    ;

endaceErfstreamMIB MODULE-IDENTITY
    LAST-UPDATED  "202107210349Z" -- July 21, 2021
    ORGANIZATION
        "Endace Technology"
    CONTACT-INFO
        "postal: Endace Technology
         6th floor
         KPMG Centre
         85 Alexandra Street
         Hamilton 3204
         New Zealand

         email:   support@endace.com"
    DESCRIPTION
        "MIB for event notification from Data Pipe applications."
    REVISION      "202106131941Z" -- June 13, 2021
    DESCRIPTION
        "New managed objects and notification for Data Pipe running
         status and Rotation File start/end times."
    REVISION      "201707040245Z" -- July 04, 2017
    DESCRIPTION
        "Compression column in rotationFileStatusTable"
    REVISION      "201702141751Z" -- February 14, 2017
    DESCRIPTION
        "Adding MOs for flow rate (table column and notifications)."
    REVISION      "201612062350Z" -- December 06, 2016
    DESCRIPTION
        "Add notifications for concurrent Data Pipe flows."
    REVISION      "201403092304Z" -- March 09, 2014
    DESCRIPTION
        "Added new Rotation File objects."
    REVISION      "201401300105Z" -- January 30, 2014
    DESCRIPTION
        "Declared 'Pilot' related OID as obsolete."
    REVISION      "201209240556Z" -- September 24, 2012
    DESCRIPTION
        "Some more vision objects."
    REVISION      "201205040024Z" -- May 04, 2012
    DESCRIPTION
        "New managed objects for vision."
    ::= { endace 12 }

-- VARIABLES

PipeIndex ::= TEXTUAL-CONVENTION
    DISPLAY-HINT  "x"
    STATUS        current
    DESCRIPTION
        "A unique value, greater then zero, for each Data Pipe
         defined."
    SYNTAX        Unsigned32 (0..2147483647)

RotationFileIndex ::= TEXTUAL-CONVENTION
    STATUS        current
    DESCRIPTION
        "A unique value, greater then zero, for each Rotation File
         defined."
    SYNTAX        Unsigned32 (0..2147483647)

VisionDBIndex ::= TEXTUAL-CONVENTION
    DISPLAY-HINT  "x"
    STATUS        current
    DESCRIPTION
        "A unique value, greater then zero, for each Vision DB
         defined."
    SYNTAX        Unsigned32 (0..2147483647)

VisionDBVersionIndex ::= TEXTUAL-CONVENTION
    STATUS        current
    DESCRIPTION
        ""
    SYNTAX        Unsigned32 (0..2147483647)

erfstreamVariables OBJECT IDENTIFIER ::= { endaceErfstreamMIB 1 }

pipeInfoTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF PipeInfoTableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "The table of information about the Pipe"
    ::= { erfstreamVariables 1 }

pipeInfoTableEntry OBJECT-TYPE
    SYNTAX        PipeInfoTableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Settings for each Pipe used."
    INDEX
        { pipeInfoIndex }
    ::= { pipeInfoTable 1 }

PipeInfoTableEntry ::= SEQUENCE
{
    pipeInfoIndex PipeIndex,
    pipeName      DisplayString
}


pipeInfoIndex OBJECT-TYPE
    SYNTAX        PipeIndex
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "The Data Pipe index."
    ::= { pipeInfoTableEntry 1 }

pipeName OBJECT-TYPE
    SYNTAX        DisplayString (SIZE(0..255))
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The Data Pipe Name."
    ::= { pipeInfoTableEntry 2 }

pipeStatusTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF PipeStatusTableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "The table containing status information about Data Pipes"
    ::= { erfstreamVariables 2 }

pipeStatusTableEntry OBJECT-TYPE
    SYNTAX        PipeStatusTableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Settings for each Data Pipe used."
    INDEX
        { pipeStatusIndex }
    ::= { pipeStatusTable 1 }

PipeStatusTableEntry ::= SEQUENCE
{
    pipeStatusIndex      PipeIndex,
    pipeInputPackets     Counter64,
    pipeInputBytes       Counter64,
    pipeOutputPackets    Counter64,
    pipeOutputBytes      Counter64,
    pipeDroppedPackets   Counter64,
    pipeDroppedBytes     Counter64,
    pilotDroppedPackets  Counter64,
    pilotDroppedBytes    Counter64,
    visionDroppedRecords Counter64,
    pipeCurrentFlows     Gauge32,
    pipeFlowRate         Gauge32,
    pipeCreatedFlows     Counter64,
    pipeDeletedFlows     Counter64,
    pipeRunningStatus    INTEGER
}


pipeStatusIndex OBJECT-TYPE
    SYNTAX        PipeIndex
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "The PipeStatus index."
    ::= { pipeStatusTableEntry 1 }

pipeInputPackets OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The number of packets entering the Data Pipe."
    ::= { pipeStatusTableEntry 2 }

pipeInputBytes OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The number of bytes entering the Data Pipe."
    ::= { pipeStatusTableEntry 3 }

pipeOutputPackets OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The number of packets exiting the Data Pipe."
    ::= { pipeStatusTableEntry 4 }

pipeOutputBytes OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The number of bytes exiting the Data Pipe."
    ::= { pipeStatusTableEntry 5 }

pipeDroppedPackets OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The number of packet drop counts produced by the Data Pipe."
    ::= { pipeStatusTableEntry 6 }

pipeDroppedBytes OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The number of drop counts in bytes produced by the Data
         Pipe."
    ::= { pipeStatusTableEntry 7 }

pilotDroppedPackets OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        obsolete
    DESCRIPTION
        "The number of packets dropped by the Data Pipe at the Pilot
         vDAG interface."
    ::= { pipeStatusTableEntry 8 }

pilotDroppedBytes OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        obsolete
    DESCRIPTION
        "The number of bytes dropped by the Data Pipe at the Pilot vDAG
         interface."
    ::= { pipeStatusTableEntry 9 }

visionDroppedRecords OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The number of vision records dropped by the Data Pipe."
    ::= { pipeStatusTableEntry 10 }

pipeCurrentFlows OBJECT-TYPE
    SYNTAX        Gauge32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The number of flows currently tracked by the Data pipe."
    ::= { pipeStatusTableEntry 11 }

pipeFlowRate OBJECT-TYPE
    SYNTAX        Gauge32
    UNITS         "flows/s"
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The maximum flow creation rate seen flows during the last
         minute, given in [flow/s]."
    ::= { pipeStatusTableEntry 12 }

pipeCreatedFlows OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Number of flows that were created since pipe was started and
         hence have been added to the flow tracker."
    ::= { pipeStatusTableEntry 13 }

pipeDeletedFlows OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Number of flows terminated or expired since the start of the
         given pipe and hence were deleted from the flow tracker."
    ::= { pipeStatusTableEntry 14 }

pipeRunningStatus OBJECT-TYPE
    SYNTAX        INTEGER {
        -- The Data Pipe is in a stopped state.
        stopped(0),
        -- The Data Pipe is in a paused state.
        paused(1),
        -- The Data Pipe is in a running state.
        running(2),
        -- The Data Pipe replay is complete.
        complete(3),
        -- The Data Pipe is transitioning to a stopped state.
        stopping(4),
        -- The Data Pipe is being prepared for the next stage.
        preparing(5)
    }
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "This managed object describes the current status of a Data
         Pipe. This could be static stages such as 'stopped', 'paused',
         'running' or 'complete', but also transitional stages like
         'stopping' or 'preparing'."
    ::= { pipeStatusTableEntry 15 }

visionDBStatusTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF VisionDBStatusTableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "The table of vision DB statuses"
    ::= { erfstreamVariables 3 }

visionDBStatusTableEntry OBJECT-TYPE
    SYNTAX        VisionDBStatusTableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Status of each vision DB."
    INDEX
        { visionDBStatusVersionIndex, visionDBStatusIndex }
    ::= { visionDBStatusTable 1 }

VisionDBStatusTableEntry ::= SEQUENCE
{
    visionDBStatusVersionIndex VisionDBVersionIndex,
    visionDBStatusIndex        VisionDBIndex,
    visionDBRotfileName        DisplayString,
    visionDBUsage              Gauge32
}


visionDBStatusVersionIndex OBJECT-TYPE
    SYNTAX        VisionDBVersionIndex
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "The Vision DB RotationFile version index."
    ::= { visionDBStatusTableEntry 1 }

visionDBStatusIndex OBJECT-TYPE
    SYNTAX        VisionDBIndex
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "The Vision DB Rotation File index."
    ::= { visionDBStatusTableEntry 2 }

visionDBRotfileName OBJECT-TYPE
    SYNTAX        DisplayString (SIZE(0..255))
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The Rotation File Name this Vision DB belongs."
    ::= { visionDBStatusTableEntry 3 }

visionDBUsage OBJECT-TYPE
    SYNTAX        Gauge32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Vision DB usage in percentage."
    ::= { visionDBStatusTableEntry 4 }

rotationFileStatusTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF RotationFileStatusTableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "The table of Rotation File statuses"
    ::= { erfstreamVariables 4 }

rotationFileStatusTableEntry OBJECT-TYPE
    SYNTAX        RotationFileStatusTableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Status of each Rotation File."
    INDEX
        { rotationFileIndex }
    ::= { rotationFileStatusTable 1 }

RotationFileStatusTableEntry ::= SEQUENCE
{
    rotationFileIndex       RotationFileIndex,
    rotationFileName        DisplayString,
    rotationFileStoredSecs  Counter32,
    rotationFileCompression INTEGER,
    rotationFileStartDate   DisplayString,
    rotationFileEndDate     DisplayString
}


rotationFileIndex OBJECT-TYPE
    SYNTAX        RotationFileIndex
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The Rotation File index."
    ::= { rotationFileStatusTableEntry 1 }

rotationFileName OBJECT-TYPE
    SYNTAX        DisplayString (SIZE(0..255))
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The Rotation File Name."
    ::= { rotationFileStatusTableEntry 2 }

rotationFileStoredSecs OBJECT-TYPE
    SYNTAX        Counter32
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The Rotation File stored data in seconds."
    ::= { rotationFileStatusTableEntry 3 }

rotationFileCompression OBJECT-TYPE
    SYNTAX        INTEGER {
        -- Rotation File does not use compression.
        no(0),
        -- Rotation File uses compression
        yes(1)
    }
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Compression type used in this Rotation File."
    ::= { rotationFileStatusTableEntry 4 }

rotationFileStartDate OBJECT-TYPE
    SYNTAX        DisplayString (SIZE(19))
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Date of oldest captured packet in UTC (ISO 8601 format)."
    ::= { rotationFileStatusTableEntry 5 }

rotationFileEndDate OBJECT-TYPE
    SYNTAX        DisplayString (SIZE(19))
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Date of latest captured packet in UTC (ISO 8601 format)."
    ::= { rotationFileStatusTableEntry 6 }

nicInfoTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF NicInfoTableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table holds information of the capture engine that is
         relevant when data is captured from standard NICs."
    ::= { erfstreamVariables 5 }

nicInfoTableEntry OBJECT-TYPE
    SYNTAX        NicInfoTableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table holds information of the capture engine that is
         relevant when data is captured from standard NICs."
    INDEX
        { nicInfoIndex }
    ::= { nicInfoTable 1 }

NicInfoTableEntry ::= SEQUENCE
{
    nicInfoIndex            Unsigned32,
    nicInfoInterface        DisplayString,
    nicInfoDroppedInPackets Counter64,
    nicInfoDroppedInBytes   Counter64,
    nicInfoInUse            TruthValue
}


nicInfoIndex OBJECT-TYPE
    SYNTAX        Unsigned32
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Index for nicInfoTable."
    ::= { nicInfoTableEntry 1 }

nicInfoInterface OBJECT-TYPE
    SYNTAX        DisplayString
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Interface name of the NIC being in use for capture."
    ::= { nicInfoTableEntry 2 }

nicInfoDroppedInPackets OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Number of packets being dropped internally on this NIC, most
         likely due to over-load conditions during  application
         detection, flow tracking or writing to disk."
    ::= { nicInfoTableEntry 3 }

nicInfoDroppedInBytes OBJECT-TYPE
    SYNTAX        Counter64
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Number of bytes being dropped internally on this NIC, most
         likely due to over-load conditions during  application
         detection, flow tracking or writing to disk."
    ::= { nicInfoTableEntry 4 }

nicInfoInUse OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates, whether this interface is currently in use for
         capture."
    ::= { nicInfoTableEntry 5 }

eventTraps OBJECT IDENTIFIER ::= { endaceErfstreamMIB 2 }

-- NOTIFICATIONS

erfstreamNotificationPrefix OBJECT IDENTIFIER ::= { eventTraps 0 }

pipeDropFault NOTIFICATION-TYPE
    OBJECTS
        { pipeName }
    STATUS        current
    DESCRIPTION
        "pipeDropFault trap signifies that the Data Pipe's drop count
         has exceeded its threshold value."
    ::= { erfstreamNotificationPrefix 1 }

-- This is a comment to describe the pipe-drop-normal event.

pipeDropNormal NOTIFICATION-TYPE
    OBJECTS
        { pipeName }
    STATUS        current
    DESCRIPTION
        "pipeDropNormal trap indicates that the Data Pipe's drop count
         is less than the threshold value."
    ::= { erfstreamNotificationPrefix 2 }

pilotDropFault NOTIFICATION-TYPE
    OBJECTS
        { pipeName }
    STATUS        obsolete
    DESCRIPTION
        "pilotDropFault trap signifies that the Data Pipe's drop count
         at Pilot vDAG interface has exceeded its threshold value."
    ::= { erfstreamNotificationPrefix 3 }

pilotDropNormal NOTIFICATION-TYPE
    OBJECTS
        { pipeName }
    STATUS        obsolete
    DESCRIPTION
        "pilotDropNormal trap indicates that the Data Pipe's drop count
         at Pilot vDAG interface is less than the threshold value."
    ::= { erfstreamNotificationPrefix 4 }

visionDropFault NOTIFICATION-TYPE
    OBJECTS
        { pipeName }
    STATUS        current
    DESCRIPTION
        "visionDropFault trap signifies that the Vision records's drop
         count has exceeded its threshold value."
    ::= { erfstreamNotificationPrefix 5 }

visionDropNormal NOTIFICATION-TYPE
    OBJECTS
        { pipeName }
    STATUS        current
    DESCRIPTION
        "visionDropNormal trap indicates that the Vision records's drop
         count is less than the threshold value."
    ::= { erfstreamNotificationPrefix 6 }

visionMetadataDBFull NOTIFICATION-TYPE
    OBJECTS
        { visionDBRotfileName }
    STATUS        current
    DESCRIPTION
        "visionMetadataDBFull trap indicates that the Rotation File
         Vision Metadata DB size has exceeded the threshold value and is
         now full."
    ::= { erfstreamNotificationPrefix 7 }

visionMetadataDBThreshold NOTIFICATION-TYPE
    OBJECTS
        { visionDBRotfileName }
    STATUS        current
    DESCRIPTION
        "visionMetadataDBThreshold trap indicates that the Rotation
         File Vision Metadata DB size has exceeded the threshold
         value."
    ::= { erfstreamNotificationPrefix 8 }

visionMetadataDBNormal NOTIFICATION-TYPE
    OBJECTS
        { visionDBRotfileName }
    STATUS        current
    DESCRIPTION
        "visionMetadataDBNormal trap indicates that the Rotation File
         Vision Metadata DB size is less than the threshold value."
    ::= { erfstreamNotificationPrefix 9 }

visionMetadataDBBelowFull NOTIFICATION-TYPE
    OBJECTS
        { visionDBRotfileName }
    STATUS        current
    DESCRIPTION
        "visionMetadataDBBelowFull trap indicates that the Rotation
         File Vision Metadata DB size is now below full."
    ::= { erfstreamNotificationPrefix 10 }

rotationFilePrematureLossFault NOTIFICATION-TYPE
    OBJECTS
        { rotationFileName }
    STATUS        current
    DESCRIPTION
        "rotationFilePrematureLossFault trap indicates that packets
         whose timestamp lie within the minimum retention period have
         started to rotate out"
    ::= { erfstreamNotificationPrefix 11 }

rotationFilePrematureLossNormal NOTIFICATION-TYPE
    OBJECTS
        { rotationFileName }
    STATUS        current
    DESCRIPTION
        "rotationFilePrematureLossNormal trap indicates that packets
         whose timestamp lie within the minimum retention period are no
         longer being rotated out"
    ::= { erfstreamNotificationPrefix 12 }

rotationFilePrematureLossWarning NOTIFICATION-TYPE
    OBJECTS
        { rotationFileName }
    STATUS        current
    DESCRIPTION
        "rotationFilePrematureLossWarning trap indicates that there is
         imminent danger of packets whose timestamp lie within the
         minimum retention period being rotated out"
    ::= { erfstreamNotificationPrefix 13 }

nicInDropFault NOTIFICATION-TYPE
    OBJECTS
        { nicInfoInterface }
    STATUS        current
    DESCRIPTION
        "The capturing NIC dropped packets internally, most likely
         since internal processing (application detection, flow
         tracking, writing to disc) was not fast enough."
    ::= { erfstreamNotificationPrefix 14 }

nicInDropNormal NOTIFICATION-TYPE
    OBJECTS
        { nicInfoInterface }
    STATUS        current
    DESCRIPTION
        "The capturing NIC doesn't drop packets anymore."
    ::= { erfstreamNotificationPrefix 15 }

pipeCurrentFlowsHigh NOTIFICATION-TYPE
    OBJECTS
        { pipeName, pipeCurrentFlows }
    STATUS        current
    DESCRIPTION
        "The number of concurrently handled flows in the given Data
         Pipe exceeds the configured threshold."
    ::= { erfstreamNotificationPrefix 16 }

pipeCurrentFlowsNormal NOTIFICATION-TYPE
    OBJECTS
        { pipeName, pipeCurrentFlows }
    STATUS        current
    DESCRIPTION
        "The number of concurrently handled flows in the given Data
         Pipe is back within the configured threshold."
    ::= { erfstreamNotificationPrefix 17 }

pipeFlowRateHigh NOTIFICATION-TYPE
    OBJECTS
        { pipeName, pipeFlowRate }
    STATUS        current
    DESCRIPTION
        "The observed flow creation rate for the given Data Pipe
         exceeds the configured threshold"
    ::= { erfstreamNotificationPrefix 18 }

pipeFlowRateNormal NOTIFICATION-TYPE
    OBJECTS
        { pipeName, pipeFlowRate }
    STATUS        current
    DESCRIPTION
        "The currently observed flow rate for the give Data Pipe is
         with the configured threshold."
    ::= { erfstreamNotificationPrefix 19 }

pipeRunningStatusChange NOTIFICATION-TYPE
    OBJECTS
        { pipeName, pipeRunningStatus }
    STATUS        current
    DESCRIPTION
        "The running status of an ERFstream pipe has changed."
    ::= { erfstreamNotificationPrefix 20 }

-- Conformance

erfstreamConf OBJECT IDENTIFIER ::= { endaceErfstreamMIB 3 }

-- Groups

erfstreamGroups OBJECT IDENTIFIER ::= { erfstreamConf 1 }

pipeAttributes OBJECT-GROUP
    OBJECTS
        { pipeName }
    STATUS        current
    DESCRIPTION
        "Group containing Data Pipe configuration details."
    ::= { erfstreamGroups 1 }

pipeStatus OBJECT-GROUP
    OBJECTS
        { pipeCurrentFlows, pipeDroppedBytes, pipeDroppedPackets,
        pipeInputBytes, pipeInputPackets, pipeOutputBytes,
        pipeOutputPackets, pipeFlowRate, pipeCreatedFlows,
        pipeDeletedFlows, pipeRunningStatus }
    STATUS        current
    DESCRIPTION
        "A collection of objects providing Data Pipe status
         information."
    ::= { erfstreamGroups 2 }

pipeEvents NOTIFICATION-GROUP
    NOTIFICATIONS
        { pipeCurrentFlowsHigh, pipeCurrentFlowsNormal, pipeDropFault,
        pipeDropNormal, visionDropFault, visionDropNormal,
        pipeFlowRateHigh, pipeFlowRateNormal, pipeRunningStatusChange }
    STATUS        current
    DESCRIPTION
        "A collection of objects providing information about
         notifications raised when Data Pipe packet drops occur or when
         the number fo currently handled flows gets too high."
    ::= { erfstreamGroups 3 }

visionEvents NOTIFICATION-GROUP
    NOTIFICATIONS
        { visionMetadataDBFull, visionMetadataDBThreshold,
        visionMetadataDBNormal, visionMetadataDBBelowFull }
    STATUS        current
    DESCRIPTION
        "A collection of objects providing information about
         notifications raised when Vision issues occur."
    ::= { erfstreamGroups 4 }

visionAttributes OBJECT-GROUP
    OBJECTS
        { visionDBRotfileName, visionDBUsage, visionDroppedRecords }
    STATUS        current
    DESCRIPTION
        "A collection of objects providing information about Vision
         DB."
    ::= { erfstreamGroups 5 }

obsoleteErfstreamAttributes OBJECT-GROUP
    OBJECTS
        { pilotDroppedBytes, pilotDroppedPackets }
    STATUS        obsolete
    DESCRIPTION
        "This group contains obsolete attributes, because even if
         unused according to SMIv2 practices all attributes have to be
         in at least one group."
    ::= { erfstreamGroups 6 }

obsoleteErfstreamNotifications NOTIFICATION-GROUP
    NOTIFICATIONS
        { pilotDropFault, pilotDropNormal }
    STATUS        obsolete
    DESCRIPTION
        "This group contains obsolete notifications, because even if
         unused according to SMIv2 practices all notifications have to
         be in at least one group."
    ::= { erfstreamGroups 7 }

rotationFileEvents NOTIFICATION-GROUP
    NOTIFICATIONS
        { rotationFilePrematureLossFault,
        rotationFilePrematureLossNormal,
        rotationFilePrematureLossWarning }
    STATUS        current
    DESCRIPTION
        "A collection of objects providing information about
         notifications raised when Rotation File issues occur."
    ::= { erfstreamGroups 8 }

rotationFileAttributes OBJECT-GROUP
    OBJECTS
        { rotationFileCompression, rotationFileIndex, rotationFileName,
        rotationFileStoredSecs, rotationFileStartDate,
        rotationFileEndDate }
    STATUS        current
    DESCRIPTION
        "A collection of objects providing information about Rotation
         File."
    ::= { erfstreamGroups 9 }

nicEvents NOTIFICATION-GROUP
    NOTIFICATIONS
        { nicInDropFault, nicInDropNormal }
    STATUS        current
    DESCRIPTION
        "The notifications in this groups cover events that occur, when
         a NIC is used as a capture device."
    ::= { erfstreamGroups 10 }

nicAttributes OBJECT-GROUP
    OBJECTS
        { nicInfoDroppedInBytes, nicInfoDroppedInPackets,
        nicInfoInterface, nicInfoInUse }
    STATUS        current
    DESCRIPTION
        "The OIDs in this group are only relevant, when a NIC is used
         to capture packets."
    ::= { erfstreamGroups 11 }

END
