java.lang.Object
org.apache.hadoop.yarn.server.nodemanager.containermanager.monitor.ContainerMetrics
All Implemented Interfaces:
org.apache.hadoop.metrics2.MetricsSource

@Private @Metrics(context="container") public class ContainerMetrics extends Object implements org.apache.hadoop.metrics2.MetricsSource
  • Field Details

    • PMEM_LIMIT_METRIC_NAME

      public static final String PMEM_LIMIT_METRIC_NAME
      See Also:
    • VMEM_LIMIT_METRIC_NAME

      public static final String VMEM_LIMIT_METRIC_NAME
      See Also:
    • VCORE_LIMIT_METRIC_NAME

      public static final String VCORE_LIMIT_METRIC_NAME
      See Also:
    • PMEM_USAGE_METRIC_NAME

      public static final String PMEM_USAGE_METRIC_NAME
      See Also:
    • PMEM_USAGE_QUANTILES_NAME

      public static final String PMEM_USAGE_QUANTILES_NAME
      See Also:
    • LAUNCH_DURATION_METRIC_NAME

      public static final String LAUNCH_DURATION_METRIC_NAME
      See Also:
    • LOCALIZATION_DURATION_METRIC_NAME

      public static final String LOCALIZATION_DURATION_METRIC_NAME
      See Also:
    • pMemMBsStat

      @Metric public org.apache.hadoop.metrics2.lib.MutableStat pMemMBsStat
    • pMemMBQuantiles

      @Metric public org.apache.hadoop.metrics2.lib.MutableQuantiles pMemMBQuantiles
    • cpuCoreUsagePercent

      @Metric public org.apache.hadoop.metrics2.lib.MutableStat cpuCoreUsagePercent
    • cpuCoreUsagePercentQuantiles

      @Metric public org.apache.hadoop.metrics2.lib.MutableQuantiles cpuCoreUsagePercentQuantiles
    • milliVcoresUsed

      @Metric public org.apache.hadoop.metrics2.lib.MutableStat milliVcoresUsed
    • pMemLimitMbs

      @Metric public org.apache.hadoop.metrics2.lib.MutableGaugeInt pMemLimitMbs
    • vMemLimitMbs

      @Metric public org.apache.hadoop.metrics2.lib.MutableGaugeInt vMemLimitMbs
    • cpuVcoreLimit

      @Metric public org.apache.hadoop.metrics2.lib.MutableGaugeInt cpuVcoreLimit
    • launchDurationMs

      @Metric public org.apache.hadoop.metrics2.lib.MutableGaugeLong launchDurationMs
    • localizationDurationMs

      @Metric public org.apache.hadoop.metrics2.lib.MutableGaugeLong localizationDurationMs
    • startTime

      @Metric public org.apache.hadoop.metrics2.lib.MutableGaugeLong startTime
    • finishTime

      @Metric public org.apache.hadoop.metrics2.lib.MutableGaugeLong finishTime
    • exitCode

      @Metric public org.apache.hadoop.metrics2.lib.MutableGaugeInt exitCode
    • PROCESSID_INFO

      public static final org.apache.hadoop.metrics2.MetricsInfo PROCESSID_INFO
  • Method Details

    • forContainer

      public static ContainerMetrics forContainer(org.apache.hadoop.yarn.api.records.ContainerId containerId, long flushPeriodMs, long delayMs)
    • getContainerMetrics

      public static ContainerMetrics getContainerMetrics(org.apache.hadoop.yarn.api.records.ContainerId containerId)
    • getMetrics

      public void getMetrics(org.apache.hadoop.metrics2.MetricsCollector collector, boolean all)
      Specified by:
      getMetrics in interface org.apache.hadoop.metrics2.MetricsSource
    • finished

      public void finished(boolean unregisterWithoutDelay)
    • recordMemoryUsage

      public void recordMemoryUsage(int memoryMBs)
    • recordCpuUsage

      public void recordCpuUsage(int totalPhysicalCpuPercent, int milliVcoresUsed)
    • recordProcessId

      public void recordProcessId(String processId)
    • recordResourceLimit

      public void recordResourceLimit(int vmemLimit, int pmemLimit, int cpuVcores)
    • recordStateChangeDurations

      public void recordStateChangeDurations(long launchDuration, long localizationDuration)
    • recordStartTime

      public void recordStartTime(long startTime)
    • recordFinishTimeAndExitCode

      public void recordFinishTimeAndExitCode(long finishTime, int exitCode)