Neha Patil (Editor)

SNAMP

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
Developer(s)
  
Bytex Solutions PLC

Operating system
  
Cross-platform

Written in
  
Java

License
  
Apache License 2.0

Stable release
  
1.2.0 / August 7, 2016 (2016-08-07)

Type
  
Middleware System monitoring

SNAMP is an open-source, cross-platform, specialized middleware used to collect and aggregate diagnostic events and monitoring information from various software and hardware components. In simple case, SNAMP may act as a software protocol bridge between monitoring tool (like Nagios) and a system to be monitored. In more complex cases, SNAMP provides event filtering, aggregation and decomposition of metrics, scripting etc.

Contents

Overview

Modern software monitoring systems and network management software market offers such products as Nagios, Zabbix, HP BTO. All these solutions provide UI for system administrators, support for management protocols (like SNMP or JMX), alerting and configuration subsystem. The main approach of SNAMP is to extend functionality of existing monitoring tools used in enterprise. For example, the need to monitor Java-based software using System Center Operations Manager 2003 cannot be satisfied directly (because SCOM doesn't support JMX natively), but it is easily solved by SNAMP via configuring JMX-to-SNMP transformation.

SNAMP provides access to the attributes (metrics), events and management operations (if they are supported by backed protocol). The data collection mode depends on the protocol.

Architecture

SNAMP has pluggable architecture that consists of resource connectors and adapters. Resource connector is used to communicate with the component to be monitored. Adapter is used to communicate with monitoring and management tool. Resource connector and adapter can be combined in any way. Therefore, it is possible to convert one protocol to any other. Also, the data can be preprocessed in protocol-agnostic way.

Features

  • Convert JMX, SSH, SNMPv2/SNMPv3, Modbus, rsh, stdout to SNMPv2/SNMPv3, SSH, XMPP, syslog, Hypertext Transfer Protocol
  • Collect events from dead letter queue, invalid message queue or diagnostic queue using JMS, AMQP, MQTT
  • IBM WebSphere MQ support
  • Push metrics and events from remote components using HTTP or Apache Thrift
  • Integration with Nagios (active check) or its passive check agents: NRDP, NSCA
  • Groovy scripting
  • Aggregation of metrics: average value, peak value, maximum value, minimum value etc.
  • Health checks
  • Alternatives

    Jolokia offers JMX-to-HTTP bridge that can be hosted inside of standalone Java program, Java EE application server or OSGi environment.

    References

    SNAMP Wikipedia