[SERVER-76145] Refactor telemetry key Created: 14/Apr/23  Updated: 14/Sep/23  Resolved: 06/Jun/23

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: Maddie Zechar Assignee: Backlog - Query Integration
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-73152 Literal and field name redaction for ... Closed
depends on SERVER-76329 Use representative query shape in tel... Closed
depends on SERVER-76143 Add missing fields to telemetry key Closed
Duplicate
duplicates SERVER-76330 Use representative query shape in que... Closed
duplicates SERVER-76307 Move timeseries-related classes/funct... Closed
Assigned Teams:
Query Integration
Participants:

 Description   

Telemetry key is currently represented as a BSONObj. This refactor would create a new struct type to represent the key, which itself would contain an object of another new struct type to represent the query shape, which itself would contain BSONObj pointers representing the shapified input query.

This ticket should seek to remove the raw command BSON obj from being stored on TelemetryMetrics and instead the TelemetryKey struct should hold a std::variant<FindCommandRequest, AggregateCommandRequest, CountRequest...>. This way, we will not need to reparse BSON into a FindCommandRequest as we currently do in redactKey().

IDL may prove very useful for parsing and creating the telemetry key struct or the query shape struct and it may be wise to start this ticket after SERVER-75138 has been merged.


Generated at Thu Feb 08 06:31:57 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.