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

ASF GitHub Bot commented on ZOOKEEPER-2770:
-------------------------------------------

Github user zodvik commented on the issue:

    https://github.com/apache/zookeeper/pull/307
  
    > reasons why any given read or write operation may become slow: a software 
bug, a protocol problem, a hardware issue with the commit log(s), a network 
issue. If the problem is constant it is trivial to come to an understanding of 
the cause. However in order to diagnose intermittent problems we often don't 
know where, or when, to begin looking. We need some sort of timestamped 
indication of the problem
    
    IMO, slow query log is useful for those systems were the response times can 
vary due to type of query (long scans, improper index, poor query plan, etc.). 
For the type of issues mentioned, we can expect all operations to be impacted 
and fill up the log. 
    
    If the intent is to get an time stamp indication of the problem, a metric 
reporting mechanism will be more useful. If we have rolling interval 
percentiles (per command?) published either to `stat` or `jmx`, that would give 
a good visibility.



> ZooKeeper slow operation log
> ----------------------------
>
>                 Key: ZOOKEEPER-2770
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-2770
>             Project: ZooKeeper
>          Issue Type: Improvement
>            Reporter: Karan Mehta
>            Assignee: Karan Mehta
>            Priority: Major
>         Attachments: ZOOKEEPER-2770.001.patch, ZOOKEEPER-2770.002.patch, 
> ZOOKEEPER-2770.003.patch
>
>
> ZooKeeper is a complex distributed application. There are many reasons why 
> any given read or write operation may become slow: a software bug, a protocol 
> problem, a hardware issue with the commit log(s), a network issue. If the 
> problem is constant it is trivial to come to an understanding of the cause. 
> However in order to diagnose intermittent problems we often don't know where, 
> or when, to begin looking. We need some sort of timestamped indication of the 
> problem. Although ZooKeeper is not a datastore, it does persist data, and can 
> suffer intermittent performance degradation, and should consider implementing 
> a 'slow query' log, a feature very common to services which persist 
> information on behalf of clients which may be sensitive to latency while 
> waiting for confirmation of successful persistence.
> Log the client and request details if the server discovers, when finally 
> processing the request, that the current time minus arrival time of the 
> request is beyond a configured threshold. 
> Look at the HBase {{responseTooSlow}} feature for inspiration. 



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

Reply via email to