Request Tracing

Content

Overview

ULM Cloud utilizes distributed tracing techniques compliant with the OpenTracing specification. Distributed tracing is designed to help profile and monitor applications, especially those built upon modern software architectures (such as microservices). It assists in tracking the fulfillment of a client's request across different one or more (micro)services.

The result of this tracing is visible to clients in the form of an X-B3-TraceId header returned as part of requests to ULM Cloud, with a unique string generated on each request as its value.

However, customers integrating with ULM Cloud (especially in cases where machine-to-machine interactions are required) may already be using distributed tracing internally, and so wish to use their own internally generated value with ULM Cloud, instead of ULM Cloud generating a trace identifier of its own. ULM Cloud supports accepting the X-B3-TraceId header with each request, using the value provided as the trace identifier.

Example

Request
GET /account/1

Response
Header: X-B3-TraceId = dd950f07f143ebcb
{
   "id":1,
   "displayName":"Entity display name",
   "status":"activated",
   "type":"com.uxpsystems.ulm.entity.RegularType"
}

Revision History

Version Description
2020.11 Added this topic.