001package io.prometheus.cloudwatch; 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> <yml configuration file>"); 013 System.exit(1); 014 } 015 CloudWatchCollector cc = new CloudWatchCollector(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 context.addServlet(new ServletHolder(new HomePageServlet()), "/"); 024 server.start(); 025 server.join(); 026 } 027}