It would greatly help debugging of long running distributed operations in a sharded cluster (such as scatter-gather aggregation queries) if db.currentOp() grouped together the parts of the operation in a logical way. Currently the operations running on the shards are displayed in the db.currentOp() output returned from a mongos, but it is difficult to tie together all the operations that originated from a single client request.
Provide a cluster-wide db.currentOp() that can be run from a mongos and clearly lists all running operations including all parts of the op that are distributed to the shards
e.g. for a running aggregation op that is currently at the merge cursors stage, we should clearly see all parts of the op displayed together and hierarchically. i.e.