Instead of building logging into the BigDBMClient class, create a separate logging infrastructure that works globally. It handles the conditional of logging configured/installed etc. (Logfire) so that classes don't have to accept a client instance just to log. Processor is the only non client class that can log as of now because it logs with self.client.logfire.log which is not ideal, and classes like deliverers and analyzers that don't get need a client instance can't log internally.
Instead of building logging into the
BigDBMClient
class, create a separate logging infrastructure that works globally. It handles the conditional of logging configured/installed etc. (Logfire) so that classes don't have to accept a client instance just to log. Processor is the only non client class that can log as of now because it logs withself.client.logfire.log
which is not ideal, and classes like deliverers and analyzers that don't get need a client instance can't log internally.