[
https://issues.apache.org/jira/browse/HBASE-19722?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16491026#comment-16491026
]
Andrew Purtell edited comment on HBASE-19722 at 5/25/18 5:16 PM:
-----------------------------------------------------------------
bq. By using lossy count to maintain meters, at most 1 / e meters will be kept
(e is error rate) e.g. when e is 0.02 by default, at most 50 Clients request
metrics will be kept
Oh, this is a nice solution.
So we sweep the lossy counts at every update? Can this be done from a periodic
chore instead to lessen the per-update cost?
Can {{e}} be made configurable by site configuration? Ideally the operator
could be able to set the number of expected top-N, e.g. N = 100
New files TestLossyCounting.java and LossyCounting.java need an ASF header.
Cut and paste from any file that already has one.
Please fix reported checkstyle nits.
{noformat}
./hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/MetaTableMetrics.java:146:
private void
registerLossyCountingMeterIfNotPresent(ObserverContext<RegionCoprocessorEnvironment>
e,: Line is longer than 100 characters (found 104). [LineLength]
./hbase-server/src/main/java/org/apache/hadoop/hbase/util/LossyCounting.java:71:
* @return: At-clause should have a non-empty description.
[NonEmptyAtclauseDescription]
./hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestLossyCounting.java:9:import
static org.junit.Assert.assertEquals;: Wrong order for
'org.junit.Assert.assertEquals' import. [ImportOrder]
{noformat}
That test failure in precommit doesn't look related.
was (Author: apurtell):
bq. By using lossy count to maintain meters, at most 1 / e meters will be kept
(e is error rate) e.g. when e is 0.02 by default, at most 50 Clients request
metrics will be kept
Oh, this is a nice solution.
So we sweep the lossy counts at every update? Can this be done from a periodic
chore instead to lessen the per-update cost?
Can {{e}} be made configurable by site configuration?
New files TestLossyCounting.java and LossyCounting.java need an ASF header.
Cut and paste from any file that already has one.
Please fix reported checkstyle nits.
{noformat}
./hbase-server/src/main/java/org/apache/hadoop/hbase/coprocessor/MetaTableMetrics.java:146:
private void
registerLossyCountingMeterIfNotPresent(ObserverContext<RegionCoprocessorEnvironment>
e,: Line is longer than 100 characters (found 104). [LineLength]
./hbase-server/src/main/java/org/apache/hadoop/hbase/util/LossyCounting.java:71:
* @return: At-clause should have a non-empty description.
[NonEmptyAtclauseDescription]
./hbase-server/src/test/java/org/apache/hadoop/hbase/util/TestLossyCounting.java:9:import
static org.junit.Assert.assertEquals;: Wrong order for
'org.junit.Assert.assertEquals' import. [ImportOrder]
{noformat}
That test failure in precommit doesn't look related.
> Implement a meta query statistics metrics source
> ------------------------------------------------
>
> Key: HBASE-19722
> URL: https://issues.apache.org/jira/browse/HBASE-19722
> Project: HBase
> Issue Type: Sub-task
> Reporter: Andrew Purtell
> Assignee: Xu Cang
> Priority: Major
> Attachments: HBASE-19722.branch-1.v001.patch,
> HBASE-19722.master.010.patch, HBASE-19722.master.011.patch,
> HBASE-19722.master.012.patch, HBASE-19722.master.013.patch
>
>
> Implement a meta query statistics metrics source, created whenever a
> regionserver starts hosting meta, removed when meta hosting moves. Provide
> views on top tables by request counts, top meta rowkeys by request count, top
> clients making requests by their hostname.
> Can be implemented as a coprocessor.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)