In the edx-platform application the log configuration is currently generated inside of a function call that doesn’t accept any meaningful parameters (here). This makes it impossible to change the formatting or structure of the logs, or add additional logging handlers (Sentry, for example) without making extensive code changes to the platform. It would be beneficial to expose more customizability to how the logging is set up. For instance, either make this function more flexible, so that it can accept a dict_config that gets merged with the one inside the function, or moving the log configuration into the settings module so that it can be managed in the same way as the other configuration values.
After some discussion in the last contributors meeting, we’re going to proceed with this by opening a PR with an ADR. It doesn’t look like a large enough change to justify an OEP.
1 Like
We have taken a first pass of writing up an ADR to cover extending the configurability of logging in edx-platform. It is in a PR here if anyone is able to take a look.
1 Like
I know this is a very old post, but I’m curious what you are doing at this point. It sounds like you have a plugin?
Here are updated/working links from earlier in this post:
- edx-platform/openedx/core/lib/logsettings.py at 375b9d9286d8b2a407af7db41da53a243234afec · openedx/edx-platform · GitHub
- A draft for making a decision on managing logging configurations by ebberg · Pull Request #28603 · openedx/edx-platform · GitHub
Thank you.