-
Type: Improvement
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Networking & Observability
Similar to how the mongod process writes an entry to local.startup_log on process start, whenever a client connects and the client metadata from the handshake will be written to the logs, this data should also be buffered in a way that can be uniquely flushed to a local capped collection.
Given the volume of connections that a process can receive the goal of writing this data to a local database should not be to capture all connections 1:1 at the rate they're being received, but instead buffer them and flush them periodically.
The documents written to disk should have the same details the handshake writes to the logs, with an additional timestamp indicating when that permutation of metadata was last received).
Having this data present in a collection would allow us to more easily detect connection details without having to grep logs.
This was previously proposed in SERVER-2685 but was marked as a duplicate of SERVER-72 - which introduced client metadata capture.