Class Info

  • All Implemented Interfaces:
    Collector.Describable

    public class Info
    extends SimpleCollector<Info.Child>
    implements Collector.Describable
    Info metric, key-value pairs. Examples of Info include build information, version information, and potential target metadata. The string "_info" will be appended to the sample name.

    Example Info:

     
       class YourClass {
         static final Info buildInfo = Info.build()
             .name("your_build").help("Build information.")
             .register();
    
         void func() {
              // Your code here.
             buildInfo.info("branch", "HEAD", "version", "1.2.3", "revision", "e0704b");
         }
       }
     
     
    Since:
    0.10.0
    • Method Detail

      • build

        public static Info.Builder build​(String name,
                                         String help)
        Return a Builder to allow configuration of a new Info. Ensures required fields are provided.
        Parameters:
        name - The name of the metric
        help - The help string of the metric
      • build

        public static Info.Builder build()
        Return a Builder to allow configuration of a new Info.
      • info

        public void info​(String... v)
        Set the info on the info with no labels.
      • info

        public void info​(Map<String,​String> v)
        Set the info on the info with no labels.
        Parameters:
        v - labels as pairs of key values
      • describe

        public List<Collector.MetricFamilySamplesdescribe()
        Description copied from interface: Collector.Describable
        Provide a list of metric families this Collector is expected to return. These should exclude the samples. This is used by the registry to detect collisions and duplicate registrations. Usually custom collectors do not have to implement Describable. If Describable is not implemented and the CollectorRegistry was created with auto describe enabled (which is the case for the default registry) then Collector.collect() will be called at registration time instead of describe. If this could cause problems, either implement a proper describe, or if that's not practical have describe return an empty list.
        Specified by:
        describe in interface Collector.Describable