Package io.prometheus.client.exporter
Class HTTPServer
- java.lang.Object
-
- io.prometheus.client.exporter.HTTPServer
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
public class HTTPServer extends Object implements Closeable
Expose Prometheus metrics using a plain Java HttpServer.Example Usage:
HTTPServer server = new HTTPServer(1234);
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
HTTPServer.Builder
We keep the original constructors ofHTTPServer
for compatibility, but new configuration parameters likesampleNameFilter
must be configured using the Builder.static class
HTTPServer.HTTPMetricHandler
Handles Metrics collections from the given registry.
-
Field Summary
Fields Modifier and Type Field Description protected ExecutorService
executorService
protected com.sun.net.httpserver.HttpServer
server
-
Constructor Summary
Constructors Constructor Description HTTPServer(int port)
Start an HTTP server serving the default Prometheus registry using non-daemon threads.HTTPServer(int port, boolean daemon)
Start an HTTP server serving the default Prometheus registry.HTTPServer(com.sun.net.httpserver.HttpServer httpServer, io.prometheus.client.CollectorRegistry registry, boolean daemon)
Start an HTTP server serving Prometheus metrics from the given registry using the givenHttpServer
.HTTPServer(String host, int port)
Start an HTTP server serving the default Prometheus registry using non-daemon threads.HTTPServer(String host, int port, boolean daemon)
Start an HTTP server serving the default Prometheus registry.HTTPServer(InetSocketAddress addr, io.prometheus.client.CollectorRegistry registry)
Start an HTTP server serving Prometheus metrics from the given registry using non-daemon threads.HTTPServer(InetSocketAddress addr, io.prometheus.client.CollectorRegistry registry, boolean daemon)
Start an HTTP server serving Prometheus metrics from the given registry.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
close()
Stop the HTTPServer.int
getPort()
Gets the port number.protected static Set<String>
parseQuery(String query)
protected static boolean
shouldUseCompression(com.sun.net.httpserver.HttpExchange exchange)
void
stop()
Deprecated.renamed to close(), so that the HTTPServer can be used in try-with-resources.
-
-
-
Field Detail
-
server
protected final com.sun.net.httpserver.HttpServer server
-
executorService
protected final ExecutorService executorService
-
-
Constructor Detail
-
HTTPServer
public HTTPServer(com.sun.net.httpserver.HttpServer httpServer, io.prometheus.client.CollectorRegistry registry, boolean daemon) throws IOException
Start an HTTP server serving Prometheus metrics from the given registry using the givenHttpServer
. ThehttpServer
is expected to already be bound to an address- Throws:
IOException
-
HTTPServer
public HTTPServer(InetSocketAddress addr, io.prometheus.client.CollectorRegistry registry, boolean daemon) throws IOException
Start an HTTP server serving Prometheus metrics from the given registry.- Throws:
IOException
-
HTTPServer
public HTTPServer(InetSocketAddress addr, io.prometheus.client.CollectorRegistry registry) throws IOException
Start an HTTP server serving Prometheus metrics from the given registry using non-daemon threads.- Throws:
IOException
-
HTTPServer
public HTTPServer(int port, boolean daemon) throws IOException
Start an HTTP server serving the default Prometheus registry.- Throws:
IOException
-
HTTPServer
public HTTPServer(int port) throws IOException
Start an HTTP server serving the default Prometheus registry using non-daemon threads.- Throws:
IOException
-
HTTPServer
public HTTPServer(String host, int port, boolean daemon) throws IOException
Start an HTTP server serving the default Prometheus registry.- Throws:
IOException
-
HTTPServer
public HTTPServer(String host, int port) throws IOException
Start an HTTP server serving the default Prometheus registry using non-daemon threads.- Throws:
IOException
-
-
Method Detail
-
shouldUseCompression
protected static boolean shouldUseCompression(com.sun.net.httpserver.HttpExchange exchange)
-
parseQuery
protected static Set<String> parseQuery(String query) throws IOException
- Throws:
IOException
-
stop
public void stop()
Deprecated.renamed to close(), so that the HTTPServer can be used in try-with-resources.Stop the HTTP server.
-
close
public void close()
Stop the HTTPServer.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
-
getPort
public int getPort()
Gets the port number.
-
-