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 71853200B32 for ; Thu, 23 Jun 2016 12:15:14 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 70410160A59; Thu, 23 Jun 2016 10:15:14 +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 BA3CE160A58 for ; Thu, 23 Jun 2016 12:15:13 +0200 (CEST) Received: (qmail 4614 invoked by uid 500); 23 Jun 2016 10:15:13 -0000 Mailing-List: contact issues-help@flink.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@flink.apache.org Delivered-To: mailing list issues@flink.apache.org Received: (qmail 4605 invoked by uid 99); 23 Jun 2016 10:15:12 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Jun 2016 10:15:12 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 74601C103B for ; Thu, 23 Jun 2016 10:15:12 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -5.448 X-Spam-Level: X-Spam-Status: No, score=-5.448 tagged_above=-999 required=6.31 tests=[KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.428] autolearn=disabled Received: from mx2-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id qATDwyM-ec5H for ; Thu, 23 Jun 2016 10:15:10 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx2-lw-eu.apache.org (ASF Mail Server at mx2-lw-eu.apache.org) with SMTP id EB81F5F4E8 for ; Thu, 23 Jun 2016 10:15:09 +0000 (UTC) Received: (qmail 4527 invoked by uid 99); 23 Jun 2016 10:15:09 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 Jun 2016 10:15:09 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id DA810E38B1; Thu, 23 Jun 2016 10:15:08 +0000 (UTC) From: zentol To: issues@flink.incubator.apache.org Reply-To: issues@flink.incubator.apache.org References: In-Reply-To: Subject: [GitHub] flink pull request #2145: [FLINK-4087] [metrics] Improved JMX port handling Content-Type: text/plain Message-Id: <20160623101508.DA810E38B1@git1-us-west.apache.org> Date: Thu, 23 Jun 2016 10:15:08 +0000 (UTC) archived-at: Thu, 23 Jun 2016 10:15:14 -0000 Github user zentol commented on a diff in the pull request: https://github.com/apache/flink/pull/2145#discussion_r68209393 --- Diff: flink-core/src/main/java/org/apache/flink/metrics/reporter/JMXReporter.java --- @@ -73,10 +86,61 @@ public JMXReporter() { // ------------------------------------------------------------------------ @Override - public void open(Configuration config) {} + public void open(Configuration config) { + this.jmxServer = startJmxServer(config); + } + + private static JMXServer startJmxServer(Configuration config) { + JMXServer jmxServer; + + String portRange = config.getString(KEY_METRICS_JMX_PORT, "9010-9025"); + String[] ports = portRange.split("-"); + + if (ports.length == 0 || ports.length > 2) { + throw new IllegalArgumentException("JMX port range was configured incorrectly. " + + "Expected: [-] Configured: " + portRange); + } + + if (ports.length == 1) { //single port was configured + int port = Integer.parseInt(ports[0]); + jmxServer = new JMXServer(port); + try { + jmxServer.start(); + } catch (IOException e) { + throw new RuntimeException("Could not start JMX server on port " + port + "."); + } + return jmxServer; + } else { //port range was configured + int start = Integer.parseInt(ports[0]); + int end = Integer.parseInt(ports[1]); + while (true) { + try { + jmxServer = new JMXServer(start); + jmxServer.start(); + LOG.info("Starting JMX on port " + start + "."); --- End diff -- I can add it as a debug statement, but can that information not be inferred from the configured ports and the final port used? (all configured ports < final port) --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastructure@apache.org or file a JIRA ticket with INFRA. ---