# Functions

CollocationTypeTag returns a collocation type tag.
GetAndStartSoftReservationCompactionTimer returns a SoftReservationCompactionTimer which starts counting the time immediately.
HostTag returns a host tag.
IncrementSingleAzDynamicAllocationPackFailure increments a counter for a zone we fail to schedule in, this allows us to keep track of exactly which zones are over utilised.
InstanceGroupTag returns an instance group tag.
NewCacheMetrics creates a new CacheMetrics object.
NewQueueReporter returns a new ResourceUsageReporter instance.
NewResourceReporter returns a new ResourceUsageReporter instance.
NewResourceReservationMetrics creates a ResourceReservationMetrics.
NewScheduleTimer creates a new ScheduleTimer.
NewSoftReservationMetrics creates a SoftReservationMetrics.
NewSparkPodConditions creates a new SparkPodConditions instance.
NewWasteMetricsReporter returns an instance of WasteMetricsReporter.
OutcomeTag returns an outcome tag.
PathTag returns a url tag.
QueueIndexTag returns a queue index tag.
RegisterInformerDelayMetrics registers an event handler to the pod informer to report delays.
ReportCrossZoneMetric reports metric about cross AZ traffic between pods of a spark application.
ReportInitialDriverExecutorCollocationMetric reports a metric about whether the driver is collocated with executors.
ReportInitialNodeCountMetrics reports two metrics used to reason about how fragmented a Spark app is.
ReportPackingEfficiency report packing efficiency metrics for a single packing result.
ReportTimeToFirstBindMetrics reports how long it takes between a reservation being created and pods being bound to said reservation.
SparkRoleTag returns a spark role tag.
StatusCodeTag returns a status code tag.
VerbTag returns a request verb tag.
ZoneTag returns a zone tag.

# Structs

CacheMetrics reports metrics for resource reservation and demand caches.
PendingPodQueueReporter reports queue sizes periodically.
PodTags represent a tag set for a lifecycle event for a spark pod.
ResourceReservationMetrics reports metrics on the ResourceReservationManager passed.
ResourceUsageReporter reports resource usage periodically.
ScheduleTimer marks pod scheduling time metrics.
SoftReservationCompactionTimer tracks and reports the time it takes to compact soft reservations to resource reservations.
SoftReservationMetrics reports metrics on the SoftReservationStore passed.
WasteMetricsReporter tracks and reports on scheduler latencies between demand creation and pod scheduling times in granular phases so we can keep track of any delays.

# Type aliases

PodHistograms keep the count and duration of lifecycle states of a spark pod.
SparkPodConditions provides spark related lifecycle events from pod conditions.