diff --git a/docs/platforms/unreal/tracing/instrumentation/custom-instrumentation.mdx b/docs/platforms/unreal/tracing/instrumentation/custom-instrumentation.mdx index 7a5b6d5f6190fb..f5dca57c290669 100644 --- a/docs/platforms/unreal/tracing/instrumentation/custom-instrumentation.mdx +++ b/docs/platforms/unreal/tracing/instrumentation/custom-instrumentation.mdx @@ -14,6 +14,8 @@ To capture transactions and spans customized to your organization's needs, you m + + ## Distributed Tracing In order to use distributed tracing, follow the custom instrumentation steps. diff --git a/platform-includes/performance/improving-data/unreal.mdx b/platform-includes/performance/improving-data/unreal.mdx new file mode 100644 index 00000000000000..0347ca342d3000 --- /dev/null +++ b/platform-includes/performance/improving-data/unreal.mdx @@ -0,0 +1,35 @@ +## Improving Data on Transactions and Spans + +### Adding Data Attributes to Transactions + +You can add data attributes to your transactions. This data is visible and __queryable__ in the trace explorer in Sentry. Data attributes can be of type _string_, _number_ or _boolean_, as well as arrays and maps of these types: + +```cpp +USentryTransaction* transaction = SentrySubsystem->StartTransaction(TEXT("Automation transaction"), TEXT("Automation operation")); + +transaction->SetData(TEXT("key1"), {{TEXT("data_key1"), TEXT("value")}}); +transaction->SetData(TEXT("key2"), {{TEXT("data_key2"), 123}}); +transaction->SetData(TEXT("key3"), {{TEXT("data_key3"), 123.456f}}); +transaction->SetData(TEXT("key4"), {{TEXT("data_key4"), TArray{{123, 456}}}}); +transaction->SetData(TEXT("key5"), {{TEXT("data_key5"), TMap{{TEXT("inner_key1"), 123}}}}); + +transaction->Finish(); +``` + +### Adding Data Attributes to Spans + +You can add data attributes to your transactions. This data is visible and __queryable__ in the trace explorer in Sentry. Data attributes can be of type _string_, _number_ or _boolean_, as well as arrays and maps of these types: + +```cpp +USentryTransaction* transaction = SentrySubsystem->StartTransaction(TEXT("Automation transaction"), TEXT("Automation operation")); +USentrySpan* span = transaction->StartChildSpan(TEXT("Automation span"), TEXT("Description text")); + +span->SetData(TEXT("key1"), {{TEXT("data_key1"), TEXT("value")}}); +span->SetData(TEXT("key2"), {{TEXT("data_key2"), 123}}); +span->SetData(TEXT("key3"), {{TEXT("data_key3"), 123.456f}}); +span->SetData(TEXT("key4"), {{TEXT("data_key4"), TArray{{123, 456}}}}); +span->SetData(TEXT("key5"), {{TEXT("data_key5"), TMap{{TEXT("inner_key1"), 123}}}}); + +span->Finish(); +transaction->Finish(); +```