Class MetricToDiskExporter

java.lang.Object
io.opentelemetry.contrib.disk.buffering.MetricToDiskExporter
All Implemented Interfaces:
io.opentelemetry.sdk.metrics.export.AggregationTemporalitySelector, io.opentelemetry.sdk.metrics.export.DefaultAggregationSelector, io.opentelemetry.sdk.metrics.export.MetricExporter, Closeable, AutoCloseable

public class MetricToDiskExporter extends Object implements io.opentelemetry.sdk.metrics.export.MetricExporter
This class implements a MetricExporter that delegates to an instance of ToDiskExporter<MetricData>.
  • Method Summary

    Modifier and Type
    Method
    Description
    create(io.opentelemetry.sdk.metrics.export.MetricExporter delegate, StorageConfiguration config, Function<io.opentelemetry.sdk.metrics.InstrumentType,io.opentelemetry.sdk.metrics.data.AggregationTemporality> typeToTemporality)
    Creates a new MetricToDiskExporter that will buffer Metric telemetry on disk storage.
    io.opentelemetry.sdk.common.CompletableResultCode
    export(Collection<io.opentelemetry.sdk.metrics.data.MetricData> metrics)
     
    io.opentelemetry.sdk.common.CompletableResultCode
     
    io.opentelemetry.sdk.metrics.data.AggregationTemporality
    getAggregationTemporality(io.opentelemetry.sdk.metrics.InstrumentType instrumentType)
     
    io.opentelemetry.sdk.common.CompletableResultCode
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface io.opentelemetry.sdk.metrics.export.DefaultAggregationSelector

    with

    Methods inherited from interface io.opentelemetry.sdk.metrics.export.MetricExporter

    close, getDefaultAggregation, getMemoryMode
  • Method Details

    • create

      public static MetricToDiskExporter create(io.opentelemetry.sdk.metrics.export.MetricExporter delegate, StorageConfiguration config, Function<io.opentelemetry.sdk.metrics.InstrumentType,io.opentelemetry.sdk.metrics.data.AggregationTemporality> typeToTemporality) throws IOException
      Creates a new MetricToDiskExporter that will buffer Metric telemetry on disk storage.
      Parameters:
      delegate - - The MetricExporter to delegate to if disk writing fails.
      config - - The StorageConfiguration that specifies how storage is managed.
      typeToTemporality - - The function that maps an InstrumentType into an AggregationTemporality.
      Returns:
      A new MetricToDiskExporter instance.
      Throws:
      IOException - if the delegate ToDiskExporter could not be created.
    • export

      public io.opentelemetry.sdk.common.CompletableResultCode export(Collection<io.opentelemetry.sdk.metrics.data.MetricData> metrics)
      Specified by:
      export in interface io.opentelemetry.sdk.metrics.export.MetricExporter
    • flush

      public io.opentelemetry.sdk.common.CompletableResultCode flush()
      Specified by:
      flush in interface io.opentelemetry.sdk.metrics.export.MetricExporter
    • shutdown

      public io.opentelemetry.sdk.common.CompletableResultCode shutdown()
      Specified by:
      shutdown in interface io.opentelemetry.sdk.metrics.export.MetricExporter
    • getAggregationTemporality

      public io.opentelemetry.sdk.metrics.data.AggregationTemporality getAggregationTemporality(io.opentelemetry.sdk.metrics.InstrumentType instrumentType)
      Specified by:
      getAggregationTemporality in interface io.opentelemetry.sdk.metrics.export.AggregationTemporalitySelector