1.14. Release Notes 1.5.5

NetSpyGlass v1.5.5

1.14.1. Important

This version of NetSpyGlass (1.5.5) can work with both Java7 and Java8, however performance and memory handling are better when running on Java8.

Next release of NetSpyGlass (1.6.0) will require Java8. Please upgrade machines you use to run NetSpyGlass.

Support for Influxdb 0.8 has been suspended. This version still works with InfluxDb 0.8 but support for it will be removed in the next release of NetSpyGlass.

1.14.2. Improvements and New Features

  • this release includes new and improved NetSpyGlass cluster configuration (beta at this time)

  • this release comes with numerous improvements that allow NetSpyGlass servers to use less RAM and scale to multiple millions of variables

  • NetSpyGlass server does not use protobuf RPC anymore, all server to server communication is done using JSON API. The server listens only on one port defined with ui.url configuration parameter.

  • NetSpyGlass server can run with the following roles:
    • primary
    • secondary
    • monitor

    when server runs in a standalone configuration, its role is combination of “primary,monitor”. Servers running in a cluster configuration can have one of the three roles. See Cluster configuration. Standalone monitor role where NetSpyGlass process only perfprmed SNMP polling to collect data but did not process it has been deprecated. NetSpyGlass process running with role “monitor” now performs basic calculations with collected data.

  • Json API access tokens have moved from configuration parameter ui.access_tokens to api.accessTokens. Old parameter ui.access_tokens is going to be supported for a few future releases for backward compatibility but support will be deprecated eventually. See Using access tokens for script access to API for more details.

  • beginnig this version, NetSpyGlass does not use Codahale Metrics package anymore (http://metrics.dropwizard.io/3.1.0/). Web server endpoint “/metrics/*” has been removed.

  • configuration parameter push.segmentSize has been deprecated; the size of the data push block is calculated as total number of variables divided by the number of threads (parameter push.threads)

  • startup script netspyglass.sh (usually installed as /etc/init.d/netspyglass.sh) will kill both NetSpyGlass process and its parent jsvc process if they do not exit within 300 sec when script is called with command stop.

  • A change in the usage of Python function export_var(): MonitoringVariable instances passed to this function via its second argument can not be used in the Python script again, even if the second argument is a list and the script still has references to them. Contents of these instances may change at any moment after the call to export_var().

  • Ability to run Python rules script in multiple threads has been disabled because it did not yield any significant improvement in real world configurations. We may return to this in the future though.

  • This version comes with support for direct Grafana integration

  • white spaces are replaced with underscores in the network name (configuration parameter network.name) when server creates corresponding directory under ${home}/reports

  • optional parameter name can be used with device definition in the configuration file (network.devices) to assign name to the device when it is defined by ip address, does not respond to SNMP so its host name can not be determined and when DNS PTR record for the ip address does not exist.

  • this version adds support for Cumulus Linux and A10 devices (AX series)

  • improved ability to discover network topology between BGP peers where external peers share MAC address (i.e. we find two or more BGP sessions, possibly on different routers, that are established to peers that have different IP addresses but share the same MAC address)