public void removeListener(final StatisticsListener listener) {
    if (listener == null) {
      throw new NullPointerException("StatisticsListener is null");
    }
    synchronized (mutex) {
      if (listeners.contains(listener)) {
        listeners.remove(listener);
        if (listeners.isEmpty()) {
          try {
            getStatMonitorHandler().removeMonitor(this);
          } catch (IllegalStateException ignore) {
            // sample collector and handlers were closed (ok on removal)
          }
        }
      }
    }
  }
TODO: define another addStatistic for StatisticDescriptor which will enable static monitoring
that will fire for all instances even ones that may not yet be created at the time this monitor
is defined

@since GemFire 7.0
geode-core/src/main/java/org/apache/geode/internal/statistics/StatisticsMonitor.java