anchor.diff:  |DiskCleanupTask
   |-
   
  -|genie.tasks.diskCleanup.unableToGetJobs.rate
  -|Counts the number of times a local job folder is encountered during cleanup and the corresponding job record in the database cannot be found
  -|count
  -|DiskCleanupTask
  -|-
  -
   |genie.tasks.diskCleanup.unableToDeleteJobsDir.rate
   |Counts the number of times a local job folder could not be deleted
   |count
   |DiskCleanupTask
   |-
   
  -|genie.services.jobResolver.clusterCommandQuery.timer
  -|Time taken to query the database and find clusters and commands matching the supplied criteria.
  -|nanoseconds
  -|JobResolverServiceImpl
  -|status, exceptionClass
  -
  -|genie.services.jobResolver.loadBalancer.counter
  -|Counter for cluster load balancer algorithms invocations
  -|count
  -|JobResolverServiceImpl
  -|class, status, clusterName, clusterId, loadBalancerClass
  -
  -|genie.services.jobResolver.resolve.timer
  -|Time taken to completely resolve the job
  -|nanoseconds
  -|JobResolverServiceImpl
  -|status, exceptionClass, saved
  -
  -|genie.services.jobResolver.selectApplications.timer
  -|Time taken to retrieve applications information for this task
  -|nanoseconds
  -|JobResolverServiceImpl
  -|status, exceptionClass
  -
  -|genie.services.jobResolver.selectCluster.timer
  -|Time taken to select a cluster using the load balancing strategy
  -|nanoseconds
  -|JobResolverServiceImpl
  -|status, exceptionClass
  -
  -|genie.services.jobResolver.selectCluster.noneSelected.counter
  -|Number of times the cluster load balancing terminated without selecting a cluster
  -|count
  -|JobResolverServiceImpl
  -|-
  -
  -|genie.services.jobResolver.selectCluster.noneFound.counter
  -|Number of times the criteria for cluster selection does not match any cluster
  -|count
  -|JobResolverServiceImpl
  -|-
  -
  -|genie.services.jobResolver.selectCommand.timer
  -|Time taken to resolve a command based on criteria and cluster
  -|nanoseconds
  -|JobResolverServiceImpl
  -|status, exceptionClass
  -
  -|genie.health.endpoint.timer
  -|Time taken for the Health endpoint to collect and aggregate state from health indicators
  -|nanoseconds
  -|HealthCheckMetricsAspect
  -|status, exceptionClass
  -
  -|genie.health.indicator.timer
  -|Time taken for each health indicator to report its status
  -|nanoseconds
  -|HealthCheckMetricsAspect
  -|status, exceptionClass, healthIndicatorClass
  -
  -|genie.health.indicator.counter
  -|Counter for of calls each health indicator tagged by reported status
  -|count
  -|HealthCheckMetricsAspect
  -|status, exceptionClass, healthIndicatorName
  -
  -|genie.health.failure.counter
  -|Counter for calls each health indicator that reports status other than UP
  -|count
  -|HealthCheckMetricsAspect
  -|status, exceptionClass, healthIndicatorName
  -
  -|genie.services.agentJob.handshake.counter
  -|Counter for calls to the 'handshake' protocol of the Genie Agent Job Service
  -|count
  -|AgentJobServiceImpl
  -|status, exceptionClass, agentVersion, agentHost, handshakeDecision
  +|genie.tasks.diskCleanup.unableToGetJobs.rate
  +|Counts the number of times a local job folder is encountered during cleanup and the corresponding job record in the
  +database cannot be found
  +|count
  +|DiskCleanupTask
  +|-
   
   |genie.user.active-jobs.gauge
   |Number of active jobs tagged with owner user.
  
positive.code: |CacheGenieFileTransferService
  |-
  
  |genie.jobs.file.cache.missRate
  |File cache miss ratio
  |ratio
  |CacheGenieFileTransferService
  |-
  
  |genie.jobs.file.cache.loadExceptionRate
  |File cache loading exception ratio
  |ratio
  |CacheGenieFileTransferService
  |-
  
  |genie.jobs.coordination.timer
  |Time taken to initialize the job database record and resolve applications, command, cluster, based on criteria and load balancing strategy.
  |nanoseconds
  |JobCoordinatorServiceImpl
  |status, exceptionClass
  
  |genie.jobs.submit.localRunner.setJobEnvironment.timer
  |Time taken to persist the job runtime information in the database
  |nanoseconds
  |JobCoordinatorServiceImpl
  |status, exceptionClass
  
  |genie.jobs.running.gauge
  |Number of jobs currently running locally
  |amount
  |JobStateServiceImpl
  |-
  
  |genie.jobs.active.gauge
  |Number of jobs currently active locally
  |amount
  |JobStateServiceImpl
  |-
  
  |genie.jobs.memory.used.gauge
  
negative.code: |SAMLUserDetailsServiceImpl
  |-
  
  |genie.services.agentJob.handshake.counter
  |Counter for calls to the 'handshake' protocol of the Genie Agent Job Service
  |count
  |AgentJobServiceImpl
  |status, exceptionClass, agentVersion, agentHost, handshakeDecision
  
  |genie.services.jobResolver.clusterCommandQuery.timer
  |Time taken to query the database and find clusters and commands matching the supplied criteria.
  |nanoseconds
  |JobResolverServiceImpl
  |status, exceptionClass
  
  |genie.services.jobResolver.loadBalancer.counter
  |Counter for cluster load balancer algorithms invocations
  |count
  |JobResolverServiceImpl
  |class, status, clusterName, clusterId, loadBalancerClass
  
  |genie.services.jobResolver.resolve.timer
  |Time taken to completely resolve the job
  |nanoseconds
  |JobResolverServiceImpl
  |status, exceptionClass, saved
  
  |genie.services.jobResolver.selectApplications.timer
  |Time taken to retrieve applications information for this task
  |nanoseconds
  |JobResolverServiceImpl
  |status, exceptionClass
  
  |genie.services.jobResolver.selectCluster.noneFound.counter
  |Number of times the criteria for cluster selection does not match any cluster
  |count
  |JobResolverServiceImpl
  |-
  
  |genie.services.jobResolver.selectCluster.noneSelected.counter
  |Number of times the cluster load balancing terminated without selecting a cluster
  |count
  |JobResolverServiceImpl
  |-
  
  |genie.services.jobResolver.selectCluster.timer
  |Time taken to select a cluster using the load balancing strategy
  |nanoseconds
  |JobResolverServiceImpl
  |status, exceptionClass
  
  |genie.services.jobResolver.selectCommand.timer
  |Time taken to resolve a command based on criteria and cluster
  |nanoseconds
  |JobResolverServiceImpl
  |status, exceptionClass
  
  |genie.tasks.clusterChecker.failedHealthCheck.counter
  |Counts the number of time the leader retrieved health status of a remote node and one of the (non-ignored) indicators
  had a status different than UP
  |count
  |ClusterCheckerTask
  |host, healthIndicator, healthStatus
  
  |genie.tasks.clusterChecker.invalidResponse.counter
  |Counts the number of time the leader retrieved health status of a remote node and failed to parse the response
  |count
  |ClusterCheckerTask
  |host
  
  |genie.tasks.clusterChecker.jobsMarkedFailed.counter
  |Number of jobs marked as "lost" due to a consistent failure to contact the Genie node hosting them
  |count
  |ClusterCheckerTask
  |status, host, exceptionClass
  
  |genie.tasks.clusterChecker.unhealthyHosts.gauge
  |Number of Genie nodes that the leader has currently marked unhealthy
  |Current amount
  |ClusterCheckerTask
  