Unhandled Exception: Invalid argument(s): Logger has already been closed
Hello,
Is there any way to test if the Logger was closed or not? Making the instance variable nullable and then using null-aware operator ?. to access it's methods doesn't work.
I am logging API requests and this happens when the repository object is closed, because sometimes the connection is still up when this happens, but the Logger object is closed alread.y
This is how I clean up my repository object:
Future<void> close() async {
_logger?.i("Closing repository $this");
dio?.close(force: true);
await _resultStreamController.close();
_logger?.close();
}
As you can see I force close the dio client yet I still get an exception.
It would be helpful if there would be a public getter for "_active" variable.
The _active field is indeed private.
But I am not sure when this exception is called. You call in your code close somewhere and a bit further down you call a method on the global _logger, is that right?
I would move to suggest that it is that flow that is not optimal.