You can obtain a handle to the openbabel logger (the class OBMessageHandler
) off of the openbabel
module. The trick is to first access the openbabel module off of the pybel module, grab the OBMessageHandler
class, and instantiate the logger (docs):
import pybel
ob_log_handler = pybel.ob.OBMessageHandler()
Using the handle, you can set the log_level
to 0 to disable all but critical messages (docs):
ob_log_handler.SetOutputLevel(0)
You can use the following enumerations (docs here) to choose your level of logging. The default is 1, which logs all warnings:
- 0: Critical
- 1: Warning (default)
- 2: Info
- 3: Audit (when molecules are destroyed/perceived)
- 4: Debug