Open Source

These are open source monitoring solutions, tools and related or supporting products in no particular order excepting the order in which I made note of them when I found them. The categorization applied is a little bit arbitrary because some of these products may fall into multiple categories. If you have any additions to this list, or have suggestions for changes to the categorization or summary blurbs,  or if you dispute the open source status of any product, please email me.

System and Infrastructure Monitoring

  • Nagios: A widely implemented system, network and application monitoring system.
  • Ganglia: Ganglia is a scalable distributed monitoring system for high-performance computing systems such as clusters and grids.
  • OpenNMS: A network management solution with the flexibility to monitor a wide variety of services.
  • ZenOSS: Commercial open source application, systems & network monitoring.
  • Munin: Monitors the performance of your computers, networks, SANs, applications, weather measurements and whatever comes to mind.
  • GroundWork Open Source: A package bundling [and integrating ?] a number of other open source monitoring solutions such as Nagios, Ganglia and RRDTool.
  • OpenQRM: A data center management platform.
  • Icinga: A fork of the Nagios Project.

Application and Services Monitoring

  • Hyperic HQ Open Source: Web application and infrastructure management.
  • Zabbix: An enterprise-class open source distributed monitoring solution.

Java Application Monitoring

  • Infrared: A tool for monitoring performance of a J2EE application and diagnosing performance problems.
  • JBoss Profiler: A log based profiler using JVMPI and JVMTI.
  • VisualVM: A visual tool integrating several commandline JDK tools and lightweight profiling capabilities. Designed for both production and development time use, it further enhances the capability of monitoring and performance analysis for the Java SE platform.
  • JConsole: A JMX-compliant graphical tool for monitoring a Java virtual machine. It can monitor both local and remote JVMs. It can also monitor and manage an application.
  • MC4J: A project to create management software for J2EE application servers and other Java applications.

OS Oriented Monitoring Services

  • top: A console based process monitor most commonly on *nix operating systems, but with variants for other platforms.
  • collectd: A daemon which collects system performance statistics periodically and provides mechanisms to store the values in a variety of ways.
  • Monit: A utility for managing and monitoring, processes, files, directories and filesystems on a UNIX system.
  • GKrellM: GKrellM is a single process stack of system monitors which supports applying themes to match its appearance to your window manager, Gtk, or any other theme. 
  • DTrace: A comprehensive dynamic tracing framework for the [Open] Solaris Operating Environment.  Note: Being that DTrace is available for Open Solaris, I am classifying it as open source. There are also some non-solaris implementations in the works such as DTrace for Linux. According to this Ted Leung blog, DTrace is also available on OS X and FreeBSD.
  • BrandZ: An extension of the Solaris Zones infrastructrure that amongst many other features, allows the use of DTrace on Linux application processes.
  • Monitorix: Lighweight system monitoring service for *nix servers.
  • OProfile is a system-wide profiler for Linux systems, capable of profiling all running code at low overhead.

Java Code Profilers, Tracing APIs and Instrumentors

  • JRat: (Java Runtime Analysis Toolkit) Monitors an application's execution and persists performance measurements.
  • Perf4J: A set of utilities for calculating and displaying perfomance statistics for Java code.
  • Jip: A java code profiling tool.
  • JPicus – Java I/O analysis framework

Generic or Multi-Purpose Monitoring Tools or Support

  • RRDTool: High performance data logging and graphing system for time series data. Frequently used to provide a time series, round robin database and graphing services to other monitors.
  • JRobin: A pure java port of RRDTool.
  • RRD4J: Another pure java port of RRDTool.

Network Monitoring

  • dbeacon: A multicast network monitor.
  • HAPM: A high availability network port monitor.
  • Remstats: A server and router monitor that uses RRDTool.
  • Cacti: A complete network graphing solution designed to harness the power of RRDTool's data storage and graphing functionality. 
  • NTop: A network traffic probe that shows the network usage, similar to what the popular top Unix command does.

Database Monitoring

Virtualized Environment Monitoring

  • vmktree: A free web tool that shows you the graphs of resource usage of VMware ESX Server, VMware Server (on Linux), GSX Server (on Linux) and a few other data center devices (ilo/ilo2/rsa2/ds4000).

Visualization and Reporting

  • JFreeChart: A graph and chart rendering API for Java.
  • JasperReports: A Java based report generation API and service.
  • FusionCharts Free: A Flash based graph and chart rendering framework.
  • VisiFire: A sliverlight based graph and chart rendering framework.