Backport logging feature of v2.1+
Backport features from v2.x Specifically, commits 529424eb5a3e06c4d884d49e5ffd1fb65d60fa67, 586297331d95c6ed9a1f011ea3f9d919b695de38
Backport features from v2.x Specifically, commits 529424eb5a3e06c4d884d49e5ffd1fb65d60fa67, 586297331d95c6ed9a1f011ea3f9d919b695de38