How To Disable Logged Warnings In Pybel?
I am using Pybel - a Python wrapper around the OpenBabel API, and I am trying to disable warnings such as these: ============================== *** Open Babel Warning in ParseComp
Solution 1:
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):
importpybelob_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
Solution 2:
The Aelfinn's answer didn't work for me, but accessing SetOutputLevel this way did:
pybel.ob.obErrorLog.SetOutputLevel(0)
Solution 3:
If you want to get rid of all error messages:
pybel.ob.obErrorLog.StopLogging()
Post a Comment for "How To Disable Logged Warnings In Pybel?"