This is an automated email from the ASF dual-hosted git repository.

bridgetb pushed a commit to branch gh-pages
in repository https://gitbox.apache.org/repos/asf/drill.git


The following commit(s) were added to refs/heads/gh-pages by this push:
     new a79b24f  monitoring metrics doc updates
a79b24f is described below

commit a79b24f83b80a21fbf113423147e223857025ca9
Author: Bridget Bevens <[email protected]>
AuthorDate: Fri Nov 9 20:18:21 2018 -0800

    monitoring metrics doc updates
---
 _docs/performance-tuning/070-monitoring-metrics.md | 93 +++++++++++++++++-----
 1 file changed, 74 insertions(+), 19 deletions(-)

diff --git a/_docs/performance-tuning/070-monitoring-metrics.md 
b/_docs/performance-tuning/070-monitoring-metrics.md
index d53113b..5e2b374 100644
--- a/_docs/performance-tuning/070-monitoring-metrics.md
+++ b/_docs/performance-tuning/070-monitoring-metrics.md
@@ -1,10 +1,25 @@
 ---
 title: "Monitoring Metrics"
-date: 2016-07-14 18:41:09 UTC
+date: 2018-11-10
 parent: "Performance Tuning"
 --- 
 
-As of Drill 1.7, Drill uses JMX ([Java Management 
Extensions](https://docs.oracle.com/javase/tutorial/jmx/)) to monitor queries 
at runtime. JMX provides the architecture to dynamically manage and monitor 
applications. JMX collects Drill system-level metrics that you can access 
through the Metrics tab in the Drill Web Console or a remote JMX monitoring 
tool, such as JConsole or the VisualVM + MBeans plugin. The Web Console Metrics 
tab contains the collected metrics as tables, counters, hi [...]
+The Metrics page in the Drill Web UI 
(http(s)://<drillbit-ip-address>:8047/metrics) lists JVM and operating system 
metrics. You can use these metrics to debug the state of the cluster. The 
Drill-specific metrics are prepended with `drill`, for example 
`drill.fragments.running`. The other metrics relate specifically to the JVM.
+
+Drill uses JMX ([Java Management 
Extensions](https://docs.oracle.com/javase/tutorial/jmx/)) to monitor queries 
at runtime. JMX provides the architecture to dynamically manage and monitor 
applications. JMX collects Drill system-level metrics that you can see in the 
Metrics tab in the Drill Web UI or a remote JMX monitoring tool, such as 
JConsole or the VisualVM + MBeans plugin.   
+
+Metrics collected by JMX are divided into the following categories on the 
Metrics page in the Drill Web UI:  
+
+* **Gauges**  
+A gauge is an instantaneous measure of a value. See 
[Gauges]({{site.baseurl}}/docs/monitoring-metrics/#gauges).   
+* **Counters**  
+A counter is a snapshot of the count of metrics at a particular point in time. 
(A gauge for an 
[AtomicLong](https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/atomic/AtomicLong.html)
 instance.) See [Counters]({{site.baseurl}}/docs/monitoring-metrics/#counters). 
 
+* **Histograms**    
+A histogram measures the statistical distribution of values in a stream of 
data.  
+* **Meters**  
+A meter measures the rate of events over time, for example requests per 
second.  
+* **Timers**  
+A timer measures the rate that a particular piece of code is called and the 
distribution of its duration.  
 
 ## Remote Monitoring  
 You can enable the remote JMX Java feature to monitor a specific JVM from a 
remote location. You can enable remote JMX with or without authentication. See 
the [Java 
documentation](http://docs.oracle.com/javase/7/docs/technotes/guides/management/agent.html).
 
@@ -18,25 +33,65 @@ JMX metric collection is enabled, by default. You can 
disable the metrics option
 
 In `$DRILL_HOME/conf/drill-env.sh`, set the `drill.metrics.jmx.enabled` option 
to false through the `DRILLBIT_JAVA_OPTS` variable. Add the variable in 
`drill-env.sh` if it does not exist:
 
-       export DRILLBIT_JAVA_OPTS="$DRILLBIT_JAVA_OPTS 
-Ddrill.metrics.jmx.enabled=false"
+       export DRILLBIT_JAVA_OPTS="$DRILLBIT_JAVA_OPTS 
-Ddrill.metrics.jmx.enabled=false"   
+
+
+## Gauges 
+
+The following table lists the Drill-specific metrics in the Gauges section of 
the Metrics page: 
+
+| Metric                               | Description                           
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
              [...]
+|--------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 [...]
+| blocked.count                        | The number of threads that are 
blocked because they are waiting on a monitor   lock. This metric is useful for 
debugging Drill issues.                                                         
                                                                                
                                                                                
                                                                                
                     [...]
+| drill.fragments.running              | The number of query fragments 
currently running in the Drillbit.                                              
                                                                                
                                                                                
                                                                                
                                                                                
                      [...]
+| drill.allocator.root.used            | The amount of memory (in bytes) used 
by the internal memory allocator.                                               
                                                                                
                                                                                
                                                                                
                                                                                
               [...]
+| drill.allocator.root.peak            | The peak amount of memory (in bytes) 
used by the internal memory allocator.                                          
                                                                                
                                                                                
                                                                                
                                                                                
               [...]
+| drill.allocator.rpc.bit.control.peak | The maximum amount of bytes used 
across all   outgoing and incoming control connections for this Drillbit at 
this moment.                                                                    
                                                                                
                                                                                
                                                                                
                       [...]
+| drill.allocator.rpc.bit.control.used | The total number of bytes   currently 
used across all outgoing and incoming control connections for this   Drillbit.  
                                                                                
                                                                                
                                                                                
                                                                                
              [...]
+| drill.allocator.rpc.bit.data.peak    | The maximum amount of memory   used 
between all outgoing and incoming data connections for this Drillbit up   to 
this moment.                                                                    
                                                                                
                                                                                
                                                                                
                   [...]
+| drill.allocator.rpc.bit.data.used    | The total amount of memory used 
between all   outgoing and incoming data connections tor this Drillbit.         
                                                                                
                                                                                
                                                                                
                                                                                
                    [...]
+| drill.allocator.rpc.bit.user.peak    | The maximum amount of memory used 
across all incoming Drill client connections to this Drillbit up to this 
moment.                                                                         
                                                                                
                                                                                
                                                                                
                         [...]
+| drill.allocator.rpc.bit.user.used    | The total amount of memory used 
across all incoming Drill client connections to this Drillbit.                  
                                                                                
                                                                                
                                                                                
                                                                                
                    [...]
+| drill.allocator.huge.size            | Total size in bytes of huge (greater 
than 16MB) direct buffers allocated until now                                   
                                                                                
                                                                                
                                                                                
                                                                                
               [...]
+| drill.allocator.huge.count           | Number of allocations done for   
direct buffer of size greater than 16MB. Each of these allocation happens   
from OS which comes with an overhead rather from Netty's buffer pool.           
                                                                                
                                                                                
                                                                                
                       [...]
+| drill.allocator.normal.count         | Number of allocations done for   
direct buffer of size less than equal to 16MB. Each of these allocation   
happens from Netty's buffer pool. This counter is only updated in debug   
environment when asserts are enabled to avoid overhead for each allocation   
during normal execution.                                                        
                                                                                
                                  [...]
+| drill.allocator.normal.size          | Total size in bytes of normal   (less 
than and equal to 16MB) direct buffers allocated until now. This   counter is 
only updated in debug environment when asserts are enabled to   avoid overhead 
for each allocation during normal execution.                                    
                                                                                
                                                                                
                 [...]
+| drill.allocator.normal.size          | Total size in bytes of normal   (less 
than and equal to 16MB) direct buffers allocated until now. This   counter is 
only updated in debug environment when asserts are enabled to   avoid overhead 
for each allocation during normal execution.                                    
                                                                                
                                                                                
                 [...]
+| heap.used                            | The   amount of heap memory (in 
bytes) used by the JVM. 
+|                                                                              
                                                                                
                                                                                
                                                                                
                                                                                
                                                                                
              [...]
+|
+| non-heap.used                        | The   amount of non-heap memory (in 
bytes) used by the JVM.                                                         
                                                                                
                                                                                
                                                                                
                                                                                
                [...]
+| fd.usage                             | The   ratio of used file descriptors 
to total file descriptors on *nix systems.                                      
                                                                                
                                                                                
                                                                                
                                                                                
               [...]
+| direct.used                          | The   amount of direct memory (in 
bytes) used by the JVM. This metric is useful for   debugging Drill issues.     
                                                                                
                                                                                
                                                                                
                                                                                
                  [...]
+| runnable.count                       | The   number of threads executing an 
action in the JVM. This metric is useful for   debugging Drill issues.          
                                                                                
                                                                                
                                                                                
                                                                                
               [...]
+| waiting.count                        | The number of threads waiting to 
execute. Typically, threads waiting on other   threads to perform an action. 
This metric is useful for debugging Drill   issues.                             
                                                                                
                                                                                
                                                                                
                      [...]
+| load.avg                             | Returns the "recent cpu   usage" for 
the Drillbit process. This value is a double in the [0.0,1.0]   interval. A 
value of 0.0 means that none of the CPUs were running threads   from the 
Drillbit process during the recent period of time observed, while a   value of 
1.0 means that all CPUs were actively running threads from the   Drillbit 
process 100% of the time during the recent period being observed.   Threads 
from the Drillbit process includes t [...]
+| uptime                               | Total uptime of Drillbit JVM in 
miliseconds. See 
[getUptime()](https://docs.oracle.com/javase/7/docs/api/java/lang/management/RuntimeMXBean.html#getUptime()).
                                                                                
                                                                                
                                                                                
                                                      [...]
+
+
+## Counters  
+
+The following table lists the Drill-specific metrics in the Counters section 
of the Metrics page:   
+
+| Metric                  | Description                                        
                                           |
+|-------------------------|-----------------------------------------------------------------------------------------------|
+| drill.queries.running   | The number of queries running for which this 
drillbit is the Foreman.                         |
+| drill.queries.completed | The number of queries completed, canceled, or 
failed for which this drillbit was the Foreman. |   
+
+
+## Histograms
+
+The following table lists the Drill-specific metrics in the Histograms section 
of the Metrics page:  
 
-The following table lists the predefined Drill system-level metrics that you 
can view through a JMX monitoring tool or the Drill Web Console:  
+| Metric                      | Description                                    
                                                                                
                                                                                
                                                                                
                                                                   |
+|-----------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| drill.allocator.huge.hist   | Displays the distribution of allocation of 
huge buffers up to the current   time. Like count, it specifies number of huge 
buffer allocations completed so   far. Max/Min specifies maximum/minimum size 
in bytes of the huge buffer   allocated. Mean and other percentiles show the 
distribution of the huge   buffer allocation size in bytes.                  |
+| drill.allocator.normal.hist | Displays the distribution of allocation of the 
normal size buffers up to   the current time. Like count, it specifies the 
number of normal buffer   allocations completed so far. Max/Min specifies 
maximum/minimum size in bytes   of the normal buffer allocated. Mean and other 
percentiles show the   distribution of normal buffer allocation size in bytes. |
 
-|    Metric                 | Description                                      
                                                                                
                                   |
-|---------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|
-| drill.queries.running     | The   number of queries running for which this 
drillbit is the Foreman.                                                        
                                      |
-| drill.queries.completed   | The   number of queries completed, canceled, or 
failed for which this drillbit was   the Foreman.                               
                                     |
-| drill.fragments.running   | The   number of query fragments currently 
running in the drillbit.                                                        
                                          |
-| drill.allocator.root.used | The   amount of memory (in bytes) used by the 
internal memory allocator.                                                      
                                      |
-| drill.allocator.root.peak | The   peak amount of memory (in bytes) used by 
the internal memory allocator.                                                  
                                     |
-| heap.used                 | The   amount of heap memory (in bytes) used by 
the JVM.                                                                        
                                     |
-| non-heap.used             | The   amount of non-heap memory (in bytes) used 
by the JVM.                                                                     
                                    |
-| count                     | The   number of live threads, including daemon 
and non-daemon threads.                                                         
                                     |
-| fd.usage                  | The   ratio of used file descriptors to total 
file descriptors on *nix systems.                                               
                                      |
-|       direct.used         | The   amount of direct memory (in bytes) used by 
the JVM. This metric is useful for   debugging Drill issues.                    
                                   |
-| runnable.count            | The   number of threads executing an action in 
the JVM. This metric is useful for   debugging Drill issues.                    
                                     |
-| waiting.count             | The   number of threads waiting to execute. 
Typically, threads waiting on other   threads to perform an action. This metric 
is useful for debugging Drill   issues. |
-| blocked.count             | The   number of threads that are blocked because 
they are waiting on a monitor   lock. This metric is useful for debugging Drill 
issues.                            |
+## Meters  
+No Drill-specific meters.
 
 
 
+## Timers  
+No Drill-specific timers.
\ No newline at end of file

Reply via email to