I would remove this entire module and use instances of Logger everywhere. To elaborate: functions with implicit dependencies that are not observable from the signature (like ServiceProvider.GlobalProvider) are bad: it is difficult to test\reuse them