-
-
Notifications
You must be signed in to change notification settings - Fork 230
TransactionTracer.SetData is not equivalent to TransactionTracer.Contexts.Trace.SetData #4140
Copy link
Copy link
Closed
Labels
.NETPull requests that update .net codePull requests that update .net codeBugSomething isn't workingSomething isn't workingTraces
Description
"data" set via TransactionTracer.SetData is not written to "Data" of the Trace-Context, and does not get copied over to SentryTransaction when created from the tracer.
But "data" set via TransactionTracer.Contexts.Trace.SetData is written to "Data" of the Trace-Context, and gets copied over to SentryTransaction when created from the tracer.
However, SentryTransaction.SetData and SentryTransaction.Contexts.Trace.SetData are equivalent setting "Data" of the Trace-Context.
With Spans, both setting "data" via SpanTracer.SetData and SentrySpan.SetData are eventually serialized to spans.data ("Data" does get copied over to SentrySpan when created from a SpanTracer);
Steps to Reproduce
SentrySdk.Init(options =>
{
options.Dsn = "..";
options.TracesSampleRate = 1.0;
options.SetBeforeSendTransaction(transaction =>
{
transaction.SetData("setbeforesendtransaction", "transaction-setdata");
transaction.Contexts.Trace.SetData("setbeforesendtransaction", "transaction-contexts-trace-setdata");
return transaction;
});
});
var transaction = SentrySdk.StartTransaction("my-transaction", "start-transaction");
SentrySdk.ConfigureScope(scope => scope.Transaction = transaction);
transaction.SetData("transaction-data-key", "transaction-data-value");
transaction.SetData("transaction-array", new[] {42, 43, 44});
// Do some work.
transaction.Finish();Expected Result
{
"contexts": {
"trace": {
"data": {
"setbeforesendtransaction": "transaction-contexts-trace-setdata",
"transaction-array": [42, 43, 44],
"transaction-data-key": "transaction-data-value"
}
}
}
}Actual Result
{
"contexts": {
"trace": {
"data": {
"setbeforesendtransaction": "transaction-contexts-trace-setdata"
}
}
}
}Additional Notes
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
.NETPull requests that update .net codePull requests that update .net codeBugSomething isn't workingSomething isn't workingTraces
Fields
Give feedbackNo fields configured for issues without a type.
Projects
Status
Done