Description
Background
The slow operations logs are extremely useful at informing the user when there is a slow operations.
Problems
Currently the timer for the operations begins when the header is read, this means for mutation operations, the operation could be logged at being slow when the network is at fault.
The other issues is that the log gives no insight into why the operation was slow, for example if a background fetch is required and the disks are performing slowly.
Suggestion
It would be useful if the slow log message broke down the time:
- Time spent waiting on the network
- Time spent fetching from disk (or EWOULD_BLOCK state)
- How big the document is that is being read from disk
- How big was the request
This could be extremely useful for sub-doc mutations:
2017-09-20T19:34:14.809701+01:00 WARNING 308: Slow APPEND operation on connection: 699 ms
|
(Network: 200ms, BG_Fetch: 450ms ) ([ 10.0.0.120:41584 - 10.0.0.191:11210 ]) Doc Size: 19MB Mutation Size: 1MB
|