-
Notifications
You must be signed in to change notification settings - Fork 110
Http Endpoint Reports
###Http Endpoint Reports
Metrics.NET comes with the ability to serve metrics through HTTP endpoints.
To start a HttpListener:
Metric.Config.WithHttpEndpoint("http://localhost:1234/");
Run app and open http://localhost:1234/ in a browser.
If you are using NancyFx see Nancy Adapter .
If you are hosting your app inside IIS or any OWIN compatible server, OWIN Adapter is a much better option.
By default, Metrics.NET will serve the visualization app and json & text reports along with a health status report.
JSON metrics are available at /v2/json (latest version with context support) or /v1/json (initial version, without any context support). /json will provide /v1/json or /v2/json depending on the accepted mime types defined in the accept header of the request. Human readable text metrics are available at /text. The health status is accessible at /health or /v1/health.
The visualization app is now available at Metrics.NET.FlotVisualization.
Endpoints that serve metrics in custom formats can also be configured by chaining calls to MetricsEndpointReports.WithEndpointReport
Metric.Config.WithHttpEndpoint("http://localhost:1234/", config => config
.WithEndpointReport("sample", (d, h, r) => new MetricsEndpointResponse("sample", "text/plain")));
A simple way to build a new reporter is to provide an extension method for MetricsEndpointReports
, which internally calls MetricsEndpointReports.WithEndpointReport
. Then you can simply configure as follows, without needing to build the response factory inside the configuration block:
Metric.Config.WithHttpEndpoint("http://localhost:1234/", config => config
.WithMyCustomEndpointReport("sample"/* any other parameters */));
For any issues please use the GitHub issues. For any other questions and ideas feel free to ping us: @PaulParau, @HinteaDan, @BogdanGaliceanu.