Class AbstractGemLogger

java.lang.Object
io.perl.logger.impl.ResultsLogger
io.sbk.logger.impl.AbstractRWLogger
io.sbk.logger.impl.SystemLogger
io.sbk.logger.impl.CSVLogger
io.sbm.logger.impl.AbstractRamLogger
io.sbm.logger.impl.SbmPrometheusLogger
io.gem.logger.impl.AbstractGemLogger
All Implemented Interfaces:
GemLogger, GetArguments, io.perl.api.ReportLatencies, io.perl.logger.PerformanceLogger, io.perl.logger.Print, io.perl.logger.ReportLatency, io.sbk.logger.CountReaders, io.sbk.logger.CountRW, io.sbk.logger.CountWriters, io.sbk.logger.Logger, io.sbk.logger.ReadRequestsLogger, io.sbk.logger.RWLogger, io.sbk.logger.RWPrint, io.sbk.logger.SetRW, io.sbk.logger.WriteRequestsLogger, io.sbm.logger.CountConnections, io.sbm.logger.RamLogger

public abstract class AbstractGemLogger extends io.sbm.logger.impl.SbmPrometheusLogger implements GemLogger
Base class for GEM loggers built on top of SbmPrometheusLogger.

Provides the SBM metrics implementation and leaves argument exposure to subclasses via getOptionsArgs() and getParsedArgs() so orchestrators can pass appropriate CLI parameters when launching remote SBK instances.

  • Field Summary

    Fields inherited from class io.sbk.logger.impl.CSVLogger

    DISABLE_STRING, REGULAR_PRINT, TOTAL_PRINT
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a GEM logger backed by the SBM Prometheus logger.
  • Method Summary

    Modifier and Type
    Method
    Description
    abstract String[]
    to get options provided as arguments.
    abstract String[]
    to get Parsed options provided as arguments.
    protected String
    getTimeStamp(long arg0)
     
    final void
    print(int arg0, int arg1, int arg2, int arg3, long arg4, double arg5, long arg6, double arg7, long arg8, double arg9, long arg10, double arg11, long arg12, long arg13, long arg14, long arg15, long arg16, long arg17, long arg18, double arg19, long arg20, double arg21, double arg22, long arg23, long arg24, double arg25, double arg26, double arg27, long arg28, long arg29, long arg30, long arg31, long arg32, long arg33, long arg34, long[] arg35, long[] arg36)
     
    final void
    printTotal(int arg0, int arg1, int arg2, int arg3, long arg4, double arg5, long arg6, double arg7, long arg8, double arg9, long arg10, double arg11, long arg12, long arg13, long arg14, long arg15, long arg16, long arg17, long arg18, double arg19, long arg20, double arg21, double arg22, long arg23, long arg24, double arg25, double arg26, double arg27, long arg28, long arg29, long arg30, long arg31, long arg32, long arg33, long arg34, long[] arg35, long[] arg36)
     

    Methods inherited from class io.sbm.logger.impl.SbmPrometheusLogger

    addArgs, close, createPrometheusServer, decrementConnections, getMetricsConfig, getMetricsConfigStream, incrementConnections, open, parseArgs, print, printTotal

    Methods inherited from class io.sbm.logger.impl.AbstractRamLogger

    appendConnections, print, printTotal, recordReadRequests, recordReadTimeoutEvents, recordWriteRequests, recordWriteTimeoutEvents, reportLatency, reportLatencyRecord

    Methods inherited from class io.sbk.logger.impl.CSVLogger

    getCsvFile, isCsvEnable, isCsvWriterClosed, openCSV, writeToCSV

    Methods inherited from class io.sbk.logger.impl.SystemLogger

    recordLatency, recordsIndividualLatencies

    Methods inherited from class io.sbk.logger.impl.AbstractRWLogger

    appendResultString, appendWriteAndReadRequests, appendWriteAndReadRequestsPending, appendWriteAndReadTimeoutEvents, appendWritesAndReaders, decrementReaders, decrementWriters, getAction, getConfiguredMaxRequestIds, getLoggerConfigStream, getMaxReaderIDs, getMaxReadersCount, getMaxWriterIDs, getMaxWritersCount, getPrintingIntervalSeconds, getReadersCount, getStorageName, getTime, getWritersCount, incrementReaders, incrementWriters, isReadRequestsEnabled, isWriteRequestsEnabled, print, printTotal, setMaxReaders, setMaxReadersIds, setMaxWriters, setMaxWritersIds, setReaders, setWriters

    Methods inherited from class io.perl.logger.impl.ResultsLogger

    appendResultString, getMaxLatency, getMinLatency, getPercentileNames, getPercentiles, getPrefix, getTimeUnit, setMaxLatency, setMinLatency, setPercentiles, setPrefix, setTimeUnit

    Methods inherited from class Object

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

    Methods inherited from interface io.sbm.logger.CountConnections

    decrementConnections, incrementConnections

    Methods inherited from interface io.sbk.logger.Logger

    addArgs, close, open, parseArgs, reportFailure, setExceptionHandler

    Methods inherited from interface io.perl.logger.PerformanceLogger

    getMaxLatency, getMinLatency, getPercentiles, getPrintingIntervalSeconds, getTimeUnit, printTotal, recordLatency, recordsIndividualLatencies

    Methods inherited from interface io.perl.logger.Print

    print

    Methods inherited from interface io.sbk.logger.ReadRequestsLogger

    recordReadTimeoutEvents

    Methods inherited from interface io.perl.api.ReportLatencies

    reportLatency, reportLatencyRecord

    Methods inherited from interface io.sbk.logger.SetRW

    setMaxReaders, setMaxWriters, setReaders, setWriters

    Methods inherited from interface io.sbk.logger.WriteRequestsLogger

    recordWriteTimeoutEvents
  • Constructor Details

    • AbstractGemLogger

      public AbstractGemLogger()
      Creates a GEM logger backed by the SBM Prometheus logger.
  • Method Details

    • getOptionsArgs

      public abstract String[] getOptionsArgs()
      Description copied from interface: GetArguments
      to get options provided as arguments.
      Specified by:
      getOptionsArgs in interface GetArguments
      Returns:
      options provided as arguments.
    • getParsedArgs

      public abstract String[] getParsedArgs()
      Description copied from interface: GetArguments
      to get Parsed options provided as arguments.
      Specified by:
      getParsedArgs in interface GetArguments
      Returns:
      Parsed options provided as arguments.
    • getTimeStamp

      protected String getTimeStamp(long arg0)
    • print

      public final void print(int arg0, int arg1, int arg2, int arg3, long arg4, double arg5, long arg6, double arg7, long arg8, double arg9, long arg10, double arg11, long arg12, long arg13, long arg14, long arg15, long arg16, long arg17, long arg18, double arg19, long arg20, double arg21, double arg22, long arg23, long arg24, double arg25, double arg26, double arg27, long arg28, long arg29, long arg30, long arg31, long arg32, long arg33, long arg34, long[] arg35, long[] arg36)
      Specified by:
      print in interface io.sbk.logger.RWPrint
      Overrides:
      print in class io.sbk.logger.impl.AbstractRWLogger
    • printTotal

      public final void printTotal(int arg0, int arg1, int arg2, int arg3, long arg4, double arg5, long arg6, double arg7, long arg8, double arg9, long arg10, double arg11, long arg12, long arg13, long arg14, long arg15, long arg16, long arg17, long arg18, double arg19, long arg20, double arg21, double arg22, long arg23, long arg24, double arg25, double arg26, double arg27, long arg28, long arg29, long arg30, long arg31, long arg32, long arg33, long arg34, long[] arg35, long[] arg36)
      Specified by:
      printTotal in interface io.sbk.logger.RWLogger
      Overrides:
      printTotal in class io.sbk.logger.impl.AbstractRWLogger