  
PGSQL-MIB DEFINITIONS ::= BEGIN

  IMPORTS
        enterprises                           FROM RFC1155-SMI
        OBJECT-TYPE                           FROM RFC-1212
        DisplayString                         FROM RFC-1213
        MODULE-IDENTITY                       FROM SNMPv2-SMI
        MODULE-COMPLIANCE, OBJECT-GROUP       FROM SNMPv2-CONF;

  postgresql         OBJECT IDENTIFIER ::= { enterprises 5432 }
  PostgreSQLObjects  OBJECT IDENTIFIER ::= { postgresql 1 4 }

      -- PostgreSQL MIB

  PostgreSQLMIB MODULE-IDENTITY
    LAST-UPDATED "200511180000Z"
    ORGANIZATION "PostgreSQL Japan"
    CONTACT-INFO "author:   Hiroshi Saito
                  email:    saito@postgresql.jp
                 "
    DESCRIPTION  "PostgreSQL snmp daemon service.
                 "
    ::= { PostgreSQLObjects }
                
----------------------------------------------------------------
  pgsqlDbInfo    OBJECT-TYPE
      SYNTAX     PgsqlDbEntry
      MAX-ACCESS read-only
      STATUS      current
      DESCRIPTION
          "The table of databases installed on a system."
      ::= { PostgreSQLObjects 1 }

  PgsqlDbEntry    ::=
      SEQUENCE {
          pgsqlSrvInfoVersion
              DisplayString,
          pgsqlSrvInfoUptime
              DisplayString,
          pgsqlSrvInfoState
              INTEGER
      }

  pgsqlSrvInfoVersion OBJECT-TYPE
      SYNTAX      DisplayString
      MAX-ACCESS  read-only
      STATUS      current
      DESCRIPTION
          "The name of PostgreSQL, in a product specific format."
      ::= { pgsqlDbInfo 1 1}

  pgsqlSrvInfoUptime OBJECT-TYPE
      SYNTAX      DisplayString
      MAX-ACCESS  read-only
      STATUS      current
      DESCRIPTION
          "Startup the time of PostgreSQL server."
      ::= { pgsqlDbInfo 1 2}

  pgsqlSrvInfoState OBJECT-TYPE
      SYNTAX INTEGER {
                 offline(0),
                 active(1)
             }
      ACCESS read-only
      STATUS mandatory
      DESCRIPTION
          "The state of the database. Valid states are defined as follows:
           Offline(0), Active(1)."
      ::= { pgsqlDbInfo 1 3}


----------------------------------------------------------------

  pgsqlDbDatabase    OBJECT-TYPE
      SYNTAX     pgsqlSrvDatabase
      MAX-ACCESS read-only
      STATUS      current
      DESCRIPTION
           "This table contains general information regarding
            the active PostgreSQL process, including performance
            counters."                
      ::= { PostgreSQLObjects 2 }

  pgsqlSrvDatabase    ::=
      SEQUENCE {
          pgsqlSrvDataName
              DisplayString,
          pgsqlSrvDataOwner
              DisplayString,
          pgsqlSrvDataEncoding
              DisplayString,
          pgsqlSrvDataDumbackends
              INTEGER,
          pgsqlSrvDataXact_commit
              INTEGER,
          pgsqlSrvDataXact_rollback
              INTEGER,
          pgsqlSrvDataBlks_read
              INTEGER,
          pgsqlSrvDataBlks_hit
              INTEGER,
          pgsqlSrvDataKBsize
              DisplayString
      }

----------------------------------------------------------------

END
