[ 
https://issues.apache.org/jira/browse/HBASE-14443?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15047209#comment-15047209
 ] 

Andrew Purtell edited comment on HBASE-14443 at 12/8/15 6:31 PM:
-----------------------------------------------------------------

bq. In terms of security, there are already tons of log lines with rowkeys in 
them.  They are part of split and region names so show up in compactions, 
moves, etc.

Bugs that should be fixed, we can replace with just the region hashes.

bq. Column family names also show up in various existing log lines.

Definitely bugs


was (Author: apurtell):
bq .In terms of security, there are already tons of log lines with rowkeys in 
them.  They are part of split and region names so show up in compactions, 
moves, etc.

Bugs that should be fixed, we can replace with just the region hashes.

bq. Column family names also show up in various existing log lines.

Definitely bugs

> Add request parameter to the TooSlow/TooLarge warn message of RpcServer
> -----------------------------------------------------------------------
>
>                 Key: HBASE-14443
>                 URL: https://issues.apache.org/jira/browse/HBASE-14443
>             Project: HBase
>          Issue Type: Improvement
>          Components: Operability, rpc
>    Affects Versions: 1.2.1
>            Reporter: Jianwei Cui
>            Assignee: Jianwei Cui
>            Priority: Minor
>         Attachments: HBASE-14443-trunk-v1.patch, HBASE-14443-trunk-v2.patch
>
>
> The RpcServer will log a warn message for TooSlow or TooLarge request as:
> {code}
>         logResponse(new Object[]{param},
>             md.getName(), md.getName() + "(" + param.getClass().getName() + 
> ")",
>             (tooLarge ? "TooLarge" : "TooSlow"),
>             status.getClient(), startTime, processingTime, qTime,
>             responseSize);
> {code}
> The RpcServer#logResponse will create the warn message as:
> {code}
> if (params.length == 2 && server instanceof HRegionServer &&
>         params[0] instanceof byte[] &&
>         params[1] instanceof Operation) {
>       ...
>       responseInfo.putAll(((Operation) params[1]).toMap());
>       ...
>     } else if (params.length == 1 && server instanceof HRegionServer &&
>         params[0] instanceof Operation) {
>       ...
>       responseInfo.putAll(((Operation) params[0]).toMap());
>       ...
>     } else {
>       ...
>     }
> {code}
> Because the parameter is always a protobuf message, not an instance of 
> Operation, the request parameter will not be added into the warn message. The 
> parameter is helpful to find out the problem, for example, knowing the 
> startRow/endRow is useful for a TooSlow scan. To improve the warn message, we 
> can transform the protobuf request message to corresponding Operation 
> subclass object by ProtobufUtil, so that it can be added the warn message. 
> Suggestion and discussion are welcomed.  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to