You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Konstantin Ryakhovskiy (JIRA)" <ji...@apache.org> on 2016/07/11 07:50:11 UTC

[jira] [Updated] (HBASE-16142) Trigger JFR session when under duress -- e.g. backed-up request queue count -- and dump the recording to log dir

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

Konstantin Ryakhovskiy updated HBASE-16142:
-------------------------------------------
    Attachment: HBASE-16142.master.001.patch

default JFR tracing added as java-class with main method

> Trigger JFR session when under duress -- e.g. backed-up request queue count -- and dump the recording to log dir
> ----------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-16142
>                 URL: https://issues.apache.org/jira/browse/HBASE-16142
>             Project: HBase
>          Issue Type: Task
>          Components: Operability
>            Reporter: stack
>            Assignee: Konstantin Ryakhovskiy
>            Priority: Minor
>              Labels: beginner
>         Attachments: HBASE-16142.master.001.patch
>
>
> Chatting today w/ a mighty hbase operator on how to figure what is happening during transitory latency spike or any other transitory 'weirdness' in a server, the idea came up that a java flight recording during a spike would include a pretty good picture of what is going on during the time of duress (more ideal would be a trace of the explicit slow queries showing call stack with timings dumped to a sink for later review; i.e. trigger an htrace when a query is slow...).
> Taking a look, programmatically triggering a JFR recording seems doable, if awkward (MBean invocations). There is even a means of specifying 'triggers' based off any published mbean emission -- e.g. a query queue count threshold -- which looks nice. See https://community.oracle.com/thread/3676275?start=0&tstart=0 and https://docs.oracle.com/javacomponents/jmc-5-4/jfr-runtime-guide/run.htm#JFRUH184
> This feature could start out as a blog post describing how to do it for one server. A plugin on Canary that looks at mbean values and if over a configured threshold, triggers a recording remotely could be next. Finally could integrate a couple of triggers that fire when issue via the trigger mechanism.
> Marking as beginner feature.



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