001package io.prometheus.jmx; 002 003import io.prometheus.client.exporter.MetricsServlet; 004import java.io.FileReader; 005import org.eclipse.jetty.server.Server; 006import org.eclipse.jetty.servlet.ServletContextHandler; 007import org.eclipse.jetty.servlet.ServletHolder; 008 009public class WebServer { 010 public static void main(String[] args) throws Exception { 011 if (args.length < 2) { 012 System.err.println("Usage: WebServer <port> <json configuration file>"); 013 System.exit(1); 014 } 015 JmxCollector jc = new JmxCollector(new FileReader(args[1])).register(); 016 017 int port = Integer.parseInt(args[0]); 018 Server server = new Server(port); 019 ServletContextHandler context = new ServletContextHandler(); 020 context.setContextPath("/"); 021 server.setHandler(context); 022 context.addServlet(new ServletHolder(new MetricsServlet()), "/metrics"); 023 server.start(); 024 server.join(); 025 } 026}