Code Attributes
The “Code Attributes” rule can be used to add semantic Code attributes to spans. Code attributes can help trace back an operation in a trace to the code that generated it.
This Instrumentation Rule is currently only available with the Odigos Enterprise plan.
Contact us for more information.
Considerations
Before enabling code attributes, please note the following:
- Size of
code.stacktrace
can be large and may increase the size of your spans. This can impact the performance of your application and the cost of processing, storing and analyzing traces. - Code attributes have various level of support, depending on the programming language and instrumentation library used.
Configuration Options
column
column
column boolean
: Indicates whether to record the code.column
attribute for the column number in the code.filepath
best representing the operation.
- This field is optional, and defaults to
false
filePath
filePath
filePath boolean
: Indicates whether to record the code.filepath
attribute for the source code file name that identifies the code unit.
- This field is optional, and defaults to
false
function
function
function boolean
: Indicates whether to record the code.function
attribute for the method or function name, or equivalent.
- This field is optional, and defaults to
false
lineNumber
lineNumber
lineNumber boolean
: Indicates whether to record the code.lineno
attribute for the line number in the code.filepath
best representing the operation.
- This field is optional, and defaults to
false
namespace
namespace
namespace boolean
: Indicates whether to record the code.namespace
attribute for the “namespace” within which code.function
is defined. Usually the qualified class or module name, such that code.namespace
+ some separator + code.function
form a unique identifier for the code unit.
- This field is optional, and defaults to
false
stackTrace
stackTrace
stackTrace `boolean
- This field is optional, and defaults to
false
Any unspecified options will be set to the default value of false
(not recorded).
Basic Example
The following example demonstrates how to enable code attributes for all supported workloads and instrumentation libraries in the cluster.
Create a YAML file with the following content:
Apply the action to the cluster: