Class Metrics

java.lang.Object
io.github.projectunified.faststats.core.Metrics

public final class Metrics extends Object
Main coordinator class that manages configuration, collects metrics, and submits telemetry payloads.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static final class 
    Builder class for Metrics.
  • Method Summary

    Modifier and Type
    Method
    Description
    Instantiates a new Builder.
    Gets the configuration settings.
    <T extends Feature>
    Optional<T>
    getFeature(Class<T> featureClass)
    Finds a registered feature of the specified class.
    void
    Shuts down the scheduler.
    void
    Starts the periodic scheduling of metrics submission with default initial delay (30 seconds, configurable via 'faststats.initial-delay' system property) and period (30 minutes).
    void
    start(long initialDelayMs, long periodMs)
    Starts the periodic scheduling of metrics submission.

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • builder

      public static Metrics.Builder builder()
      Instantiates a new Builder.
      Returns:
      the builder instance
    • getConfig

      public Config getConfig()
      Gets the configuration settings.
      Returns:
      the configuration
    • getFeature

      public <T extends Feature> Optional<T> getFeature(Class<T> featureClass)
      Finds a registered feature of the specified class.
      Type Parameters:
      T - the feature type
      Parameters:
      featureClass - the feature class
      Returns:
      an Optional containing the feature if found, or empty otherwise
    • start

      public void start()
      Starts the periodic scheduling of metrics submission with default initial delay (30 seconds, configurable via 'faststats.initial-delay' system property) and period (30 minutes).
    • start

      public void start(long initialDelayMs, long periodMs)
      Starts the periodic scheduling of metrics submission.
      Parameters:
      initialDelayMs - the initial delay in milliseconds
      periodMs - the period between submissions in milliseconds
    • shutdown

      public void shutdown()
      Shuts down the scheduler.