HP OPENVIEW and Tivoli Storage Manager SNMP traps

i currently manage a large network of UNIX
servers (mixture of AIX, Solaris, HP-UX and Tru64) and have recently taken
over support of a small group of AIX servers (5 of them) that consist of
an TSM Backup server and 400 clients. The machines run Oracle databases and so
have two types of backup, the standard backup and a backup of the oracle
datafiles using rman.
The majority of our other servers are backed up using Tivoli Storage manager  and
so we use OpenViews ability to monitore plain text files to check the
status of the backups (simply checking /nsr/logs/messages for Failed or
I realise that things are not so simple with TSM. However, we would really
like a way of automatically checking the status of the backups and then
calling a script to raise OV alerts if a failure is detected.
An additional complication is that because of the network config between
ourselves and these new servers we cannot receive SNMP traps.

Does anyone have any experience doing this ? Using HPOPENVIEW to automate SNMP traps thru TSM?
 Does anyone have a sample configuration or set up HPOPENVIEW SNMP traps and TSM that I can use as an example?
I'd appreciate any advice.
Thank you.

many thanks
Who is Participating?
woolmilkporcConnect With a Mentor Commented:
Hi again,

meanwhile I had a closer look at snmp version 3.
We still run snmp v1 here, because of a _very_ old NetView/6000

Due to the fact that the v3 snmpd himself incorporates the dpid functionality,
it seems that it doesn't honor the dpid-smux community any more.

So, we actually can't use the dpid community name for dsmsnmp, but must use the snmp
standard community ('public' in your case).

Consequently, in contradiction to what I wrote in my previous posts, the
affected line in dsmserv.opt must read:


However, all the other things I wrote stay valid.

Sorry for not having noticed this a bit earlier!


Are your Backups scheduled via TSM Scheduler?
If so, you could query the server for the result of the Schedules and parse the output ('Status', which can be Completed, Failed. In Progress, Pending etc.) accordingly.
Syntax is:
dsmadmc -id=[your_tsm-adminid] -pass=[your_tsm-adminpasswd] query event [domainname] [schedulename] begindate=MM/DD/YY (or TODAY or TODAY+/-n) enddate=MM/DD/YY (or TODAY or TODAY +/-n) begintime=HH:MM (or NOW or NOW+/-HH:MM) endtime=HH:MM (or NOW or NOW+/-HH:MM)
Domainname and schedulename can be wildcard'ed.
Times and dates default to NOW resp. TODAY
Look at dsmadmc 'help query event' for more.

You'll have to play around with the parameters for results suitable for your needs.
Output looks ugly at first sight, but try it.

For less fields in output, you could use a SELECT Query. Ask me if you need it.

techie27Author Commented:
Hi woolmikpor,  The main question, is that we would like to automate the TSM Server and clients ANR Alerts thru HPOPENVIEW.
Yes, our backups are set up via TSM scheduler.

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

OK, although you said you couldn't use SNMP traps, here are the first steps to enable SNMP on a TSM Server.
1. In dsmserv.opt uncomment the line COMMETHOD SNMP. Perhaps you might want to set some other parameters as desribed in the comments of dsmserv.opt under 'SNMP'.
2. In your snmp configuration, add
smux public (or whatrever domain you might want to use, as configured in dsmserv.opt).
Take care to recycle snmpd and have dpid2 running.
3. Start the snmp subagent dsmsnmp, preferrably before starting the server. Start/recycle TSM
4. On TSM console (or dsmadmc) enter:
begin eventlogging snmp  
enable event snmp all
You can enable/disable events as you like. See 'help disable events' or 'help enable events' on TSM console (or dsmadmc) .
5.The MIB file name is adsmserv.mib
Use some command like 'loadmib' (Tivoli NV) on your snmp manager to have the MIB variables available symbolically.
Use something like 'mib2trap' (Tivoli NV) to integrate the trap definitions contained in the MIB into your trap configuration file.
Hi again,
if you can't use traps, how about a TSM server exit?
This is from IBM docs --
Logging Events to a File Exit and a User Exit
You can log events to a file exit and a user exit:
A file exit is a file that receives all the information related to its enabled events. Be aware that this file can rapidly grow in size depending on the events enabled for it. There are two versions of the file exit: binary and text. The binary file exit stores each logged event as a record, while the text file exit stores each logged event as a fixed-sized, readable line. For more information about the text file exit, see Readable Text File Exit (FILETEXTEXIT) Format.
A user exit is an external interface in the form of an executable, user-written program. Tivoli Storage Manager supports user exits.
Both types of event receivers must be specified in the server options file (dsmserv.opt) file.
Both file and user exits receive event data in the same data block structure. Setting up logging for these receivers is also similar:

Add an option for the exit to the server options file:
For a file exit: Add either the FILEEXIT option (for a binary file exit) or FILETEXTEXIT (for a text file exit) option.
Specify whether event logging to the file exit receiver begins automatically at server startup. The parameters are YES and NO. If you do not specify YES, you must begin event logging manually by issuing the BEGIN EVENTLOGGING command.
Specify the file where each logged event is to be stored.
Specify how files will be stored if the file being stored already exists. REPLACE will overwrite the existing file, APPEND will append data to the existing file, and PRESERVE will not overwrite the existing file.
For example,
fileexit yes /tsm/server/data replace
filetextexit yes /tsm/server/data replace
For a user exit: Add the USEREXIT option.
Specify whether event logging to the user exit receiver begins automatically at server startup. The parameters for this option are YES and NO. If you do not specify YES, you must begin event logging manually by issuing the BEGIN EVENTLOGGING command.
Specify the name of the user-exit function in the service program.
Specify a module name of the user exit. This is the name of a shared library containing the exit.
For example,
userexit no fevent.exit
Enable events for the receiver. You must specify the name of the user exit in the USEREXIT server option and the name of the file in the FILEEXIT server option. Here are two examples:
enable events file error
enable events userexit error,severe
You can also enable events to one or more client nodes or servers by specify the NODENAME OR SERVERNAME parameter. See Enabling and Disabling Events for more information.
If you did not specify YES in the server option, begin event logging. For example, to begin event logging for a user-defined exit, enter:
begin eventlogging userexit
The link --
TSM Exit

techie27Author Commented:
I have checked my snmp configurations and everything is set up as it supposed to be but I am still not getting any snmp traps coming from HP Openview. What I will be missing? Pls advice
I thought the traps were to go to HPOV and not to come from there?

You said 'my snmp configuations' - Which config do you mean? HPOV? TSM? snmpd?
If TSM I would like to have a look at it.

And please have one more look at my comment 22728872.
Is this what you are willing to use?


techie27Author Commented:
What I mean is that We receive NO events from TSM via SNMP.

I have set up  eventlogging on TSM via SNMP.

   Our setup:
   TSM server 5.5.0, aix 5.3

   I've added dsmserv.opt to include commethod snmp and the snmpsubagent
   parameter points to the local host (where snmpd runs) using a configured
   community name.

   I ran:  begin eventlogging & enable event snmp all
   q eventrules gives the following:
   enable events snmp all

   The dsmsnmp process is running and is, I believe, successfully
   communicating with the agent (snmpd).
   Snmpd is successfully sending out non-TSM traps which get collected by
   the    trapd on our monitoring system.
   TSM seems to have a problem maintaining a connection with the subagent
   (using port 1900). According to netstat port 1900 is not in use by any
   other process.
  Has anyone got any ideas or suggestions as to why TSM is not sending out
   events as SNMP traps??

     Both the dsmsnmp and the dpid2 processes are running, but no snmp traps
received yet!:

ps -ef | grep snmp
    root 274548      1   0   Nov 03      -  0:00 /bin/ksh /usr/tivoli/tsm/server/bin/rc.dsmsnmp
    root 295022 360584   0   Nov 03      -  0:00 ./dsmsnmp
    root 360584 409986   0   Nov 03      -  0:00 ./dsmsnmp
    root 577660 262454   0 11:58:32      -  0:00 /usr/sbin/snmpd
    root 364890 262454   0   Nov 03      -  0:00 /usr/sbin/snmpmibd
    root 409986 274548   0   Nov 03      -  0:00 ./dsmsnmp
    root 577818 295022   0   Nov 05      -  0:02 ./dsmsnmp

ps ef | grep dpid2
 root 368868 262454   0 13:54:32      -  0:00 /usr/sbin/dpid2

 As far as I understand, the  communication goes    like this:


Thanks in advance
Did you configure smux im snmp config:

smux [domain] ?

techie27Author Commented:
yes, i did.. below is the snmpd.conf

logging         file=/usr/tmp/snmpd.log         enabled
logging         size=34560000                   level=0

community       public
#community       private readWrite
#community       system readWrite 1.17.2

view            1.17.2          system enterprises view

#trap           public       1.2.3   fe      # loopback
trap            public  1.2.3   fe

#snmpd          maxpacket=1024 querytimeout=120 smuxtimeout=60

smux           gated_password  # gated
smux       dpid_password   #dpid

snmpd smuxtimeout=200 #muxatmd
smux muxatmd_password #muxatmd

is it correct or do I am missing something?

Do I need to use snmpd.conf or snmpdv3.conf?
Pls advice
  1. To find out which snmp version you are using, please enter ls -l /usr/sbin/snmpd. You will see that this is a link pointing either to an V3 agent (/usr/sbin/snmpdv3ne) or V1  (/usr/sbin/snmpdv1). Use snmpdv3.conf for V3, snmpd.conf for V1.
  2. Your smux entry is OK. According to this entry, you should have in dsmserv.opt:
    SNMPSUBAGENT HOST COMM dpid_password
    and according to your earlier post
  3. Did you recycle snmpd and dpid2 (stopsrc/startsrc) after making the changes?
It's late at night here in old Europe.
CU tomorrow!

techie27Author Commented:

1) ls -l /usr/sbin/snmpd
  /usr/sbin/snmpd -> snmpdv3e  ---- encountered a problem here becz I was using the wrong version for snmpd for V1.
2) on the dsmserv.opt

COMMmethod snmp
  snmpsubagent  host abc.company.com  ====> is this correct or do i need to include the ip address of the tsm server where the tsm alerts are?
  snmpsubagentport 1900
  snmpheartbeatinterval   5
  snmpmessagecategory     severity

3) yes, i did recycled it but didn't fix anything.

From your advice:
1) I wll be updating the correct snmpd version from V1 to V3
2) I will wait to hear from you on the settings that should go to dsmserv.opt

Please advice.
Thanks in advance.

Hello again,
  • COMMETHOD SNMP is correct.
  • The value after SNMPSUBAGENT HOST identifies the host where the snmp demon snmpd is running, not necessarily the TSM server host (although this is the normal case). So, if your snmpd and your server are on the same machine, simply use

    localhost ...

  • Most important, after this you have to add the community of yout dpid2 smux as defined in /etc/snmpdv3.conf, so in your case you must use

    SNMPSUBAGENT HOST localhost COMM dpid_password

    exactly as written, no substitutions etc.

  • SNMPSUBAGENTHOST localhost is missing, please add it to dsmserv.opt.
    This parameter identifies the host where dsmsnmp is running. Normally, this is the TSM server host (and also the snmpd host, see above).

    You need both of them!
    (This is one of the smoke bombs the TSM guys love to drop!)


    are all correct.

Good Luck,


techie27Author Commented:
I had made the changes, however, can you please review the snmpdv3.conf file: Does it look correct?

VACM_GROUP group1 SNMPv1  public  -
VACM_GROUP group2 SNMPv1  openview -

VACM_VIEW defaultView        internet                   - included -

# exclude snmpv3 related MIBs from the default view
VACM_VIEW defaultView        snmpModules                - excluded -
VACM_VIEW defaultView          - included -
VACM_VIEW defaultView          - included -

# exclude aixmibd managed MIBs from the default view
VACM_VIEW defaultView        - excluded -

VACM_ACCESS  group1 - - noAuthNoPriv SNMPv1  defaultView - defaultView -
VACM_ACCESS  group2 - - noAuthNoPriv SNMPv1  openview    - group2View

NOTIFY notify1 traptag trap -

TARGET_ADDRESS Target1 UDP     traptag trapparms1 - - -
TARGET_ADDRESS Target2 UDP  traptag trapparms2 - - -

TARGET_PARAMETERS trapparms1 SNMPv1  SNMPv1  public  noAuthNoPriv -
TARGET_PARAMETERS trapparms2 SNMPv1  SNMPv1  openview noAuthNoPriv -

COMMUNITY public    public     noAuthNoPriv         -
COMMUNITY openview  public     noAUthNoPriv -

DEFAULT_SECURITY no-access - -

logging         file=/usr/tmp/snmpdv3.log       enabled
logging         size=100000                     level=0

smux           gated_password  # gated

smux muxatmd_password #muxatmd

please advice.
thanks in advance
why do you leave out the line:
smux       dpid_password   #dpid
which is the only important one for TSM? And I wrote more than once about that!
What did you change, then? I guess the OV stuff was already there.

Hi again,
did you advance a bit?
I assume you added the above smux line to your snmpdv3.conf?
The other things in there are OK, regarding TSM.
techie27Author Commented:
Yes, I added the smux line into snmpdv3.conf file but the snmp traps are still not transferring.
what else I should be mixing?
thanks in advance.
did you recycle snmpd and dpid2?
Does HPOV get traps from other sources?
Did you customize dsmserv.opt, as I wrote earlier (22942531)?
Did you start dsmsnmp?
Did you recycle dsmserv?
techie27Author Commented:
Do I need to recycle dpid2 with snmpdv3.conf?  I had heard from other sources that dpid2 isn't needed with snmpdv3.conf version.
Does HPOV get traps from other sources?
Yes, it does
Did you customize dsmserv.opt, as I wrote earlier (22942531)?
yes, i did
Did you start dsmsnmp?
yes, I did

Pls advice.
Did you recycle dsmserv?

Why not recycle dpid2? This will do no harm to anybody.
And if your answer to my last question above (Did you recycle dsmserv?) would be 'yes', too, there is only one thing left we can do:
Please attach to your next post your _complete_ dsmserv.opt and your _complete_ snmpdv3.conf.
I'll examine them for possible mistakes, and, if I do find any, will post the corrected version(s) back.
I'm just running out of ideas, you know ...

techie27Author Commented:
Why not recycle dpid2? There is not need to recycle dpid2 with AIX 5.3 version.
Attached complete dsmserv.opt

in dsmserv.opt  the keyword 'COMM' is missing at the 'SNMPSUBAGENT HOSTNAME' line, so dsmsnmp doesn't know which smux community to register with. I added it.
At the 'SNMPSUBAGENTHOST' line I added 'company.com'
As I wrote, if snmpd, dsmsnmp and dsmserv are all on the same machine, 'localhost' instead of 'company.com' would be enough.
Your snmpdv3.conf  is OK.
Regarding dpid2, you are right.
Please recycle dsmsnmp AND dsmserv.
Take care that port 1900 is free for dsmsnmp on your system.
If things still don't work, please check the connection between TSM and your HPOV system.  Can you receive snmp traps now? In your question you stated you couldn't.

Hi again,
... and after starting dsmsnmp and dsmserv please go to the TSM console or use dsmadmc to issue
q actlog begint=-999 search=SNMP
to view any snmp related server messages. A success message shoul read
"ANR4660 Connected to SNMP subagent on port 1900"
Pradeep KumarCommented:

I'm looking for document which explains on how to configure SNMP setting in windows for TSM.
Can anyone help me with it?

Thanks in advance

Pradeep Kumar
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.