###############################################################################
# Access Control
###############################################################################
####
# First, map the community name (COMMUNITY) into a security name
# (local and mynetwork, depending on where the request is coming from):

#       sec.name  source          community
com2sec local     localhost       public
com2sec mynetwork <ip of your nms>    public

####
# Second, map the security names into group names:

#             	sec.model  sec.name
group MyRWGroup	v1         local
group MyRWGroup	v2c        local
group MyRWGroup	usm        local
group MyROGroup v1         mynetwork
group MyROGroup v2c        mynetwork
group MyROGroup usm        mynetwork

####
# Third, create a view for us to let the groups have rights to:

#           incl/excl subtree                          mask
view all    included  .1                               80

####
# Fourth, specify trap destination

trapcommunity public
trapsink <ip of your nms>
trap2sink <ip of your nms>
informsink <ip of your nms>


####
# Finally, grant the 2 groups access to the 1 view with different
# write permissions:

#                context sec.model sec.level match  read   write  notif
access MyROGroup ""      any       noauth    exact  all    none   none
access MyRWGroup ""      any       noauth    exact  all    all    none

###############################################################################
# System contact information
#
# It is also possible to set the sysContact and sysLocation system
# variables through the snmpd.conf file:

syslocation <System Location Here>
syscontact <Your name here>

###############################################################################
# Process checks.
#
#  The following are examples of how to use the agent to check for
#  processes running on the host.  The syntax looks something like:
#
#  proc NAME [MAX=0] [MIN=0]
#
#  NAME:  the name of the process to check for.  It must match
#         exactly (ie, http will not find httpd processes).
#  MAX:   the maximum number allowed to be running.  Defaults to 0.
#  MIN:   the minimum number to be running.  Defaults to 0.

proc cron 1 1
proc snmpd 1 1


###############################################################################
# file checks
# not sure how this works yet, figurin it out as I go along
#
# should be something along the lines of:
#
# file PATH MAX


###############################################################################
# disk checks
#
# disk PATH [MIN=DEFDISKMINIMUMSPACE]
#
# PATH:  mount path to the disk in question.
# MIN:   Disks with space below this value will have the Mib's errorFlag set.
#        Default value = DEFDISKMINIMUMSPACE.

# Check all partitions and make sure that at least 10% of total space is free.

disk / <10% of disk space>
disk /usr <10% of disk space>
disk /opt <10% of disk space>
disk /tmp <10% of disk space>


###############################################################################
# load average checks
#
# load [1MAX=DEFMAXLOADAVE] [5MAX=DEFMAXLOADAVE] [15MAX=DEFMAXLOADAVE]
#
# 1MAX:   If the 1 minute load average is above this limit at query
#         time, the errorFlag will be set.
# 5MAX:   Similar, but for 5 min average.
# 15MAX:  Similar, but for 15 min average.

# Check for loads:
load 4 4 4

