Opsview Knowledge Center

Appendix

Opsview Monitor Appendix

Double Proxying

You may want to have a second, and secured, proxy located in front of your Opsview Monitor server. As such, the sequence to access Opsview Monitor might be:

  1. External request reaches opsview-external.example.com;
  2. opsview-external.example.com proxies to opsview-internal.example.com.

However, we have learned that Catalyst will set the originating URL to, 'http://opsview-external.example.com, opsview-internal.example.com' since there are multiple hostnames in the X-Forwarded-For header. You can remedy this issue by forcing Apache on opsview-internal.example.com to remove this header and explicitly set the appropriate value. To do this, include the example code below on opsview-internal.example.com. Incidentally, other changes to the Apache configuration will not be necessary since all URLs from Opsview server will be relative.

# Help Catalyst deal correctly with our multiple reverse proxies
RequestHeader unset X-Forwarded-For
RequestHeader unset X-Forwarded-Host
RequestHeader unset X-Forwarded-Server
RequestHeader set Host "opsview-external.example.com"

Finally, you will need to disable IP checking in the authentication ticket as it will not be possible to work out the correct IP address of the end device that is communicating with the Opsview Monitor server. You should add the example below to /usr/local/opsview_web/opsview_web_local.yml:

Controller::Root:
  authtkt_ignoreip: 1

Opsview Messaging System

The Opsview Monitor messaging system relays 'Questions' and 'Answers' between different add-on modules within Opsview Monitor (such as NetAudit) and is based on ActiveMQ.

The messaging system uses two packages which should be installed from the yum, apt or zypper repositories depending on your server (shown below). Note: Java 1.5 or above is required for these packages to function correctly.

  • opsview-activemq
  • opsview-activemq-scripts

The Opsview Monitor User and Group are created automatically by the opsview-activemq package, if they do not already exist. You should also ensure that the opsview-activemq package is the same version across all servers; otherwise, they will not be able to communicate with each other due to differences in the communication protocol.

Master server

The following list shows the packages that are required for either the Opsview Monitor Master or NetAudit Master server installation.

  • opsview-activemq
  • opsview-activemq-scripts

Forwarding server

The following list shows the package that is required for an optional slave server installation ' this server does not perform any functions of the Active server.

  • opsview-activemq

Active server

The following list shows the packages that are required for either the syslog or NetAudit server installation.

  • opsview-activemq
  • opsview-activemq-scripts

Messaging System Configuration

Each server, as described above, has a unique configuration. The transportConnectors listen on a specific port for a connection, whereas the networkConnectors initiate a connection to a specific host on the given port.

All steps provided in this section should be undertaken as the opsview user, as shown in the below example:

su - opsview

Master server

** First, copy the /opt/opsview/activemq/conf/activemq.xml.example file to /opt/opsview/activemq/conf/activemq.xml and amend the file to reflect the following:

<transportConnectors>
<transportConnector name="openwire" uri="tcp://localhost:4125"/>
<transportConnector name="stomp"uri="stomp://localhost:61613"/>
</transportConnectors>

Additionally, the SSH tunnel to slaves will include a port forwarding of the slave port 4125 to master port 4125, which is undertaken automatically.

Now start up the messaging system:

/etc/init.d/opsview-activemq start

Further configuration is necessary depending on how the messaging system is used; please refer to the relevant documentation.

Messaging Client

First, copy the /opt/opsview/activemq/conf/activemq.xml.example file to /opt/opsview/activemq/conf/activemq.xml, amend the file to reflect that shown in 'Master Server' (above). Amend as a normal opsview slave or as a forwarding server that attaches to the slave. Port 4125 is the connection to the master server through the SSH tunnel, which we touched upon earlier.

<transportConnectors>
 <!-- stomp is required for any client processes on this server to connect to, e.g. file2activemq -->
 <transportConnector name="stomp" uri="stomp://localhost:61613"/>
<!-- openwire is only required when another activemq server connects as a satellite to this one -->
 <!-- where {hostname} is the public address of this server -->
 <!-- <transportConnector name="openwire" uri="tcp://{hostname}:61616" /> -->
</transportConnectors>
<networkConnectors>
 <!-- localhost:4125 is connection to upstream opsview master server if this is an opsview slave -->
 <networkConnector name="master" uri="static://(tcp://localhost:4125)" duplex="true" networkTTL="2"/>
 <!-- {connection}:61616 is for an upstream opsview slave server running an openwire port, not the master server -->
 <!-- <networkConnector name="slave" uri="static://(tcp://{connection}:61616)" duplex="true" networkTTL="2"/> -->
</networkConnectors>

where:
{connection} is the public hostname or IP address of the upstream server;
{localhost} is the public address of this server;
'duplex' is the ability of the master to send and receive messages from the slave;
'networkTTL' is the number of brokers a message can pass through.

Finally, start up the messaging system, as shown below:

/etc/init.d/opsview-activemq start

Troubleshooting

You can verify if activemq is enabled by running the following command which should provide you with a Java process with activemq; if it is not running, then it will be started:

/etc/init.d/opsview-activemq start

You can start activemq manually, as shown in the example below, which will list any error messages.

Example 4** \x{00E2} **** \x{0080} **** \x{0091} **14: Start activemq manually to glean further errors.
/etc/init.d/opsview-activemq start

Third Party Software

This lists the open source third party software used by Opsview.

Software Components

  • autossh-1.4a.tar.gz
  • check_radius_ih-1.1
  • icojoy-webicons-4
  • iconsjoy-webicons-3
  • nagios-4.0.20130912
  • monitoring-plugins-2.1.1
  • ndoutils-2.0
  • nfdump-1.6.9
  • nrpe-2.14
  • nsca-2.7.2
  • pagerduty_nagios
  • tango-icon-theme-0.8.90
  • wmi-1.3.16

Javascript Libraries

  • AmCharts 1.3.15
  • anylinkcssmenu.js
  • bootstrap-tour 0.10.1
  • dataTables-1.4.3
  • easyXDM-2.4.15.118
  • easyXDM-2.4.9.102
  • easyXDM-2.4.19
  • ExtJS 4.2.1
  • ExtJS 4.2.3
  • Ext.ux.form.field.ClearButton
  • Ext.ux.toggleslide.ToggleSlide
  • Ext.ux.TreeStateful
  • Ext.ux.window.Notification
  • fabtabulous
  • flot-0.5
  • hypergraph-0.6.3
  • jit 2.0.1
  • jquery 1.3.2
  • jquery-flot 1.1
  • jquery.flot.axislabels 1.0
  • jquery.flot.selection 1.1
  • jquery.flot.stack 1.2
  • jquery.flot.time 1.0
  • jquery.sparkline.uncompressed.2.1
  • jscalendar-1.0
  • json2
  • jstz 1.0.4
  • prototypextensions-0.1.2
  • scriptaculous-js-1.8.3
  • showdown-0.9
  • timeline-libraries-2.3.0
  • validation-1.5.4.1

Nagios Plugins

  • check_vmware_api
  • check_wmi_plus
  • check_oracle_health
  • check_cloudwatch_status
  • check_dnsbl
  • check_mysql_performance
  • check_tftp.sh
  • check_netapp
  • check_apache_performance

CGI

  • mrtg_rrd.cgi

Perl Modules

  • ack-2.12
  • Algorithm-C3-0.10
  • Algorithm-Closest-NetworkAddress-0.1
  • Algorithm-Diff-1.1902
  • aliased-0.31
  • AnyEvent-7.07
  • AnyEvent-Beanstalk-1.123530
  • AnyEvent-Fork-1.2
  • AnyEvent-Fork-RPC-1.21
  • AnyEvent-HTTP-2.21
  • AnyEvent-SNMP-6.0
  • Any-Moose-0.24
  • Apache-AuthTkt-2.1
  • Apache-LogFormat-Compiler-0.32
  • AppConfig-1.66
  • App-livehttperf-0.03
  • Archive-Tar-2.00
  • Archive-Zip-1.37
  • Array-Compare-2.02
  • Attribute-Handlers-0.96
  • autobox-2.82
  • autodie-2.25
  • AutoLoader-5.74
  • bareword-filehandles-0.003
  • base-2.18
  • B-Deobfuscate-0.20
  • BerkeleyDB-0.54
  • Best-0.15
  • B-Hooks-EndOfScope-0.13
  • B-Hooks-OP-Check-0.19
  • Bit-Vector-7.3
  • B-Keywords-1.13
  • boolean-0.42
  • BSD-Resource-1.2907
  • Bytes-Random-Secure-0.28
  • Cache-BerkeleyDB-0.03
  • Cache-Cache-1.06
  • Cache-FastMmap-1.40
  • Cache-Mmap-0.11
  • Capture-Tiny-0.25
  • Carp-1.3301
  • Carp-Assert-0.21
  • Carp-Assert-More-1.14
  • Carp-Clan-6.04
  • Catalyst-Action-RenderView-0.16
  • Catalyst-Action-REST-1.15
  • Catalyst-ActionRole-ACL-0.07
  • Catalyst-ActionRole-ExpiresHeader-0.01
  • Catalyst-Action-Serialize-Data-Serializer-1.08
  • Catalyst-Authentication-AuthTkt-0.15
  • Catalyst-Authentication-Credential-Fallback-1.001
  • Catalyst-Authentication-Credential-HTTP-1.016
  • Catalyst-Authentication-Credential-Upstream-Headers-0.02
  • Catalyst-Authentication-Store-DBIx-Class-0.1506
  • Catalyst-Authentication-Store-LDAP-1.014
  • Catalyst-Component-InstancePerContext-0.001001
  • Catalyst-Controller-ActionRole-0.16
  • Catalyst-Devel-1.39
  • Catalyst-Engine-Apache-1.16
  • Catalyst-Engine-HTTP-Prefork-0.51
  • Catalyst-Log-Log4perl-1.06
  • Catalyst-Manual-5.9008
  • Catalyst-Model-DBIC-Schema-0.64
  • Catalyst-Plugin-Authentication-0.10023
  • Catalyst-Plugin-Authentication-Store-DBIC-0.11
  • Catalyst-Plugin-Authorization-ACL-0.16
  • Catalyst-Plugin-Authorization-Roles-0.09
  • Catalyst-Plugin-AutoRestart-0.96
  • Catalyst-Plugin-Cache-BerkeleyDB-0.01
  • Catalyst-Plugin-Cache-FastMmap-0.9
  • Catalyst-Plugin-ConfigLoader-0.34
  • Catalyst-Plugin-CustomErrorMessage-0.06
  • Catalyst-Plugin-I18N-0.10
  • Catalyst-Plugin-RunAfterRequest-0.04
  • Catalyst-Plugin-Session-0.39
  • Catalyst-Plugin-Session-State-Cookie-0.17
  • Catalyst-Plugin-Session-Store-DBI-0.16
  • Catalyst-Plugin-Session-Store-FastMmap-0.16
  • Catalyst-Plugin-Snippets-0.03
  • Catalyst-Plugin-Static-Simple-0.32
  • Catalyst-Plugin-Unicode-0.93
  • Catalyst-Runtime-5.90071
  • Catalyst-View-Download-0.09
  • Catalyst-View-JSON-0.33
  • Catalyst-View-RRDGraph-0.10
  • Catalyst-View-TT-0.41
  • Catalyst-View-TT-Alloy-0.00003
  • CatalystX-Component-Traits-0.19
  • CatalystX-ExtJS-Direct-2.1.5
  • CatalystX-ExtJS-REST-2.1.3
  • CatalystX-RoleApplicator-0.005
  • CatalystX-Script-Server-Starman-0.02
  • CGI-Cookie-XS-0.18
  • CGI-Expand-2.05
  • CGI.pm-4.03
  • CGI-Simple-1.113
  • CGI-Struct-1.21
  • CHI-0.58
  • Class-Accessor-0.34
  • Class-Accessor-Chained-0.01
  • Class-Accessor-Grouped-0.10010
  • Class-Base-0.05
  • Class-C3-0.27
  • Class-C3-Adopt-NEXT-0.13
  • Class-C3-Componentised-1.001000
  • Class-C3-XS-0.13
  • Class-Data-Accessor-0.04004
  • Class-Data-Inheritable-0.08
  • Class-DBI-Loader-0.34
  • Class-DBI-Loader-GraphViz-1.0
  • Class-DBI-Plugin-0.03
  • Class-DBI-Plugin-DeepAbstractSearch-0.08
  • Class-DBI-Sweet-0.11
  • Class-DBI-utf8-0.2
  • Class-DBI-v3.0.17
  • Class-Factory-Util-1.7
  • Class-Inspector-1.28
  • Class-ISA-0.36
  • Class-Load-0.22
  • Class-Load-XS-0.08
  • Class-MakeMethods-1.01
  • Class-MethodMaker-2.21
  • Class-Method-Modifiers-2.11
  • Class-Singleton-1.4
  • Class-Throwable-0.11
  • Class-Tiny-1.000
  • Class-Trigger-0.14
  • Class-Unload-0.08
  • Class-XSAccessor-1.19
  • Clone-0.37
  • Clone-PP-1.06
  • common-sense-3.73
  • Compress-Raw-Bzip2-2.064
  • Compress-Raw-Zlib-2.065
  • Config-Any-0.24
  • Config-General-2.56
  • Config-IniFiles-2.83
  • Config-Tiny-2.20
  • constant-1.27
  • Const-Fast-0.014
  • Context-Preserve-0.01
  • Convert-ASN1-0.27
  • Cookie-XS-0.11
  • CPAN-2.05
  • CPAN-Meta-2.142060
  • CPAN-Meta-Check-0.009
  • CPAN-Meta-Requirements-2.126
  • CPAN-Meta-YAML-0.012
  • Crypt-Blowfish-2.14
  • Crypt-CBC-2.33
  • Crypt-DES-2.07
  • Crypt-PasswdMD5-1.40
  • Crypt-Random-Seed-0.03
  • Crypt-Random-TESHA2-0.01
  • Crypt-RC4-2.02
  • Crypt-Rijndael-1.12
  • Crypt-SSLeay-0.72
  • CSS-Minifier-XS-0.09
  • Cwd-Guard-0.04
  • DashProfiler-1.13
  • Data-Compare-1.24
  • Data-Dump-1.22
  • Data-Dumper-2.151
  • Data-Dumper-Concise-2.022
  • Data-FormValidator-4.81
  • Data-OptList-0.109
  • Data-Page-2.02
  • Data-Pond-0.004
  • Data-Printer-0.35
  • Data-Serializer-0.60
  • Data-Stream-Bulk-0.11
  • Data-Taxi-0.96
  • Data-Util-0.63
  • Data-UUID-1.219
  • Data-Visitor-0.30
  • Date-Calc-6.3
  • Date-Calc-XS-6.3
  • Date-Manip-6.46
  • Date-Simple-3.03
  • DateTime-1.10
  • DateTime-Event-ICal-0.12
  • DateTime-Event-Recurrence-0.16
  • DateTime-Format-Builder-0.81
  • DateTime-Format-DateParse-0.05
  • DateTime-Format-DBI-0.041
  • DateTime-Format-Duration-1.03a
  • DateTime-Format-Duration-DurationString-0.03
  • DateTime-Format-Flexible-0.26
  • DateTime-Format-HTTP-0.42
  • DateTime-Format-ICal-0.09
  • DateTime-Format-ISO8601-0.08
  • DateTime-Format-Mail-0.401
  • DateTime-Format-MySQL-0.04
  • DateTime-Format-Natural-1.02
  • DateTime-Format-Pg-0.16009
  • DateTime-Format-SQLite-0.11
  • DateTime-Format-Strptime-1.56
  • DateTime-Format-W3CDTF-0.06
  • DateTime-Locale-0.45
  • DateTime-Set-0.3400
  • DateTime-TimeZone-1.73
  • DateTimeX-Easy-0.089
  • DBD-mysql-4.028
  • DBD-SQLite-1.42
  • DBI-1.632
  • DBICx-TestDatabase-0.05
  • DBI-Shell-11.95
  • DBIx-Class-0.08270
  • DBIx-Class-Cursor-Cached-1.001002
  • DBIx-Class-DateTime-Epoch-0.10
  • DBIx-Class-DynamicDefault-0.04
  • DBIx-Class-InflateColumn-IP-0.02003
  • DBIx-Class-IntrospectableM2M-0.001001
  • DBIx-Class-Schema-Loader-0.07041
  • DBIx-Class-TimeStamp-0.14
  • DBIx-Class-Validation-0.02005
  • DBIx-ContextualFetch-1.03
  • Debug-ShowStuff-1.16
  • Devel-Caller-2.06
  • Devel-CheckBin-0.02
  • Devel-CheckCompiler-0.05
  • Devel-CheckOS-1.73
  • Devel-Cover-1.16
  • Devel-Cycle-1.11
  • Devel-GlobalDestruction-0.13
  • Devel-GlobalDestruction-XS-0.01
  • Devel-Hide-0.0009
  • Devel-Leak-0.03
  • Devel-NYTProf-5.06
  • Devel-PPPort-3.24
  • Devel-SimpleTrace-0.08
  • Devel-Size-0.79
  • Devel-SizeMe-0.19
  • Devel-StackTrace-1.34
  • Devel-StackTrace-AsHTML-0.14
  • Devel-Symdump-2.12
  • Devel-Trace-0.12
  • Devel-TraceUse-2.093
  • Device-Gsm-1.60
  • Device-Modem-1.57
  • Device-SerialPort-1.04
  • Digest-1.17
  • Digest-CRC-0.18
  • Digest-HMAC-1.03
  • Digest-JHash-0.08
  • Digest-MD5-2.53
  • Digest-MD5-File-0.08
  • Digest-Perl-MD5-1.9
  • Digest-SHA1-2.13
  • Digest-SHA-5.92
  • Directory-Scratch-0.15
  • Dist-CheckConflicts-0.11
  • EasyTCP-0.26
  • Email-Address-1.905
  • Email-Date-Format-1.004
  • Email-Valid-1.194
  • Email-Valid-Loose-0.05
  • Encode-2.62
  • Encode-Locale-1.03
  • Env-1.04
  • Env-Sanctify-1.12
  • Error-0.17022
  • EV-4.17
  • Eval-Closure-0.11
  • Excel-Writer-XLSX-0.77
  • Exception-Class-1.38
  • Exporter-5.70
  • Exporter-Declare-0.113
  • Exporter-Lite-0.06
  • Exporter-Tidy-0.07
  • ExtUtils-CBuilder-0.280216
  • ExtUtils-Command-1.18
  • ExtUtils-Config-0.008
  • ExtUtils-Constant-0.23
  • ExtUtils-Depends-0.400
  • ExtUtils-Helpers-0.022
  • ExtUtils-Install-1.68
  • ExtUtils-InstallPaths-0.010
  • ExtUtils-MakeMaker-6.98
  • ExtUtils-Manifest-1.65
  • ExtUtils-ParseXS-3.24
  • ExtUtils-PkgConfig-1.15
  • FCGI-0.77
  • FCGI-ProcManager-0.24
  • Fennec-Lite-0.004
  • File-ChangeNotify-0.24
  • File-Copy-Recursive-0.38
  • File-Finder-0.53
  • File-Find-Rule-0.33
  • File-Find-Rule-Perl-1.13
  • File-HomeDir-1.00
  • File-Listing-6.04
  • File-MMagic-1.30
  • File-Modified-0.09
  • File-Next-1.12
  • File-NFSLock-1.24
  • File-Path-2.09
  • File-Remove-1.52
  • File-ShareDir-1.102
  • File-ShareDir-Install-0.09
  • File-ShareDir-ProjectDistDir-1.000003
  • File-Slurp-9999.19
  • File-Slurp-Tiny-0.003
  • Filesys-Notify-Simple-0.12
  • File-Temp-0.2304
  • File-Which-1.09
  • Filter-1.50
  • Filter-Crypto-2.06
  • Font-AFM-1.20
  • FormValidator-Simple-0.29
  • FreezeThaw-0.5001
  • Getopt-ArgvFile-1.11
  • Getopt-Long-2.42
  • Getopt-Long-Descriptive-0.097
  • GraphViz-2.15
  • GraphViz-DBI-0.02
  • Guard-1.022
  • Hash-FieldHash-0.14
  • Hash-Merge-0.200
  • Hash-Merge-Simple-0.051
  • Hash-MoreUtils-0.05
  • Hash-MultiValue-0.15
  • Hash-Util-FieldHash-Compat-0.08
  • Hook-LexWrap-0.24
  • HTML-Form-6.03
  • HTML-Format-2.11
  • HTML-FromANSI-Tiny-0.103
  • HTML-Parser-3.71
  • HTML-TagCloud-0.38
  • HTML-Tagset-3.20
  • HTML-Tree-5.03
  • HTTP-Body-1.19
  • HTTP-Cookies-6.01
  • HTTP-Daemon-6.01
  • HTTP-Date-6.02
  • HTTP-HeaderParser-XS-0.20
  • HTTP-Message-6.06
  • HTTP-Negotiate-6.01
  • HTTP-Parser-XS-0.16
  • HTTP-Request-AsCGI-1.2
  • HTTP-Response-Encoding-0.06
  • HTTP-Server-Simple-0.44
  • HTTP-Tiny-0.047
  • Ima-DBI-0.35
  • Image-Info-1.36
  • Image-Scale-0.08
  • Image-Size-3.232
  • Import-Into-1.002004
  • indirect-0.31
  • IO-1.25
  • IO-AIO-4.31
  • IO-Compress-2.064
  • IO-FDPass-1.0
  • IO-HTML-1.001
  • IO-Interactive-0.0.6
  • IO-Prompt-0.997002
  • IO-SessionData-1.03
  • IO-Socket-INET6-2.72
  • IO-Socket-SSL-1.997
  • IO-String-1.08
  • IO-stringy-2.110
  • IO-Tee-0.64
  • IO-Tty-1.11
  • IO-Zlib-1.10
  • IPC-Cmd-0.92
  • IPC-Run-0.92
  • IPC-Run3-0.048
  • IPC-Run-SafeHandles-0.04
  • IPC-Shareable-0.61
  • JavaScript-1.16
  • JavaScript-Beautifier-0.17
  • JIRA-Client-0.42
  • JSON-2.90
  • JSON-Any-1.35
  • JSON-MaybeXS-1.002002
  • JSON-PP-2.27203
  • JSON-XS-3.01
  • JSPL-1.07
  • Lazy-Lockfile-1.20
  • Lexical-SealRequireHints-0.007
  • libwww-perl-6.08
  • libxml-perl-0.08
  • Lingua-EN-FindNumber-1.30
  • Lingua-EN-Inflect-1.895
  • Lingua-EN-Inflect-Number-1.11
  • Lingua-EN-Inflect-Phrase-0.18
  • Lingua-EN-Number-IsOrdinal-0.04
  • Lingua-EN-Tagger-0.24
  • Lingua-EN-Words2Nums-0.18
  • Lingua-PT-Stemmer-0.01
  • Lingua-Stem-0.84
  • Lingua-Stem-Fr-0.02
  • Lingua-Stem-It-0.02
  • Lingua-Stem-Ru-0.01
  • Lingua-Stem-Snowball-Da-1.01
  • List-AllUtils-0.08
  • List-Compare-0.39
  • List-MoreUtils-0.33
  • Locale-Maketext-1.25
  • Locale-Maketext-Lexicon-1.00
  • Locale-Maketext-Simple-0.21
  • local-lib-2.000013
  • LockFile-Simple-0.208
  • Log-Any-0.15
  • Log-Dispatch-2.42
  • Log-Dispatch-FileRotate-1.19
  • Log-Log4perl-1.44
  • LWP-ConnCache-MaxKeepAliveRequests-0.33
  • LWP-MediaTypes-6.02
  • LWP-Protocol-https-6.06
  • LWP-UserAgent-Determined-1.07
  • LWPx-TimedHTTP-1.8
  • MailTools-2.13
  • Math-Base36-0.12
  • Math-BigInt-1.9993
  • Math-BigInt-FastCalc-0.31
  • Math-BigRat-0.2606
  • Math-Calc-Units-1.07
  • Math-Combinatorics-0.09
  • Math-Random-ISAAC-1.004
  • Math-Random-ISAAC-XS-1.004
  • Math-Round-0.06
  • MemHandle-0.07
  • Memoize-1.03
  • Memoize-ExpireLRU-0.55
  • Meta-Builder-0.003
  • MIME-Lite-3.030
  • MIME-Types-2.04
  • Mock-Quick-1.107
  • Module-Build-0.4207
  • Module-Build-Deprecated-0.4210
  • Module-Build-Tiny-0.037
  • Module-Build-XSUtil-0.14
  • Module-CoreList-5.021002
  • Module-Find-0.12
  • Module-Implementation-0.07
  • Module-Info-0.35
  • Module-Install-1.10
  • Module-Install-AuthorRequires-0.02
  • Module-Install-AuthorTests-0.002
  • Module-Load-0.32
  • Module-Load-Conditional-0.62
  • Module-Metadata-1.000024
  • Module-Pluggable-5.1
  • Module-Runtime-0.014
  • Module-ScanDeps-1.14
  • Module-Signature-0.73
  • Module-Util-1.09
  • Moo-1.006000
  • Moose-2.1211
  • Moose-Autobox-0.15
  • MooseX-Aliases-0.11
  • MooseX-AttributeHelpers-0.23
  • MooseX-ClassAttribute-0.27
  • MooseX-Daemonize-0.19
  • MooseX-Emulate-Class-Accessor-Fast-0.00903
  • MooseX-FileAttribute-0.02
  • MooseX-Getopt-0.65
  • MooseX-MarkAsMethods-0.15
  • MooseX-MethodAttributes-0.29
  • MooseX-NonMoose-0.26
  • MooseX-Params-Validate-0.18
  • MooseX-RelatedClassRoles-0.004
  • MooseX-Role-Parameterized-1.07
  • MooseX-Role-WithOverloading-0.15
  • MooseX-SemiAffordanceAccessor-0.09
  • MooseX-Storage-0.46
  • MooseX-StrictConstructor-0.19
  • MooseX-Traits-Pluggable-0.12
  • MooseX-Types-0.44
  • MooseX-Types-Common-0.001012
  • MooseX-Types-DateTime-0.10
  • MooseX-Types-DateTime-ButMaintained-0.16
  • MooseX-Types-DateTime-MoreCoercions-0.14
  • MooseX-Types-DateTimeX-0.10
  • MooseX-Types-JSON-0.04
  • MooseX-Types-LoadableClass-0.012
  • MooseX-Types-Path-Class-0.06
  • MooX-Singleton-1.20
  • MooX-Types-MooseLike-0.25
  • MooX-Types-MooseLike-Numeric-1.02
  • Mouse-2.3.0
  • Mozilla-CA-20130114
  • MRO-Compat-0.12
  • multidimensional-0.011
  • Nagios-Object-0.21.20
  • Nagios-Plugin-0.36
  • Nagios-Plugin-SNMP-1.2
  • Nagios-Plugin-WWW-Mechanize-0.13
  • namespace-autoclean-0.19
  • namespace-clean-0.25
  • NetAddr-IP-4.075
  • Net-Amazon-EC2-0.29
  • Net-Amazon-S3-0.60
  • Net-CIDR-0.17
  • Net-Dev-MIBLoadOrder-1.1.0
  • Net-DNS-0.78
  • Net-HTTP-6.07
  • Net-IP-1.26
  • Net-LDAP-Server-0.43
  • Net-LDAP-Server-Test-0.19
  • Net-Ping-2.41
  • Net-RackSpace-CloudServers-0.14
  • Net-Server-2.008
  • Net-SNMP-v6.0.1
  • Net-SNPP-1.17
  • Net-SSLeay-1.66
  • Net-Stomp-0.49
  • NRD-Daemon-0.04
  • Number-Bytes-Human-0.09
  • Number-Compare-0.03
  • Number-Format-1.73
  • Number-Misc-1.1
  • Object-Signature-1.07
  • OLE-Storage_Lite-0.19
  • Olson-Abbreviations-0.04
  • Package-Constants-0.04
  • Package-DeprecationManager-0.13
  • Package-Stash-0.36
  • Package-Stash-XS-0.28
  • Package-Variant-1.002001
  • PadWalker-1.98
  • PAR-1.007
  • Parallel-Forker-1.232
  • Parallel-ForkManager-1.06
  • Params-Check-0.38
  • Params-Classify-0.013
  • Params-Util-1.07
  • Params-Validate-1.13
  • PAR-Dist-0.49
  • parent-0.228
  • PAR-Filter-Squish-0.03
  • PAR-Packer-1.010
  • PAR-Packer-1.019
  • Parse-ANSIColor-Tiny-0.501
  • Parse-CPAN-Meta-1.4414
  • Parse-RecDescent-1.967009
  • Path-Class-0.33
  • Path-FindDev-0.5.2
  • Path-IsDev-1.001002
  • Path-Tiny-0.056
  • PathTools-3.47
  • Perl6-Junction-1.60000
  • Perl-Critic-1.121
  • Perl-Destruct-Level-0.02
  • perl-ldap-0.64
  • Perl-OSType-1.007
  • Perl-Squish-1.06
  • Perl-Tidy-20140711
  • PHP-Serialization-0.34
  • Plack-1.0031
  • Plack-Middleware-FixMissingBodyInRedirect-0.11
  • Plack-Middleware-MethodOverride-0.10
  • Plack-Middleware-RemoveRedundantBody-0.05
  • Plack-Middleware-ReverseProxy-0.15
  • Plack-Test-ExternalServer-0.01
  • Pod-Coverage-0.23
  • Pod-Escapes-1.06
  • podlators-2.5.3
  • Pod-Parser-1.62
  • Pod-Simple-3.28
  • Pod-Spell-1.15
  • Pod-Usage-1.64
  • POSIX-strftime-Compiler-0.32
  • PPI-1.218
  • PPIx-Regexp-0.036
  • PPIx-Utilities-1.001000
  • Probe-Perl-0.03
  • Proc-FastSpawn-1.2
  • Proc-Fork-0.802
  • Proc-ProcessTable-0.50
  • Proc-Simple-1.31
  • Readonly-2.00
  • Readonly-XS-1.05
  • Regexp-Common-2013031301
  • Regexp-Parser-0.21
  • REST-Client-271
  • Role-Tiny-1.003003
  • RRD-Simple-1.44
  • RT-Client-REST-0.49
  • Safe-Isa-1.000005
  • Scalar-List-Utils-1.39
  • Scope-Guard-0.20
  • Set-Cluster-0.02
  • Set-Infinite-0.65
  • Set-Object-1.34
  • SMS-AQL-1.01
  • SNMP_Session-1.13
  • SNMP-Trapinfo-1.03
  • Snowball-Norwegian-1.2
  • Snowball-Swedish-1.2
  • SOAP-Lite-1.11
  • Socket-2.015
  • Socket6-0.25
  • Sort-Naturally-1.03
  • Spiffy-0.46
  • Spreadsheet-ParseExcel-0.65
  • Spreadsheet-WriteExcel-2.40
  • SQL-Abstract-1.78
  • SQL-Abstract-Limit-0.141
  • SQL-Translator-0.11018
  • Starman-0.4009
  • Statistics-Descriptive-3.0607
  • Statistics-Lite-3.2
  • Storable-2.51
  • Stream-Buffered-0.03
  • strictures-1.005005
  • String-Bash-1.110960
  • String-CamelCase-0.02
  • String-Escape-2010.002
  • String-Format-1.17
  • String-RewritePrefix-0.007
  • String-ToIdentifier-EN-0.11
  • String-Util-1.23
  • Sub-Exporter-0.987
  • Sub-Exporter-ForMethods-0.100051
  • Sub-Exporter-Progressive-0.001011
  • Sub-Identify-0.04
  • Sub-Install-0.928
  • Sub-Name-0.09
  • Sub-Uplevel-0.24
  • SVN-Notify-2.84
  • syntax-0.004
  • Syntax-Keyword-Junction-0.003008
  • Sys-Statistics-Linux-0.66
  • Sys-Syslog-0.33
  • TAP-Harness-JUnit-0.41
  • Task-Weaken-1.04
  • Template-Alloy-1.020
  • Template-Plugin-DataPrinter-0.012
  • Template-Plugin-Stash-1.006
  • Template-Timer-1.00
  • Template-Toolkit-2.25
  • Term-ANSIColor-4.03
  • Term-Encoding-0.02
  • Term-ProgressBar-2.15
  • Term-ProgressBar-Quiet-0.31
  • Term-ProgressBar-Simple-0.03
  • TermReadKey-2.32
  • Term-ReadLine-1.14
  • Term-ReadLine-Perl-1.0303
  • Term-Size-Any-0.002
  • Term-Size-Perl-0.029
  • Test-Base-0.86
  • Test-CheckDeps-0.010
  • Test-Class-0.46
  • Test-ClassAPI-1.06
  • Test-CleanNamespaces-0.15
  • Test-Command-0.11
  • Test-DatabaseRow-2.04
  • Test-Deep-0.112
  • Test-Differences-0.62
  • Test-Distribution-2.00
  • Test-EOL-1.5
  • Test-Exception-0.32
  • Test-Exception-LessClever-0.006
  • Test-Fatal-0.013
  • Test-File-1.36
  • Test-Harness-3.33
  • Test-Harness-Straps-0.30
  • Test-Inter-1.05
  • Test-JSON-0.11
  • Test-LeakTrace-0.14
  • Test-LongString-0.15
  • Test-Manifest-2.01
  • Test-Memory-Cycle-1.04
  • Test-Mock-Guard-0.10
  • Test-Mock-LWP-0.08
  • Test-MockObject-1.20140408
  • Test-MockTime-0.13
  • Test-Most-0.34
  • Test-NoPlan-v0.0.6
  • Test-NoTabs-1.3
  • Test-NoWarnings-1.04
  • Test-Object-0.07
  • Test-Output-1.03
  • Test-Perl-Critic-1.02
  • Test-PerlTidy-20130104
  • Test-Pod-1.48
  • Test-Pod-Coverage-1.10
  • Test-Requires-0.08
  • Test-Script-1.07
  • Test-SharedFork-0.28
  • Test-Simple-1.001003
  • Test-SubCalls-1.09
  • Test-TCP-2.06
  • Test-TempDir-0.08
  • Test-Tester-0.109
  • Test-Trap-v0.2.4
  • Test-use-ok-0.11
  • Test-utf8-1.01
  • Test-Valgrind-1.14
  • Test-Version-1.002004
  • Test-Warn-0.30
  • Test-Warnings-0.016
  • Test-Without-Module-0.17
  • Test-WWW-Mechanize-1.44
  • Test-WWW-Mechanize-Catalyst-0.59
  • Test-WWW-Mechanize-PSGI-0.35
  • Test-WWW-Selenium-1.36
  • Test-XPath-0.16
  • Test-YAML-1.04
  • Test-YAML-Valid-0.04
  • Text-Balanced-2.02
  • Text-CSV-1.32
  • Text-CSV-Simple-1.00
  • Text-CSV_XS-1.11
  • Text-Diff-1.41
  • Text-German-0.06
  • Text-Glob-0.09
  • Text-Markdown-1.000031
  • Text-ParseWords-3.29
  • Text-Reform-1.20
  • Text-SimpleTable-2.03
  • Text-Soundex-3.04
  • Text-TabularDisplay-1.38
  • Text-Unidecode-1.22
  • Text-WikiFormat-0.81
  • threads-1.96
  • threads-shared-1.46
  • Tie-IxHash-1.23
  • Tie-RefHash-1.39
  • Tie-RefHash-Weak-0.09
  • Tie-RegexpHash-0.16
  • Tie-ToObject-0.03
  • Time-Clock-1.03
  • TimeDate-2.30
  • Time-Duration-1.1
  • Time-Duration-Parse-0.11
  • Time-Elapsed-0.31
  • Time-HiRes-1.9726
  • Time-Interval-1.233
  • Time-Local-1.2300
  • Time-ParseDate-2013.1113
  • Time-Piece-1.27
  • Time-Piece-MySQL-0.06
  • Time-Progress-1.8
  • Time-Warp-0.5
  • Tree-DAG_Node-1.22
  • Tree-Simple-1.23
  • Tree-Simple-VisitorFactory-0.12
  • Try-Tiny-0.22
  • Types-Serialiser-1.0
  • UNIVERSAL-can-1.20140328
  • UNIVERSAL-isa-1.20120726
  • UNIVERSAL-moniker-0.08
  • UNIVERSAL-require-0.17
  • URI-1.64
  • URI-Find-20140709
  • UUID-0.05
  • Variable-Magic-0.53
  • version-0.9909
  • Version-Requirements-0.101022
  • Want-0.23
  • WWW-Mechanize-1.73
  • WWW-Mechanize-Timed-0.44
  • WWW-RobotRules-6.02
  • XML-Atom-SimpleFeed-0.86
  • XML-DOM-1.44
  • XML-LibXML-2.0116
  • XML-NamespaceSupport-1.11
  • XML-Parser-2.41
  • XML-RegExp-0.04
  • XML-RSS-1.55
  • XML-SAX-0.99
  • XML-SAX-Base-1.08
  • XML-SAX-Expat-0.51
  • XML-Simple-2.20
  • XML-Twig-3.48
  • XML-Writer-0.625
  • XML-Writer-String-0.1
  • XML-XPath-1.13
  • YAML-1.06
  • YAML-1.07
  • YAML-LibYAML-0.47
  • YAML-Perl-0.02
  • YAML-Syck-1.27
  • YAML-Tiny-1.63

Opsview Error Page

  • Cufon
  • Exo_800.font
  • Gudea_italic_400.font
  • Pong
  • Snake
  • Space
  • Parallax stars css

Reports

  • Jasper Server 5.1

NetAudit

  • active-mq
  • RANCID

Config Files

Configurable Values: opsview.conf

Nagios(R) Core configuration files are recreated at every Opsview Monitor reload. The files are generated from the nagconfgen.pl script. Most Opsview Monitor configuration is performed via the web user interface. However some less common options are located in configuration files. Opsview's main configuration file is /usr/local/nagios/etc/opsview.conf. The default file is /usr/local/nagios/etc/opsview.defaults and may be changed in future upgrades. The opsview.conf file will not be touched. The configuration takes the opsview.defaults variables and overlays the opsview.conf contents. If you want to make any changes, edit opsview.conf. You must end the file with: 1; Verify the configuration with: /usr/local/nagios/bin/opsview.sh This should return a subset of the Variables in the file.

Database Options

  • $db
  • $dbuser
  • $dbpasswd
  • $dbhost
  • $dbport

These control how Opsview Monitor connects to its databases. There are four sets of these Variables, the other three prefixed with 'runtime', 'odw', and 'dashboard_' to communicate to Runtime, ODW (Opsview Data Warehouse) and Dashboard respectively. db is the database name, and usually should not be changed. Restart Opsview Monitor and Opsview Web after changing these variables. Note**:** If the dbhost is set to 'localhost', MySQL will connect via a file socket - not via an IP socket - and thus the dbport will be ignored. You will need to set dbhost to be 127.0.0.1 to force the dbport to be used.

$max_parallel_tasks

This Variable controls the number of parallel jobs that the Opsview Monitor reload process will use. This defaults to four, but can be increased if you have lots of slave systems and multiple CPUs on your master server. Note: this only helps per slave, not per node within a slave cluster. The output from the reload process is available in /usr/local/nagios/var/log/create_and_send_configs.debug file. This explains where the most time is being used during the reload.

$rrd_retention_days

This is the amount of time to leave untouched RRD files before deleting them.

$authtkt_shared_secret

This is the shared secret used by Opsview Monitor's authentication system. This secret can be passed to other applications (such as Nagvis) if you want single sign on ability. You can also use an encrypted value for the shared secret by setting the Variable $authtkt_shared_secret_encrypted instead. Use the opsview_crypt tool to generate the encrypted value. You must restart Opsview Web for this to take effect. Note: If you change this, you must update the key for all your SSO systems, including your Apache configuration file: TKTAuthSecret "shared-secret-please-change" #TKTAuthSecretEncrypted "encrypted-value" # Use this if you want to use the encrypted value instead. If this secret is changed and your browser still has the old auth_tkt, then you will get an error in the Opsview login page that says 'Invalid authentication ticket'.

$slave_initiated

If you have slaves setup, you can have them in reverse SSH mode, which means that the slave initiates the SSH connection to the master, who can then communicate via this tunnel.

$slave_base_port

To allow slave-initiated setups, you have to have a base port number and the slave will be contactable via the base port number + their cluster node id. So choose a range which will not be used by anything else.

$bind_address

This defines the bind address for the opsview_web_server process. This defaults to 0.0.0.0 (all interfaces), but you can set to a specific interface if you prefer.

$nsca_server_address

This defines the server address for the nsca daemon on the master server. This defaults to 127.0.0.1, which is used by slaves in a distributed environment. Set to 0.0.0.0 if you want to listen on all interfaces so you can pass passive results to the master.

$nsca_shared_password

This is a shared password between the NSCA server (running on the Opsview Monitor master) and all slaves. This value is auto generated on an install. If you change the value, you must do a reload (to generate the configuration files that NSCA uses) and then you have to run /etc/init.d/opsview restart on the master and all slaves to take effect.

$nsca_encryption_method

This sets the encryption (send_nsca.cfg) and decryption method (nsca.cfg) when the configuration files are generated by Opsview Monitor. This defaults to 2 (DES).

$slave_results_max_cache

This sets the cache expiry time for Service Check results on all slaves, in seconds. The default is five minutes. Note**: To take effect, you must initiate an Opsview Monitor reload and then restart Opsview Monitor on the slaves with /etc/init.d/opsview restart. Note**: In the case of a connection failure between a slave and the master, more disk space will be used to cache the results. Results will be dropped as they go over the cache period. Ensure you have sufficient space to store results for your full cache period. Note**:** Results will be processed in sequential time order on the master server and may not integrate into the Opsview Master if the time between the result and current time is too old. We recommend you do not use a value above 30 minutes.

$detect_slave_status_on_import

This sets whether to delay the ODW import if all slaves are not OK.

$slave_send_method

This is deprecated as NRD is the only supported slave communication mechanism. An NSCA daemon will be running for any NSCA clients that may need to connect to Opsview Monitor.

$nrd_shared_password

This is a shared password between the NRD server (running on the Opsview Monitor master) and all slaves. This value is auto generated on an install. If you change the value, you must do a reload (to generate the configuration files that NRD uses) and then you have to run /etc/init.d/opsview restart on the master and all slaves to take effect.

$snmptrapexception_retention_days

This is the amount of time that SNMP trap exceptions are kept in the database. This defaults to 60 days.

$graph_show_legend

This sets whether graphs display the legends by default.

$graph_auto_max_metrics

This sets the value where a popup will appear on graph pages if there are more metrics than this number. By default this is 10.

$status_dat

This is a Nagios file that gets continually written to. For performance reasons, you can change this location to a RAM disk. Note that you will need to restart Nagios for this change to take effect as a reload is not sufficient. This will also affect slave servers. If you change this to a different file system, you must also change the temp_file location as well. The status_dat file is written to the temp_file location first and then moved into status_dat location. To change the temp_file location, use the $overrides option below. You may also want to change the frequency of writing the status_dat file.

$overrides

This variable overrides values in the generated nagios.cfg, cgi.cfg and nsca.cfg files. If a variable is stored in nagios.cfg then the override needs to be prefixed with nagios_. You need to set all the values together. For instance:

$overrides = <<'EOF';
nagios_service_check_timeout=120
nagios_max_concurrent_checks=50
nagios_enable_notifications=0
nagios_retained_host_attribute_mask=14
nsca_max_packet_age=20
nagios_status_update_interval=30
nagios_temp_file=/tmp/nagios.tmp
EOF

This would change max_concurrent_checks, enable_notifications and retained_host_attribute_mask in nagios.cfg and max_packet_age in nsca.cfg. Further information on Nagios Core configuration can be found here.

Note: Be aware that changing some options may adversely affect the performance of Opsview Monitor.

Note: If you change Nagios values, be aware that Nagios may use values based on the last retained values in the retention.dat file. For example, even if nagios_enable_notifications is set to one in the overrides, Nagios will use the value from retention.dat instead. If you need to disable Notifications globally, use the "UI screens in Settings \x{00E2}\x{0087}\x{0092} Monitoring Engine \x{00E2}\x{0087}\x{0092} Disable Notifications instead.

Configuration Options: Opsview Web

Opsview Web uses the file /usr/local/opsview-web/opsview_web.yml as its main configuration file. Local changes can be made in /usr/local/opsview-web/opsview_web_local.yml and these will be retained over an upgrade. Changes to these files require a restart of Opsview Web.

Authtkt Ignore IP

When generating the authtkt key, the browser IP address is added into the mix. However, in some scenarios, you may not want this - for instance, if you have multiple proxies in front of Opsview Monitor. You can ignore the IP address (internally, it will set the IP to 0.0.0.0). Add to the opsview_web_local.yml file:

Controller::Root:
  authtkt_ignoreip: 1

Note**:** if you change this, you will also need to update the Apache configuration file so that the following is set:

TKTAuthIgnoreIP on

Starman Server Processes

Opsview Web uses Starman via Catalyst to server dynamic pages. You can increase the number of Starman server processes to improve web responses, at the cost of using more memory.

You can estimate the amount of memory used by Starman with the following calculation:

  • max_servers x 200MB

The default value is max_servers of 5.

Add to the opsview_web_local.yml file:

ProductionEngine:
 max_servers: 20

The smallest setting you can use is:

ProductionEngine:
  max_servers: 3
  min_servers: 2
  max_spare_servers: 1
  min_spare_servers: 1

Login Timeout

You can modify the following to increase or decrease the time that the interface automatically logs you out.

session:
 expires: 86400

Default Thresholds for Host Interfaces

You can add the following to change the default host interface thresholds:

host_interfaces:
  default_throughput_critical: 55%
  default_throughput_warning: ""
  default_errors_critical: 20
  default_discards_critical: 5

License Messages

If your license for Opsview Pro or Opsview Enterprise is coming up for renewal, there will be a banner that is displayed in the top of all Opsview screens.

You can change the access required to see this message by changing the configuration file to:

Controller::Root:
  show_license_messages: ADMINACCESS

By default, show_license_messages is set to 1 which means all users will see it. If set to 0, this disables all license messages. Otherwise, it expects a string to mean which particular access level is required to display the banner - this can be a comma-separated list and thus any one of those accesses will have the banner displayed. Note: If you disable banner messages, ensure the Service Check Opsview License Checks is running and that notifications work, so that you still get warnings about upcoming expiry.

Temporarily Changing Nagios Core Configuration Values

Although Opsview Monitor will regenerate the Nagios Core configuration files on every reload, you can temporarily change the Nagios Core configuration files if you want to test something quickly for the Nagios Core daemon. The process is:

  • Make changes to the files you want
  • Run a verification step: /usr/local/nagios/bin/rc.opsview check
  • Reload Nagios: /usr/local/nagios/bin/rc.opsview reload

Disclaimer

No Warranty

Opsview Monitor documentation is provided with no warranty of any kind, including the warranty of design, merchantability, and fitness for a particular purpose.

We try our best to provide accurate information. If you find a mistake, please bring this to our attention on the Opsview Forums, preferably with a suggested fix.

Intellectual Property

Opsview Monitor, and the Opsview logo, are the servicemarks, trademarks, or registered trademarks owned by by Opsview Ltd. Nagios, the Nagios logo, and Nagios graphics are the servicemarks, trademarks, or registered trademarks owned by Nagios Enterprises. All other servicemarks, trademarks, registered trademarks and copyrights are the property of their respective owner.

Appendix

Opsview Monitor Appendix