Here are some examples of using attributes with the Python agent.
Capture request parameters
Capturing request parameters is not enabled by default. The following configuration will turn on parameter capture for the default destinations: transaction_tracer
, transaction_events
, and error_collector
. To limit the destinations see the Selecting specific destinations example.
Configuration:
attributes.include = request.parameters.*
Capture only specific request parameters
To capture only specific request parameters, you can simply pass a list to attributes.include
:
Configuration:
attributes.include = request.parameters.user_id request.parameters.product_id
Disable all attributes
In this example, attributes are disabled, so the include and exclude lists will be ignored and all attributes will be filtered out.
Configuration:
attributes.enabled = falseattributes.include = request.parameters.*
Input keys:
foo, bar, request.parameters.foo, request.parameters.bar
Output for destinations:
transaction_tracer: noneerror_collector: nonetransaction_events: nonebrowser_monitoring: none
Select specific destinations
In this example:
- Attributes are disabled for transaction traces. The include and exclude lists will be ignored, and all attributes will be filtered out for this destination.
- Attributes are also disabled for by default.
- Request parameters (prefixed with
request.parameters.
) are off by default for all destinations.
As a result, only bar
is sent in traced errors and transaction events.
Configuration:
attributes.enabled = truetransaction_tracer.attributes.enabled = falseattributes.exclude = foo
Input keys:
foo, bar, request.parameters.foo, request.parameters.bar
Output for destinations:
transaction_tracer: noneerror_collector: bartransaction_events: barbrowser_monitoring: none
Select values and destinations
In this example, specific input keys are selected for certain output destinations and excluded from others.
- The
food.fruit.banana
key will be excluded only from transaction traces. - The
food
andfood.bread
keys will be excluded from all destinations.
Configuration:
browser_monitoring.attributes.enabled = trueattributes.exclude = food*attributes.include = food.fruit.*transaction_tracer.attributes.exclude = food.fruit.banana
Input keys:
food, food.bread, food.fruit.banana, food.fruit.apple
Output for destinations:
transaction_tracer: food.fruit.appleerror_collector: food.fruit.banana, food.fruit.appletransaction_events: food.fruit.banana, food.fruit.applebrowser_monitoring: food.fruit.banana, food.fruit.apple