phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Karan Mehta (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (PHOENIX-3655) Global Phoenix Client Metrics for PQS
Date Mon, 20 Aug 2018 21:14:00 GMT

     [ https://issues.apache.org/jira/browse/PHOENIX-3655?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Karan Mehta updated PHOENIX-3655:
---------------------------------
    Description: 
Phoenix Query Server runs a separate process compared to its thin client. Metrics collection
is currently done by PhoenixRuntime.java i.e. at Phoenix driver level. We need to expose Global
Client Metrics from PQS.

Implementation Used: 

GlobalClientMetrics will be instantiated as GlobalMetricImpl, when enabled. A shim layer
is provided to convert phoenix-metrics to hbase-metrics. All metrics are currently mapped
as gauges (PhoenixGlobalMetricGauge). A HBaseMetrics2HadoopMetricsAdapter object converts
hbase-metrics to hadoop-metrics2 and then pushed to configured sinks (based on properties
in hadoop-metrics2.properties files). Hadoop-metrics2 library pushes all metrics to JMX by
default.

All metrics definition [https://phoenix.apache.org/metrics.html]

*phoenix.client.metrics.tag* property can be configured for metrics filtering, which is defaulted
to *FAT_CLIENT*

Older Requirements (No longer valid)

We need the following

1. For every jdbc statement/prepared statement/ run by PQS , we need capability to collect
metrics at PQS level and push the data to external sink i.e. file, JMX , other external custom
sources. 
 2. Besides this global metrics could be periodically collected and pushed to the sink. 
 2. PQS can be configured to turn on metrics collection and type of collect ( runtime or global)
via hbase-site.xml
 3. Sink could be configured via an interface in hbase-site.xml.

  was:
Phoenix Query Server runs a separate process compared to its thin client. Metrics collection
is currently done by PhoenixRuntime.java i.e. at Phoenix driver level. We need the following

1. For every jdbc statement/prepared statement/ run by PQS , we need capability to collect
metrics at PQS level and push the data to external sink i.e. file, JMX , other external custom
sources. 
2. Besides this global metrics could be periodically collected and pushed to the sink. 
2. PQS can be configured to turn on metrics collection and type of collect ( runtime or global)
via hbase-site.xml
3. Sink could be configured via an interface in hbase-site.xml. 

All metrics definition https://phoenix.apache.org/metrics.html


> Global Phoenix Client Metrics for PQS
> -------------------------------------
>
>                 Key: PHOENIX-3655
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-3655
>             Project: Phoenix
>          Issue Type: New Feature
>    Affects Versions: 4.8.0
>            Reporter: Rahul Shrivastava
>            Assignee: Karan Mehta
>            Priority: Major
>             Fix For: 4.15.0
>
>         Attachments: MetricsforPhoenixQueryServerPQS.pdf, PHOENIX-3655.4.x-HBase-1.4.001.patch
>
>   Original Estimate: 240h
>  Remaining Estimate: 240h
>
> Phoenix Query Server runs a separate process compared to its thin client. Metrics collection
is currently done by PhoenixRuntime.java i.e. at Phoenix driver level. We need to expose Global
Client Metrics from PQS.
> Implementation Used: 
> GlobalClientMetrics will be instantiated as GlobalMetricImpl, when enabled. A shim layer
is provided to convert phoenix-metrics to hbase-metrics. All metrics are currently mapped
as gauges (PhoenixGlobalMetricGauge). A HBaseMetrics2HadoopMetricsAdapter object converts
hbase-metrics to hadoop-metrics2 and then pushed to configured sinks (based on properties
in hadoop-metrics2.properties files). Hadoop-metrics2 library pushes all metrics to JMX by
default.
> All metrics definition [https://phoenix.apache.org/metrics.html]
> *phoenix.client.metrics.tag* property can be configured for metrics filtering, which
is defaulted to *FAT_CLIENT*
> Older Requirements (No longer valid)
> We need the following
> 1. For every jdbc statement/prepared statement/ run by PQS , we need capability to collect
metrics at PQS level and push the data to external sink i.e. file, JMX , other external custom
sources. 
>  2. Besides this global metrics could be periodically collected and pushed to the sink.

>  2. PQS can be configured to turn on metrics collection and type of collect ( runtime
or global) via hbase-site.xml
>  3. Sink could be configured via an interface in hbase-site.xml.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Mime
View raw message