birschick-bq commented on issue #2210:
URL: https://github.com/apache/arrow-adbc/issues/2210#issuecomment-2819249563

   @CurtHagenlocher / @zeroshade 
   
   You both had some important questions about a C# implementation 
   1. That didn't consider passing tracing information via a C ABI
   2. That inadvertently exposed the implementation to a public API
   
   The observations above try to address these concerns.
   
   - The only thing that needs to be in the C ABI is the ability to get/set a 
`TraceParent` property (the ID of the already running trace). The calling 
runtime could then have the executing runtime telemetry add the reference to 
the caller's trace ID. I.e., cross-reference telemetry from multiple sources.
   - Have each driver provide an option to export trace messages to an OTLP 
receiver. One possible receiver is the [OpenTelemetry 
Collector](https://opentelemetry.io/docs/collector/) running on the local 
machine. The OpenTelemetry Collector can be configured to route the telemetry 
to a large number of other local or remote receivers. But there is no reason 
why that [OTLP receiver couldn't be on 
remote](https://learn.microsoft.com/en-us/azure/data-explorer/open-telemetry-connector?tabs=command-line).
 It is just down to configuration.
   - Have each driver provide an option to export trace messages to (rotating) 
trace files. This is a lower overhead deployment scenario. We'll likely need to 
implement this rotating trace file exporter for each driver language - or 
continue from the console/stdout exporters.
   - All of these implementation only need to provide a way to configure their 
behavior via options - so no other public API.
   
   Assumptions
   
   - The calling runtime doesn't need to add any other telemetry information 
(other than trace parent). It should be instrumented in the executing runtime.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: github-unsubscr...@arrow.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to