Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 2F06C200B2F for ; Sun, 3 Jul 2016 21:47:13 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 25658160A6B; Sun, 3 Jul 2016 19:47:13 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 6D8A2160A50 for ; Sun, 3 Jul 2016 21:47:12 +0200 (CEST) Received: (qmail 88073 invoked by uid 500); 3 Jul 2016 19:47:11 -0000 Mailing-List: contact issues-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list issues@hbase.apache.org Received: (qmail 88042 invoked by uid 99); 3 Jul 2016 19:47:11 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 03 Jul 2016 19:47:11 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id 2721A2C02AA for ; Sun, 3 Jul 2016 19:47:11 +0000 (UTC) Date: Sun, 3 Jul 2016 19:47:11 +0000 (UTC) From: "Konstantin Ryakhovskiy (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Comment Edited] (HBASE-16142) Trigger JFR session when under duress -- e.g. backed-up request queue count -- and dump the recording to log dir MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Sun, 03 Jul 2016 19:47:13 -0000 [ https://issues.apache.org/jira/browse/HBASE-16142?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15360650#comment-15360650 ] Konstantin Ryakhovskiy edited comment on HBASE-16142 at 7/3/16 7:46 PM: ------------------------------------------------------------------------ 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 dynamic enablement of flight recorder will be available in the future. Should we anyway start with the blog-post, describe "how to", and prototype? was (Author: ryakhovskiy.k): 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)