SNMP Input Adapter Sample

This sample demonstrates the use of the TIBCO StreamBase® SNMP Input Adapter.

Running This Sample in StreamBase Studio

  1. In the Package Explorer view, double-click snmp.sbapp.

  2. If you wish the adapter to listen on a UDP port different from the standard for SNMP traps (port 162):

    1. Select the adapter icon to open the Properties view for the adapter.

    2. Select the Adapter Properties tab and enter the desired UDP port number.

    3. Save the application.

  3. Click the Run button. This opens the SB Test/Debug perspective and starts the application.

  4. In the Test/Debug Perspective, open the Application Output view. Look for a tuple emitted on the Status stream with its action value set to Connected, indicating that the adapter has established a connection to the configured port and is listening for traps.

  5. In the Manual Input view, select the Commands stream. Enter disconnect in the command field. Click Send Data and observe that a tuple has been emitted on the Status stream, and a message has been printed to the console to indicate the adapter has disconnected from the configured port.

  6. In the Manual Input view, select the Commands stream again. Enter connect in the command field. Click Send Data and observe that a tuple has been emitted on the Status stream, and a message has been printed to the console to indicate the adapter has reconnected to the port and is again listening for traps.

  7. To see traps being emitted by the adapter, you may cause one to be sent via the use of an application capable of acting as an SNMP agent and sending traps, such as the snmptrap utility included in the open-source Net-SNMP project. You can use the following snmptrap command to generate a v1 trap:

    snmptrap -v 1 -c private localhost 
      NET-SNMP-EXAMPLES-MIB::netSnmpExampleHeartbeatNotification 
      "" 6 17 "" netSnmpExampleHeartbeatRate i 123456
    

    (Lines in the single command above are shown wrapped for clarity.)

  8. As traps are received by the adapter you will see a tuple emitted on the Traps stream describing its contents.

  9. When done, press F9 or click the Stop Running Application button.

Running This Sample in Terminal Windows

This section describes how to run the sample in UNIX terminal windows or Windows command prompt windows. On Windows, be sure to use the StreamBase Command Prompt from the Start menu as described in the Test/Debug Guide, not the default command prompt.

  1. Open three terminal windows on UNIX, or three StreamBase Command Prompts on Windows. In each window, navigate to your workspace copy of the sample, as described above.

  2. In window 1, type:

    sbd snmp.sbapp

  3. In window 2, type:

    sbc dequeue -v

    This window displays the tuples dequeued from the adapter's output ports.

  4. In window 3, disconnect from the UDP port:

    echo disconnect | sbc enqueue Commands

  5. Observe in window 2 that a Disconnected Tuple is emitted from the Status port and a message is issued in window 1 to indicate the adapter has disconnected from the UDP port and is no longer listening for traps.

  6. In window 3, reconnect to the UDP port:

    echo connect | sbc enqueue Commands

  7. Observe in window 2 that a Connected Tuple is again emitted from the Status stream. A message is issued in window 1 to indicate the adapter has reconnected to the UDP port and listening to SNMP traps.

  8. To see traps being emitted by the adapter, you may cause one to be sent via the use of an application capable of acting as an SNMP agent and sending traps, such as the snmptrap utility included in the open-source Net-SNMP project. You can use the following snmptrap command in window 3 to generate a v1 trap: snmptrap -v 1 -c private localhost NET-SNMP-EXAMPLES-MIB::netSnmpExampleHeartbeatNotification "" 6 17 "" netSnmpExampleHeartbeatRate i 123456

  9. Observe in window 2 that a new tuple has been emitted on the Traps stream for each trap received by the adapter.

  10. In window 3, type the following command to terminate the server and dequeuer:

    sbadmin shutdown

Importing This Sample into StreamBase Studio

In StreamBase Studio, import this sample with the following steps:

  • From the top menu, click FileLoad StreamBase Sample.

  • Select this sample from the Embedded Input Adapters list.

  • Click OK.

StreamBase Studio creates a project for this sample.

Sample Location

When you load the sample into StreamBase Studio, Studio copies the sample project's files to your Studio workspace, which is normally part of your home directory, with full access rights.

Important

Load this sample in StreamBase Studio, and thereafter use the Studio workspace copy of the sample to run and test it, even when running from the command prompt.

Using the workspace copy of the sample avoids the permission problems that can occur when trying to work with the initially installed location of the sample. The default workspace location for this sample is:

studio-workspace/sample_adapter_embedded_snmp

See Default Installation Directories for the location of studio-workspace on your system.

In the default TIBCO StreamBase installation, this sample's files are initially installed in:

streambase-install-dir/sample/adapter/embedded/snmp

See Default Installation Directories for the location of streambase-install-dir on your system. This location may require administrator privileges for write access, depending on your platform.