From 38f135ed43d52097f3d831ab7ff555d0026a6cef Mon Sep 17 00:00:00 2001 From: ndimitry <18209884+ndimitry@users.noreply.github.com> Date: Tue, 26 Nov 2019 20:52:11 +0200 Subject: [PATCH] Possibility to add IPv6 as a parameter for http server (#450) * make it possible to pass IPv6 parameters for the host Signed-off-by: dnazaruk --- .../main/java/io/prometheus/jmx/WebServer.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/jmx_prometheus_httpserver/src/main/java/io/prometheus/jmx/WebServer.java b/jmx_prometheus_httpserver/src/main/java/io/prometheus/jmx/WebServer.java index ade7c0da..b508b9d1 100644 --- a/jmx_prometheus_httpserver/src/main/java/io/prometheus/jmx/WebServer.java +++ b/jmx_prometheus_httpserver/src/main/java/io/prometheus/jmx/WebServer.java @@ -14,16 +14,16 @@ public static void main(String[] args) throws Exception { System.exit(1); } - String[] hostnamePort = args[0].split(":"); - int port; InetSocketAddress socket; - - if (hostnamePort.length == 2) { - port = Integer.parseInt(hostnamePort[1]); - socket = new InetSocketAddress(hostnamePort[0], port); - } else { - port = Integer.parseInt(hostnamePort[0]); + int colonIndex = args[0].lastIndexOf(':'); + + if (colonIndex < 0) { + int port = Integer.parseInt(args[0]); socket = new InetSocketAddress(port); + } else { + int port = Integer.parseInt(args[0].substring(colonIndex + 1)); + String host = args[0].substring(0, colonIndex); + socket = new InetSocketAddress(host, port); } new BuildInfoCollector().register();