sergey-safarov created an issue (kamailio/kamailio#4380)

### Description

In a complex system that contains many daemons (sip proxy, application, 
billing, database, HTTP API request to external systems) is important to trace 
call processing using the same ID (TRACE_ID).
Most tracing tools use TRACE_ID formatting defined [Trace 
Context](https://www.w3.org/TR/trace-context/) and can be checked using regex
```
^[0-9a-f]{32}$
```
TRACE_ID format is different then Call-ID and will be fine to use TRACE_ID for 
logs search and event pushing to tools like OpenTelemetry or Jaeger.

Could we add functionality:
1) generate trace_id;
2) set TRACE_ID for the current SIP message processing and logging, as an 
example, set from the SIP header like `X-Trace-ID: 
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`, or from a response received from the 
application server. As an example, an HTTP GET request to the`/trace_id` 
application server endpoint.
3) use TRACE_ID for the logs message prefix, like `log_prefix="{$mt $hdr(CSeq) 
$ci $trace_id} "`;
4) use TRACE_ID for log streaming in JSON format. In JSON, there is a dedicated 
field for Call-ID, expected a similar field for TRACE_ID;
5) use TRACE_ID as journald field when used `log_systemd`



-- 
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/4380
You are receiving this because you are subscribed to this thread.

Message ID: <kamailio/kamailio/issues/4...@github.com>
_______________________________________________
Kamailio - Development Mailing List -- sr-dev@lists.kamailio.org
To unsubscribe send an email to sr-dev-le...@lists.kamailio.org
Important: keep the mailing list in the recipients, do not reply only to the 
sender!

Reply via email to