mljar / mljar-supervised

Python package for AutoML on Tabular Data with Feature Engineering, Hyper-Parameters Tuning, Explanations and Automatic Documentation
https://mljar.com
MIT License
3.02k stars 403 forks source link

mljar should not configure logging level #690

Open haim-cohen-moonactive opened 9 months ago

haim-cohen-moonactive commented 9 months ago

Hi Piotr, First, I wanted to let you know you are doing a great job!

We are trying to use mljar-supervised as a library in a large application. However, when trying to get log messages we see that your code set the default log level to ERROR. For example, at exceptions.py and automl.py. Calling basicConfig the second time does not affect the default logger and subsequent loggers. This makes it hard to use mljar as a library. We must make sure we call basicConfig first and then import AutoML... It feels like a race :-)

When running a library as part of an application, libraries should let the logging level, only use logger (e.g. logger = logging.getLogger(__name__)). Let the running application set the desired logging level. Libraries should set logging levels only on unit tests or CLI's.

In addition, mljar print messages about its current status using print command and not logging. This makes it hard to follow when running the application in a logging managed environment (like cloud providers). Can you please make the change? As those print messages comes mostly from verbose_print method, it looks like it is a single place to replace.

Thanks! Haim

pplonski commented 9 months ago

Hi @haim-cohen-moonactive,

Thanks! Do you get good models with our AutoML?

For sure logging can be improved as you described, but it is hard to say when it will be done. PR are welcome!

haim-cohen-moonactive commented 8 months ago

@pplonski I tried to push a branch to open PR but I got permission denied. What do I/you need to do to have me as a contributor? Thx!

pplonski commented 8 months ago

Hi @haim-cohen-moonactive,

Please try to make a fork first. Then you commit changes to your fork. When you are ready, you can click Pull Request on your forked repo.