SDK_Perl
Nimsoft SDK for Perl

The Nimsoft Perl SDK allows you to run and write probes in the Perl programming language.

Installation notes

First of all make sure you have the correct version of Perl (specified in the Software Requirements above) by running the command perl -v. If you have several versions of Perl installed make sure that you either specify the full path to the correct version of Perl or set your PATH environment variable to find the correct version of Perl first.

If you installed the Nimsoft system somewhere other than the default path (C:\Program Files\Nimsoft on Windows and /opt/nimsoft on UNIX systems) you will have to modify the PERL5LIB environment variable set by the Controller. The procedure is as follows:

1) Open the 'controller' configurator.
2) Go to the 'Setup' tab
3) Select the 'Environment' tab
4) Right click->Edit the 'PERL5LIB' entry, changing the default path to match your setup
5) Click 'OK' and when queried for a restart of the controller answer 'YES'

Upgrading SDK_Perl


It is important that all probes using the Perl Libraries are stopped when attempting to upgrade the SDK_Perl package. Please note that in addition to the probes that are written in Perl the report_engine probe also uses Perl, and must be deactivated prior to installing the upgrade package.

Troubleshooting/Running your perl scripts


Perl depends on finding the Nimsoft Perl Runtime libraries. Normally the Nimsoft Robot will export this information using the PERL5LIB environment variable which it sets for all managed probes. However, debugging your scripts (running from command line) requires that you tell Perl where to find the SDK files. There are several ways to do this:

You can specify it in the script:
- Unix: use lib "/opt/nimsoft/perllib"
- Win32: use lib "C:\\Program Files\\Nimsoft\\perllib"

You can set the PERL5LIB environment variable in your preferred shell:
- root# PERL5LIB=/opt/nimsoft/perllib; export PERL5LIB (Bourne Shell syntax)
- root# set PERL5LIB /opt/nimsoft/perllib; (Csh syntax)
- C:\> set PERL5LIB=C:\Program Files\Nimsoft \perllib (Windows)


UNIX specific
You should use the Perl libraries for your platform which have been compiled by Nimsoft when using the SDK. The reason is that the interface between Nimsoft and Perl is in binary form, and this will result in incompability issues if an attempt is made to use other versions of Perl.

Example
You are running a Perl that is compiled for i386-linux, but the SDK uses the archname i586-linux. To create a soft link, do the following:
- root# cd /opt/nimsoft/perllib/5.8.1
- root# ln -s i586-linux i386-linux

For more information about writing programs in Perl please refer to the Nimsoft Developers Guide's book on Developing Solutions using Perl in the Online Help.
Revision history
Date Description State Version
10.11.2020
  • Provided support for Perl v5.32, which provides the TLS 1.2 support in the Perl SDK while communicating with the UIM databases (Oracle and Microsoft SQL Server).
MD5 Checksum: 65d30f4823414e41eecf2f28a33a388d
SHA-1 Checksum: 8d6cb919d8a2a5197f723294cff5242114fc5a85
GA 20.30
20.08.2019

What's New:

  • (5.10 HF1) Fixed an issue in which the process of attaching to a queue and subscribing to messages by using Perl SDK was not working. (Support Case: 01213351)
MD5 Checksum: 611f6aa46f784a106f94504e08b5b339
SHA-1 Checksum: c0b33fe6c8bb0b193d256c880da8e475ca7dd124
9.20
14.11.2017

What's New:

  • Added support for Zlinux64 Bit OS
  • Added support for the following ZLinux platforms: RHEL 7.4; RHEL 6.9; SUSE11
  • Upgraded the SDK_Perl Package to version 5.10
  • Added support for the Perl libraries version 5.14
  • Added support for Solaris 11 (sparc)
md5sum: 8342749987e7e8b58108cb7d7a849e01
sha1sum: 321c4a53c2094e82767932c736c056778bf9ea21
5.10
19.12.2013
  • Rebuild of the SDK_Perl to include additional changes already performed in other shared areas of the product.
  • Incorporates a fix to the environment variable processing to allow nimGetVarStr(NIMV_ROBOTNAME) to return the robotname, not the short hostname.
  • MD5 checksum: e4402d0016362d1cfb209bf0dfc46aad
  • SHA-1 checksum: ecd97a8644cf9432be73e081976dd0294d4a9502
  • SHA-256 checksum: dbb36e3514b72b7d45589d1d9558d36222066467b0da1068a226d5386174cfc9
  • 5.06
    22.05.2013
    • Support added for 64-bit Linux
    • For Linux, package has been made Perl v5.14.2 compatible. For Windows, ActiveState Perl 5.14.2 is recommended. For Unix systems, reference Perl 5.14.2 precompiled binaries (runtime binaries) packages from the Archive site.
    • Win32 server port retrieval fix.
    • AIX package mods allowing SDK_Perl to install in AIX6 and AIX7 environments.
    • Callback parameter fixes for AIX.
    5.05
    12.11.2012 Support added for 64bit Linux.
    For Linux, package has been made Perl v5.14.2 compatible. For Windows, ActiveState Perl 5.14.2 recommended. For Unix, Perl 5.14.2 precompiled binaries are available from the Nimsoft Internet Archive Beta site for some platforms.
    5.04
    25.07.2012 Supports Ubuntu10, Ubuntu12, Debian5 and Debian6 now Package has been made Perl v5.14.2 compatible. For Windows, ActiveState Perl 5.14.2 recommended. For Unix, Perl 5.14.2 precompiled binaries available from the Nimsoft Internet Archive Beta site for some platforms. 5.03
    22.06.2012 Package has been made Perl v5.14.2 compatible. For Windows, ActiveState Perl 5.14.2 recommended. For Unix, Perl 5.14.2 precompiled binaries available from the Nimsoft Internet Archive Beta site for some platforms. 5.02
    10.06.2011 Removed debug message from log. 4.16
    01.06.2011 Fixed potensial crash when enabling storm protection on Spooler (Robot).
    Fixed crash in nimlogin for HP platforms.
    Updated perdoc documentation for pdsGetTable and pdsGet funtions.
    Fixed pdsSearch function to return a PDS instead of a scalar when that is what the key matches.
    4.14
    30.12.2010 Added support for new custom_[1-5] fields available in newer NAS.
    Added support for CI interfaces in NIS database.
    4.11
    30.06.2010 Fixed memory leak in CFG.pm when re-reading config file.
    Fixed problem with Session.pm which would cause a daemon probe to disconnect from the robot.
    Updated AUTOLOAD code in API.pm.
    4.06
    23.09.2009 pdsGetNext will now return a copy of a PDS if the next element it finds is a PDS. Note that this means that you have to call pdsDelete() on the data returned if the type is PDS_PDS. The PDS.pm file has been modified to avoid calling pdsDelete on the object's embedded PDS if it was supplied in the call to new(). This would cause a double call to pdsDelete() crashing the script.

    Fixed endless loop in CFG.pm if an incorrectly formatted cfg file had an empty section.

    Using updated NimBUS libraries.
    4.05
    06.02.2009 Recompiled on Windows due to issues with defined constants. 4.03
    20.01.2009 Fixed library issue on 64bit Windows. 4.02
    05.12.2008 Updated with latest fixes to NimBUS libraries. 4.01
    11.09.2008 NOTE: This version requires perl 5.10.0! Packages with pre-compiled binaries are available for all supported Unix systems. For Windows systems ActiveState perl is recommended.
    Support added for new platforms, including 64bit platforms.
    Uses the latest NimBUS library.
    Fixes a long-standing bug with calls to pdsDelete causing crashes.
    New functions added:
    - nimsPort
    - nimChangeLogin
    - nimSessionAlarm
    - nimSessionAddCallbackPds
    - nimSessionGetLastError
    - nimSessionConnect
    - nimSessionIsConnected
    - nimSessionController
    - nimSessionSpooler
    - nimSessionHub
    - nimLogTruncate
    - nimLogTruncateSize
    - nimLogTruncateTime
    - nimQoSCreateAsynch
    - nimQoSSetSampletime
    - nimQoSGetSource
    - nimQoSSourceIsSet
    - nimQoSSendDefinition
    - nimQoSPostMessage
    - nimQoSHostname
    - nimTimerCreate
    - nimTimerFree
    - nimTimerStart
    - nimTimerStop
    4.00
    01.02.2006 Fix problem with probes not being notified about a dropped connection to the Hub (attach or subscribe). Codewizard has been removed from this package and added as a separate package to the webarchive. 3.01
    16.01.2004 Package sets the PERL5LIB environment variable as $NIM_ROOT\perllib which the controller expands. 2.04
    Requirements
    Platform: Please refer to the Platform Support Matrix located in the Download section of http://support.nimsoft.com
    Software:
    Windows: Nimsoft Robot version >= 2.71 (version>=3.00 for 64bit Windows), ActiveState Perl v5.14.2 recommended.
    Unix: Nimsoft Robot version >=2.71 (version>=3.00 for 64bit platforms), Perl 5.14.2 package available from the Nimsoft Internet archive
    Hardware: None