|
1 | 1 | [[overview]]
|
2 | 2 | = Eclipse Jetty and Jersey Instrumentation
|
3 | 3 |
|
| 4 | +== Jetty |
| 5 | + |
4 | 6 | Micrometer supports binding metrics to Jetty through `Connection.Listener`.
|
5 | 7 |
|
6 |
| -You can collect metrics from Jetty by adding `JettyConnectionMetrics`, as follows: |
| 8 | +You can collect metrics from a Jetty `Connector` by configuring it with `JettyConnectionMetrics`, as follows: |
7 | 9 |
|
8 | 10 | [source,java]
|
9 | 11 | ----
|
10 | 12 | Server server = new Server(0);
|
11 |
| - Connector connector = new ServerConnector(server); |
12 |
| - connector.addBean(new JettyConnectionMetrics(registry, connector, Tags.of("foo", "bar")); |
| 13 | + NetworkTrafficServerConnector connector = new NetworkTrafficServerConnector(server); |
| 14 | + JettyConnectionMetrics metrics = new JettyConnectionMetrics(registry, connector); |
| 15 | + connector.addBean(metrics); //<1> |
| 16 | + connector.setNetworkTrafficListener(metrics); //<2> |
13 | 17 | server.setConnectors(new Connector[] { connector });
|
14 | 18 | ----
|
| 19 | +<1> Register general connection metrics |
| 20 | +<2> Registers metrics for bytes in/out on this connector |
| 21 | + |
| 22 | +Alternatively, you can apply the metrics instrumentation to all connectors on a `Server` as follows: |
| 23 | + |
| 24 | +[source,java] |
| 25 | +---- |
| 26 | +JettyConnectionMetrics.addToAllConnectors(server, registry); |
| 27 | +---- |
| 28 | + |
| 29 | +Connection metrics can be configured on a client as well, but bytes in/out will not be available when instrumenting a client. |
| 30 | + |
| 31 | +.Configure instrumentation for a Jetty client |
| 32 | +[source,java] |
| 33 | +---- |
| 34 | +HttpClient httpClient = new HttpClient(); |
| 35 | +httpClient.addBean(new JettyConnectionMetrics(registry)); |
| 36 | +---- |
| 37 | + |
| 38 | +== Jersey |
15 | 39 |
|
16 | 40 | Micrometer also supports binding metrics to Jersey through `ApplicationEventListener`.
|
17 | 41 |
|
|
0 commit comments