Class MutableMetrics

    • Constructor Detail

      • MutableMetrics

        protected MutableMetrics()
      • MutableMetrics

        public MutableMetrics​(String id,
                              String name)
      • MutableMetrics

        public MutableMetrics​(Metrics other)
        Create a MutableMetrics from an immutable one.
    • Method Detail

      • start

        public void start()
        Starts the timer for this metric. Should not be called again without first calling stop().
      • stop

        public void stop()
        Stops the timer for this metric and increments the overall duration. Should not be called without first calling start().
      • incrementCount

        public void incrementCount​(String key,
                                   long incr)
        Increments a count metric.
      • setDuration

        public void setDuration​(long dur,
                                TimeUnit unit)
        Directly set the duration for the metric.
      • setCount

        public void setCount​(String key,
                             long val)
        Directly set the count for the metric.
      • aggregate

        public void aggregate​(MutableMetrics other)
        Aggregate one set of metrics into the current body of metrics.
      • setAnnotation

        public void setAnnotation​(String key,
                                  Object value)
        Set an annotation value. Support exists for Strings and Numbers only. During a merge, Strings are concatenated into a "," (comma) separated list of distinct values (duplicates are ignored), and Numbers are summed.
      • isFinalized

        public boolean isFinalized()
        Once these metrics are used in computing the final metrics to report through TraversalMetrics they should no longer be modified and are thus finalized.
      • getImmutableClone

        public ImmutableMetrics getImmutableClone()
        Gets a copy of the metrics that is immutable. Once this clone is made, the MutableMetrics can no longer be modified themselves. This prevents custom steps that implement Profiling from adding to the metrics after the traversal is complete.
      • finish

        public void finish​(long bulk)