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/03 19:24:11 UTC

[jira] [Commented] (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:comment-tabpanel&focusedCommentId=15360650#comment-15360650 ] 

Konstantin Ryakhovskiy commented on HBASE-16142:
------------------------------------------------

as of my findings, the feature of custom events is not supported yet (see slide #32, Adding your own events):
http://www.oracle.com/technetwork/oem/soa-mgmt/con10912-javaflightrecorder-2342054.pdf
As of now, the API is not documented and marked as deprecated, means it might be changed in the future.
in the same document, the roadmap says that the flight recorder will be available in the future.
Should we anyway start with the blog-post, describe "how to", and prototype?


> 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
>            Priority: Minor
>              Labels: beginner
>
> 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)