This PR does a couple of logging related things things:
It extracts the logging config out to one place in the API code.
It reduces that config so that it is easier to overwrite in any importing code.
It updates the DEMO notebook, with a couple of alternative ways of changing the logging, and noting that the default has changed.
The log level can still be changed but is not overridden by this code.
The default log level is now WARNING. This makes the default much less verbose. It can easily be changed, as was already documented. Will this change confuse users?
In testing and tweaking the demo I also hit an issue with the token storage in a fresh clone of the API:
bcr-authenticate had a default tokens file of ~/.bcr/credentials.txt
BWProject and BWUser had a default location of ./tokens.txt
The notebook moves from bcr-authenticate to providing tokens.txt in example calls, when that file was non-existent or empty and so led to errors.
A missing user in the tokens file also led to an unhelpful exception message, which I've addressed.
I've made BWProject and BWUser share the same default as bcr-authenticate.
If code has been written assuming tokens.txt rather than explicitly providing it this will break.
The DEMO notebook has been updated to comment on this, but for existing code this may be a breaking change.
It would be easy to make tokens.txt the default, but I assume that a central location was introduced for a reason.
The logging within the api code should not fix the logging config in a way that is hard to overwrite, for code which will import it. As discussed in https://github.com/BrandwatchLtd/bcr-api/issues/35
This PR does a couple of logging related things things:
The log level can still be changed but is not overridden by this code.
The default log level is now WARNING. This makes the default much less verbose. It can easily be changed, as was already documented. Will this change confuse users?
In testing and tweaking the demo I also hit an issue with the token storage in a fresh clone of the API:
bcr-authenticate
had a default tokens file of~/.bcr/credentials.txt
BWProject
andBWUser
had a default location of./tokens.txt
bcr-authenticate
to providingtokens.txt
in example calls, when that file was non-existent or empty and so led to errors.A missing user in the tokens file also led to an unhelpful exception message, which I've addressed.
I've made
BWProject
andBWUser
share the same default asbcr-authenticate
. If code has been written assumingtokens.txt
rather than explicitly providing it this will break. The DEMO notebook has been updated to comment on this, but for existing code this may be a breaking change.It would be easy to make
tokens.txt
the default, but I assume that a central location was introduced for a reason.