Conversation
|
Thanks for taking a look at my request - which had an error in one of its assumptions. This looks good, i am happy to test this out. -- could you avoid introducing the additional flag by relying on the detection on the tracer provider, something like |
We could do that, but I'd rather be explicit than implicit. You should need to explicitly opt into DBOS-provided tracing, either with your existing pipeline (by setting |
But yeah, I think the solution is working and ready now, in tests it solves the problem the issue describes, exporting correlated traces to the existing |
|
Why do we need a separate |
That flag already exists. It enables the entire DBOS OTel pipeline. This new flag allows you to get JUST traces, sent to your existing |
Trying to figure out if we want to change Python too. |
Let's confirm the fix in TS first. |
| const provider = new NodeTracerProvider({ | ||
| spanProcessors: [new SimpleSpanProcessor(memoryExporter)], | ||
| }); | ||
| provider.register(); |
There was a problem hiding this comment.
If the provider is first-registered win, then how does the test work?
The flags are kind of confusing... I'm starting to think maybe instead of multiple boolean variables, we should explicitly set them to several literals like "DBOS_EXPORTERS", "TRACE_ONLY_EXTERNAL", "LOGS_ONLY_EXTERNAL", etc. |
This would be a breaking change. If we end up needing multiple additional modes, we'll change the interface, but two is fine I think. |
I will test this soon and get back. Wednesdays are usually very busy, might be a day or two. |
Thanks, let me know if this fixes your issue! |
Add a new
tracingEnabledflag to DBOS configuration. When set, this flag enables DBOS trace generation, but not the DBOS export pipeline. This flag requires an existingTracerProviderto be configured (probably by an APM likedd-trace). Traces will be collected and exported by the existingTracerProvider.Closes #1199