Use correct ActiveRecord connection for sql.active_record
events
#383
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Our previous implementation of connection configuration was always getting a default adapter configuration and using that to populate host, port and database tags for
sql.active_record
events.This pull request adds functionality to retrieve more accurate information when the connection object ID is available, which is supplied in the payload for
sql.active_record
. With this change, we use that connection to populate the tags for ActiveRecord traces.Such a change should represent a step forward in supporting multi-DB setups although we have yet to add support for configuring different DB connections as different services.
Example
For a request that creates the following records into different databases with sharding via
active_record_shards
:The resulting trace which tags different DB connections per query. Notice the database name of highlighted span (which correlates to
Article 2
):The same trace, different span (corresponding to
Article 3
) using other shard: