-- *****************************************************************
-- INFINERA-SYSLOG-MIB
--
-- March 2017, Kavitha Manjunatha / Divyank Rastogi
--
--
-- Copyright (c) 2008-2012 by Infinera Inc.
-- All rights reserved.
-- ****************************************************************

INFINERA-SYSLOG-MIB DEFINITIONS ::= BEGIN

IMPORTS
    OBJECT-TYPE, MODULE-IDENTITY, Unsigned32       FROM SNMPv2-SMI
    MODULE-COMPLIANCE, OBJECT-GROUP                FROM SNMPv2-CONF
    ifIndex                                        FROM IF-MIB
    DisplayString                                  FROM SNMPv2-TC
    syslog                                         FROM INFINERA-REG-MIB
    InfnTransportProtocol, InfnSyslogAdminState    FROM INFINERA-TC-MIB;

syslogMIB MODULE-IDENTITY
    LAST-UPDATED  "201703090000Z"
    ORGANIZATION  "Infinera"
    CONTACT-INFO
        "Infinera
        1322 Bordeaux Drive
        Sunnyvale, CA - 94089

        Contact : Technical Support
        Email   : support@infinera.com
        Phone   : 1-877-INF-5288"
    DESCRIPTION
        " "
    REVISION  "201703090000Z"
    DESCRIPTION
        "First Version"
    ::= { syslog 1 }

syslogTable  OBJECT-TYPE
    SYNTAX SEQUENCE OF SyslogEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "A list of Syslog entries. Each entry is uniquely identified by
                the value of ifIndex."
    ::= { syslogMIB 1 }

syslogEntry  OBJECT-TYPE
    SYNTAX     SyslogEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
        "A syslog entry containing information pertaining to Infinera syslog"
    INDEX { ifIndex }
    ::= { syslogTable 1 }

SyslogEntry  ::= SEQUENCE {
    moId                    DisplayString,
    transportProtocol       InfnTransportProtocol,
    serverIpAddress         DisplayString,
    serverPort              Unsigned32,
    facilityMapping         Integer32,
    logFilteringLevel       Integer32,
    adminState              InfnSyslogAdminState
}

moId   OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION ""
    ::= { syslogEntry 1 }

transportProtocol  OBJECT-TYPE
    SYNTAX      InfnTransportProtocol
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { syslogEntry 2 }

serverIpAddress  OBJECT-TYPE
    SYNTAX      DisplayString
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { syslogEntry 3}

serverPort  OBJECT-TYPE
    SYNTAX      Unsigned32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { syslogEntry 4 }

facilityMapping  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { syslogEntry 5 }

logFilteringLevel  OBJECT-TYPE
    SYNTAX      Integer32
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { syslogEntry 6 }

adminState  OBJECT-TYPE
    SYNTAX      InfnSyslogAdminState
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION ""
    ::= { syslogEntry 7 }

syslogConformance   OBJECT IDENTIFIER ::= { syslogMIB 2 }
syslogCompliances   OBJECT IDENTIFIER ::= { syslogConformance 1 }
syslogGroups        OBJECT IDENTIFIER ::= { syslogConformance 2 }

syslogCompliance MODULE-COMPLIANCE
    STATUS current
    DESCRIPTION
    "Describes the requirements for conformance to the SYSLOG-MIB"
    MODULE
        MANDATORY-GROUPS { syslogGroup }
    ::= { syslogCompliances 1 }

syslogGroup OBJECT-GROUP
    OBJECTS {
        moId,
        transportProtocol,
        serverIpAddress,
        serverPort,
        facilityMapping,
        logFilteringLevel,
        adminState
    }
    STATUS current
    DESCRIPTION
        " A collection of objects for managing the syslogs"
    ::= { syslogGroups 1 }

END

