You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2017/05/01 07:09:04 UTC
[jira] [Commented] (PHOENIX-3655) Metrics for PQS
[ https://issues.apache.org/jira/browse/PHOENIX-3655?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15990636#comment-15990636 ]
ASF GitHub Bot commented on PHOENIX-3655:
-----------------------------------------
GitHub user rahulsIOT opened a pull request:
https://github.com/apache/phoenix/pull/242
PQS metrics - https://issues.apache.org/jira/browse/PHOENIX-3655
Phoenix Query Server metrics
https://issues.apache.org/jira/browse/PHOENIX-3655
The following properties is added along with the defaults
1. "phoenix.query.server.metrics" - default is true ( means pqs will collect metrics by default )
2. "phoenix.query.server.metrics.report.interval.ms" - default is 30 sec ( every 30 sec, the global metrics will be output to sink )
3. "phoenix.query.server.metrics.type.of.sink" - default is file ( other option is slf4j)
4. "phoenix.query.server.filesink.filename" - Filename if using fileSink (default is /tmp/pqsSinkFile)
if user setup "phoenix.query.server.metrics" in hbase-site.xml to true, we add the following properties to JDBC connection (QueryServices.COLLECT_REQUEST_LEVEL_METRICS= true). The starts the metrics collect at request level.
There are two types of metrics
1. Global - This metrics is collect every interval and pushed to sink ( File or Slf4j). Apart from this, it is also exposed in JMX via Mbeans.
2. Request - These metrics is collected at statement and connection close level. Once collected, it is pushed to the sink. These metrics are not exposed via JMX as metrics are for specific table requests. For requests level metrics, we have file and Slf4j ( LOG) as types of sink. So, the metrics will be pushed to a specified file or log file .
For details on Phoenix Metrics - refer - https://phoenix.apache.org/metrics.html
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/rahulsIOT/phoenix PQSMetrics
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/phoenix/pull/242.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #242
----
commit a137e44e6797fd7826266a2919d543fabc7d1d76
Author: Rahul <rs...@salesforce.com>
Date: 2017-02-27T22:55:41Z
added initial checkin
commit f9b3a40e0832e9da2f405bf20bfaf2d14f598c04
Author: Rahul <rs...@salesforce.com>
Date: 2017-02-27T22:16:36Z
Initial structure for metrics collection
Signed-off-by: Rahul <rs...@salesforce.com>
commit ba84cf8d2af962bacfc9c0475511effdad0a1b50
Author: Rahul <rs...@salesforce.com>
Date: 2017-04-30T18:10:08Z
rearranged packages, renamed files, changed implementation of different sink type
commit aad14a052e2281a5e4d30dc1e86fe78d86a00db1
Author: Rahul <rs...@salesforce.com>
Date: 2017-04-30T18:12:40Z
phoenix-core/src/main/java/org/apache/phoenix/monitoring/PhoenixQueryServerSink.java
commit 590562c01d467a1d683a9b4531c5a8f5517fe497
Author: Rahul <rs...@salesforce.com>
Date: 2017-04-30T18:18:12Z
removed queryservicesoptions.java
commit 0a36463eeb124d778a79a249499235e5a92e7e2f
Author: Rahul <rs...@salesforce.com>
Date: 2017-04-30T18:19:48Z
removed space from file
commit f94dd5aed145bfaa217920e7aac0664307ab7e9d
Author: Rahul <rs...@salesforce.com>
Date: 2017-04-30T18:21:29Z
removed space
commit 29384740540343e826b099d55919064f4ab6f619
Author: Rahul <rs...@salesforce.com>
Date: 2017-05-01T06:46:20Z
final check for pull request
commit 6ac4ca982e22cc620232edbe6872d89233a5189d
Author: Rahul <rs...@salesforce.com>
Date: 2017-05-01T07:07:49Z
making the previous file identical to master as no changes is meant to be done for this file
----
> 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
> Environment: Linux 3.13.0-107-generic kernel, v4.9.0-HBase-0.98
> Reporter: Rahul Shrivastava
> Fix For: 4.9.0
>
> Attachments: MetricsforPhoenixQueryServerPQS.pdf
>
> 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 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
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)