Menu

Home

Overview

GcRadar is a library that will monitor the activities of the Java Garbage collector on the objects of the client codes choosing. It is designed to give the client source code access to such information. The library can provide this information by using callbacks, log4j and simple polling by the client code. The library can also be used by developers for unit-testing memory intensive code.

Usage & Examples

[gcRadar Usage]
[Example - SimpleObjectSingleThreadedMonitor]
[Example - SingleObjectSingleThreadedLog4jMonitor]
[Example - ObjectTreeMonitor]

How it Works ?

[How it works ?]


A very important concept used while the design of gcRadar is that of Object Monitor.

Object Monitor

An object monitor is the entity that is responsible for identifying an object, then detecting the garbage collection events relating to an object and then passing the information of the event vian an appropriate medium.

These responsibilities are managed by 3 separate sub-modules,

  1. Input Module
  2. Monitoring Module
  3. Notification Module

Input Module

This module is represented by the java interface com.gcr.monitors.modules.in.InputModule, the module is expected to be responsible for the enumeration of objects for monitoring, also adding and removing the objects while the the monitoring is onging.

Monitoring Module

This module is represented by the interface com.gcr.monitors.modules.monitoring.MonitoringModule, the module is responsible for capturing garbage collection events pertaining to the objects enlisted by the Input Module.

Notification Module

This module is represented by the interface com.gcr.monitors.modules.notification.NotificationModule, the module is responsible for passing-on or recording the garbage collection events that were detected by the Monitoring Module.

PS: Please pass any suggestions regarding the usability to the developers using email

Project Members:


Related

Wiki: Example - ObjectTreeMonitor
Wiki: Example - SimpleObjectSingleThreadedMonitor
Wiki: Example - SingleObjectSingleThreadedLog4jMonitor
Wiki: How it works ?
Wiki: gcRadar Usage