Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Remote sensors provide information about the remote calls made in an application. These sensors enable tracking of the remote calls and combing interactions between JVMs in a single trace. There are two types of remote sensors: server and client. Server ones are dealing with server-side requests, while client ones are capturing the client-side requestsClient-side remote sensor start a new tracing span before making an outgoing request and propagate the new span identification along with that request. Server-side implementations first extract a span identification from an incoming request and continuing or starting a trace from that point. Note that in remote communication one JVM can usually stand as both server (receiving requests) and client (making requests to another JVM/component).

...

The following table provides all currently available remote sensors

Remote Sensor

Type

Technology

Library / FrameworkDescription
Remote Apache HTTP
Java Server
Client Sensor
Server
ClientHTTP
Java Servlet API
Apache HttpComponents Client (version
2
4.x
& up
)Intercepts
server requests served with Java Servlet API
client requests made with Apache HTTP Client. Compatible with all 4.x versions.
Remote Async Apache HTTP Client SensorClientHTTP
Apache HttpComponents
Apache HttpComponents Async Client (version 4.x)Intercepts client requests made with Apache HTTP Async Client. Compatible with
all
versions 4.x
versions
.

Remote HTTP Java Server Sensor

ServerHTTPJava Servlet API (version 2.x & up)Intercepts server requests served with Java Servlet API.
Remote Jetty HTTP Client SensorClientHTTPJetty Http Client (versions 6.x, 7.x & 8.x)Intercepts client requests made with Jetty HTTP Client. Compatible with versions 6.x, 7.x & 8.x. Not compatible with latest versions of Jetty Client.
Remote
URL Connection Client
JMS Listener Server Sensor
Client
Server
HTTP
JMSJava
URL Connection (Java 6+)Intercepts client requests made with Java URL connection. Independent of Java version used
Message Service API (version 1.x & up)Intercepts JMS message receiving via Message Listener.
Remote JMS Client SensorClientJMSJava Message Service API (version 1.x & up)Intercepts JMS message sending via Message Producer.
Remote Spring Template Client SensorClientHTTPSpring Template (version 3.x & 4.x)Intercepts client requests made with Spring RestTemplate wrapper. Helpful if you use Spring RestTemplate with a Netty, OkHttp or Async Apache HTTP client as underlying request factory.
Remote
JMS Listener Server
URL Connection Client Sensor
Server
Client
JMS
HTTPJava
Message Service API (version 1.x & up)Intercepts JMS message receiving via Message Listener.Remote JMS Client SensorClientJMSJava Message Service API (version 1.x & up)Intercepts JMS message sending via Message Producer
URL Connection (Java 6+)Intercepts client requests made with Java URL connection. Independent of Java version used.
Remote Manual Server SensorServer--Intercepts server requests independent of technology and library/framework. Useful to mark custom trace start points, for example at the begging of the batch job.

Supporting Sensors

The following table provides an overview of sensors which purpose is supporting the functionality of another sensor. In most cases, the individual usage of these sensors will not make any sense.

SensorSupported SensorDescription
Apache Client Exchange Handler SensorRemote Async Apache HTTP Client SensorIntercepts the exchange handler of the Apache HTTP Async Client in order to correctly start a tracing span. Without this sensor, the collected spans will not have any timings.