Class MetricsRecordImpl

  • All Implemented Interfaces:
    MetricsRecord

    @Public
    @Evolving
    public class MetricsRecordImpl
    extends java.lang.Object
    implements MetricsRecord
    An implementation of MetricsRecord. Keeps a back-pointer to the context from which it was created, and delegates back to it on update and remove().
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected MetricsRecordImpl​(java.lang.String recordName, AbstractMetricsContext context)
      Creates a new instance of FileRecord
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      OutputRecord createOutputRecord()  
      java.lang.String getRecordName()
      Returns the record name.
      java.util.Set<java.lang.String> getTagNames()  
      void incrMetric​(java.lang.String metricName, byte metricValue)
      Increments the named metric by the specified value.
      void incrMetric​(java.lang.String metricName, float metricValue)
      Increments the named metric by the specified value.
      void incrMetric​(java.lang.String metricName, int metricValue)
      Increments the named metric by the specified value.
      void incrMetric​(java.lang.String metricName, long metricValue)
      Increments the named metric by the specified value.
      void incrMetric​(java.lang.String metricName, short metricValue)
      Increments the named metric by the specified value.
      void remove()
      Removes the row, if it exists, in the buffered data table having tags that equal the tags that have been set on this record.
      void removeTag​(java.lang.String tagName)
      Removes any tag of the specified name.
      void setMetric​(java.lang.String metricName, byte metricValue)
      Sets the named metric to the specified value.
      void setMetric​(java.lang.String metricName, float metricValue)
      Sets the named metric to the specified value.
      void setMetric​(java.lang.String metricName, int metricValue)
      Sets the named metric to the specified value.
      void setMetric​(java.lang.String metricName, long metricValue)
      Sets the named metric to the specified value.
      void setMetric​(java.lang.String metricName, short metricValue)
      Sets the named metric to the specified value.
      void setTag​(java.lang.String tagName, byte tagValue)
      Sets the named tag to the specified value.
      void setTag​(java.lang.String tagName, int tagValue)
      Sets the named tag to the specified value.
      void setTag​(java.lang.String tagName, long tagValue)
      Sets the named tag to the specified value.
      void setTag​(java.lang.String tagName, short tagValue)
      Sets the named tag to the specified value.
      void setTag​(java.lang.String tagName, java.lang.String tagValue)
      Sets the named tag to the specified value.
      void update()
      Updates the table of buffered data which is to be sent periodically.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • MetricsRecordImpl

        protected MetricsRecordImpl​(java.lang.String recordName,
                                    AbstractMetricsContext context)
        Creates a new instance of FileRecord
    • Method Detail

      • getRecordName

        public java.lang.String getRecordName()
        Returns the record name.
        Specified by:
        getRecordName in interface MetricsRecord
        Returns:
        the record name
      • setTag

        public void setTag​(java.lang.String tagName,
                           java.lang.String tagValue)
        Sets the named tag to the specified value.
        Specified by:
        setTag in interface MetricsRecord
        Parameters:
        tagName - name of the tag
        tagValue - new value of the tag
        Throws:
        MetricsException - if the tagName conflicts with the configuration
      • setTag

        public void setTag​(java.lang.String tagName,
                           int tagValue)
        Sets the named tag to the specified value.
        Specified by:
        setTag in interface MetricsRecord
        Parameters:
        tagName - name of the tag
        tagValue - new value of the tag
        Throws:
        MetricsException - if the tagName conflicts with the configuration
      • setTag

        public void setTag​(java.lang.String tagName,
                           long tagValue)
        Sets the named tag to the specified value.
        Specified by:
        setTag in interface MetricsRecord
        Parameters:
        tagName - name of the tag
        tagValue - new value of the tag
        Throws:
        MetricsException - if the tagName conflicts with the configuration
      • setTag

        public void setTag​(java.lang.String tagName,
                           short tagValue)
        Sets the named tag to the specified value.
        Specified by:
        setTag in interface MetricsRecord
        Parameters:
        tagName - name of the tag
        tagValue - new value of the tag
        Throws:
        MetricsException - if the tagName conflicts with the configuration
      • setTag

        public void setTag​(java.lang.String tagName,
                           byte tagValue)
        Sets the named tag to the specified value.
        Specified by:
        setTag in interface MetricsRecord
        Parameters:
        tagName - name of the tag
        tagValue - new value of the tag
        Throws:
        MetricsException - if the tagName conflicts with the configuration
      • removeTag

        public void removeTag​(java.lang.String tagName)
        Removes any tag of the specified name.
        Specified by:
        removeTag in interface MetricsRecord
        Parameters:
        tagName - name of a tag
      • setMetric

        public void setMetric​(java.lang.String metricName,
                              int metricValue)
        Sets the named metric to the specified value.
        Specified by:
        setMetric in interface MetricsRecord
        Parameters:
        metricName - name of the metric
        metricValue - new value of the metric
        Throws:
        MetricsException - if the metricName or the type of the metricValue conflicts with the configuration
      • setMetric

        public void setMetric​(java.lang.String metricName,
                              long metricValue)
        Sets the named metric to the specified value.
        Specified by:
        setMetric in interface MetricsRecord
        Parameters:
        metricName - name of the metric
        metricValue - new value of the metric
        Throws:
        MetricsException - if the metricName or the type of the metricValue conflicts with the configuration
      • setMetric

        public void setMetric​(java.lang.String metricName,
                              short metricValue)
        Sets the named metric to the specified value.
        Specified by:
        setMetric in interface MetricsRecord
        Parameters:
        metricName - name of the metric
        metricValue - new value of the metric
        Throws:
        MetricsException - if the metricName or the type of the metricValue conflicts with the configuration
      • setMetric

        public void setMetric​(java.lang.String metricName,
                              byte metricValue)
        Sets the named metric to the specified value.
        Specified by:
        setMetric in interface MetricsRecord
        Parameters:
        metricName - name of the metric
        metricValue - new value of the metric
        Throws:
        MetricsException - if the metricName or the type of the metricValue conflicts with the configuration
      • setMetric

        public void setMetric​(java.lang.String metricName,
                              float metricValue)
        Sets the named metric to the specified value.
        Specified by:
        setMetric in interface MetricsRecord
        Parameters:
        metricName - name of the metric
        metricValue - new value of the metric
        Throws:
        MetricsException - if the metricName or the type of the metricValue conflicts with the configuration
      • incrMetric

        public void incrMetric​(java.lang.String metricName,
                               int metricValue)
        Increments the named metric by the specified value.
        Specified by:
        incrMetric in interface MetricsRecord
        Parameters:
        metricName - name of the metric
        metricValue - incremental value
        Throws:
        MetricsException - if the metricName or the type of the metricValue conflicts with the configuration
      • incrMetric

        public void incrMetric​(java.lang.String metricName,
                               long metricValue)
        Increments the named metric by the specified value.
        Specified by:
        incrMetric in interface MetricsRecord
        Parameters:
        metricName - name of the metric
        metricValue - incremental value
        Throws:
        MetricsException - if the metricName or the type of the metricValue conflicts with the configuration
      • incrMetric

        public void incrMetric​(java.lang.String metricName,
                               short metricValue)
        Increments the named metric by the specified value.
        Specified by:
        incrMetric in interface MetricsRecord
        Parameters:
        metricName - name of the metric
        metricValue - incremental value
        Throws:
        MetricsException - if the metricName or the type of the metricValue conflicts with the configuration
      • incrMetric

        public void incrMetric​(java.lang.String metricName,
                               byte metricValue)
        Increments the named metric by the specified value.
        Specified by:
        incrMetric in interface MetricsRecord
        Parameters:
        metricName - name of the metric
        metricValue - incremental value
        Throws:
        MetricsException - if the metricName or the type of the metricValue conflicts with the configuration
      • incrMetric

        public void incrMetric​(java.lang.String metricName,
                               float metricValue)
        Increments the named metric by the specified value.
        Specified by:
        incrMetric in interface MetricsRecord
        Parameters:
        metricName - name of the metric
        metricValue - incremental value
        Throws:
        MetricsException - if the metricName or the type of the metricValue conflicts with the configuration
      • update

        public void update()
        Updates the table of buffered data which is to be sent periodically. If the tag values match an existing row, that row is updated; otherwise, a new row is added.
        Specified by:
        update in interface MetricsRecord
      • remove

        public void remove()
        Removes the row, if it exists, in the buffered data table having tags that equal the tags that have been set on this record.
        Specified by:
        remove in interface MetricsRecord
      • getTagNames

        public java.util.Set<java.lang.String> getTagNames()
      • createOutputRecord

        public OutputRecord createOutputRecord()