[SERVER-17227] Verbose query logging improvements Created: 09/Feb/15  Updated: 06/Dec/22

Status: Backlog
Project: Core Server
Component/s: Diagnostics, Querying
Affects Version/s: None
Fix Version/s: None

Type: Improvement Priority: Major - P3
Reporter: J Rassi Assignee: Backlog - Query Execution
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
Assigned Teams:
Query Execution
Participants:

 Description   

The verbose query logs at logLevel 5 can prove immensely helpful for understanding how a query is executing. We should do a pass in order to clean up what information we generate, and also to make logLevel 4 useful. Currently, operators of live systems may wish to enable verbosity 0 or 1 for the query log component. Developers may wish to enable verbosity 5. However, levels 2-4 are rarely useful.

The "query" log component at logLevel 4 should give some high-level detail about the steps the planner is taking in order to plan a query. It should provide the following:

  • The parsed query.
  • The tagged and "rated" MatchExpression tree.
  • The candidate plans generated, and their scores.
  • An indication of which plan won.

At logLevel 5, we may provide additional details from each planning step. For instance, verbosity 5 may generate messages describing some of the details of predicate assignment in the access planner or details of covering analysis in the PlannerAnalysis step.


Generated at Thu Feb 08 03:43:43 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.