public Map getMetrics()

in core/src/main/java/com/spotify/metrics/jvm/GarbageCollectorMetricSet.java [63:91]


    public Map<MetricId, Metric> getMetrics() {
        final Map<MetricId, Metric> gauges = new HashMap<MetricId, Metric>();
        final MetricId base = MetricId.build();

        for (final GarbageCollectorMXBean m : garbageCollectors) {
            final MetricId gc = base.tagged("gc", m.getName());

            final MetricId collectionCount =
                gc.tagged("what", "jvm-gc-collections", "unit", "collection/s");
            final MetricId collectionTime =
                gc.tagged("what", "jvm-gc-collection-time", "unit", "ms/s");

            gauges.put(collectionCount, new DerivedLongGauge() {
                @Override
                public Long getNext() {
                    return m.getCollectionCount();
                }
            });

            gauges.put(collectionTime, new DerivedLongGauge() {
                @Override
                public Long getNext() {
                    return m.getCollectionTime();
                }
            });
        }

        return Collections.unmodifiableMap(gauges);
    }