Hi,

As ServiceComb Pack use the GlobalTransactionId to trace the
distributed transactions,  it's make sense that let the ServiceComb
Pack and Skywalking share the same Id for tracing.
In this way, we can bring the APM feature into Distribution
Transaction managemet world.

Current ServiceComb has Interface IdGenerator[1], which is used for
the generate the GlobalTransactionId in OmegaContext[2]. I think if we
can reuse the transaction implementation with the Skywalking agent to
generate the GlobalTransactionId. In this way we can search the trace
information and transactions with same correlation ID.

The missing part is LocalTransactionId, we need to figure a way to
bring the LocalTransactionId with the trace information.

BTW, ServiceComb Pack is using ES to store the Transaction related
event[3].  I think we can provide a service to bridge the Trace
information that Skywalking collects with ServiceComb Pack Transaction
events information.

Any thoughts?

[1]https://github.com/apache/servicecomb-pack/blob/master/omega/omega-context/src/main/java/org/apache/servicecomb/pack/omega/context/IdGenerator.java
[2]https://github.com/apache/servicecomb-pack/blob/master/omega/omega-context/src/main/java/org/apache/servicecomb/pack/omega/context/OmegaContext.java
[3]https://github.com/apache/servicecomb-pack/tree/master/alpha/alpha-fsm

Willem Jiang

Twitter: willemjiang
Weibo: 姜宁willem

Reply via email to