Skip to content

Monitoring

David Phillips edited this page Oct 5, 2016 · 1 revision

JMX

Presto exposes a huge number of metrics via JMX. This list provides a starting point for things you might want to monitor.

JVM

  • Heap size: java.lang:type=Memory:HeapMemoryUsage.used
  • Thread count: java.lang:type=Threading:ThreadCount

Presto

  • Active nodes: com.facebook.presto.failureDetector:name=HeartbeatFailureDetector:ActiveCount
  • Active queries: com.facebook.presto.execution:name=QueryManager:RunningQueries
  • Failed queries (all): com.facebook.presto.execution:name=QueryManager:FailedQueries.FiveMinute.Count
  • Failed queries (internal): com.facebook.presto.execution:name=QueryManager:InternalFailures.FiveMinute.Count
  • Failed queries (external): com.facebook.presto.execution:name=QueryManager:ExternalFailures.FiveMinute.Count
  • Failed queries (user): com.facebook.presto.execution:name=QueryManager:UserErrorFailures.FiveMinute.Count
  • Input data bytes: com.facebook.presto.execution:name=TaskManager:InputDataSize.FiveMinute.Count
  • Input rows: com.facebook.presto.execution:name=TaskManager:InputPositions.FiveMinute.Count
  • Queries started: com.facebook.presto.execution:name=QueryManager:StartedQueries.FiveMinute.Count
  • Execution latency (P50): com.facebook.presto.execution:name=querymanager:ExecutionTime.FiveMinutes.P50
  • Free memory (general pool): com.facebook.presto.memory:type=ClusterMemoryPool:name=general:FreeDistributedBytes
  • Input data rate (P90): com.facebook.presto.execution:name=QueryManager:WallInputBytesRate.FiveMinutes.P90

Hive Connector

  • HDFS NameNode latency (P99): com.facebook.presto.hive:name=NamenodeStats:ListLocatedStatus.Time.OneMinute.P99

Notes

Many of these metrics are actually a complex metric object such as a CounterStat that has a collection of related metrics. For example, InputPositions has InputPositions.TotalCount, InputPositions.OneMinute.Count, etc.

Clone this wiki locally