Skip to content
Snippets Groups Projects
Commit 1de34fd0 authored by s214735's avatar s214735
Browse files

Changed blob_detection, filters, logging

parent 9171f5a9
No related branches found
No related tags found
No related merge requests found
%% Cell type:markdown id:ae2a75fe tags: %% Cell type:markdown id:ae2a75fe tags:
# Logging system for qim3d # Logging system for qim3d (FOR INTERNAL USE)
Using proper logging instead of print statements is a recommended practice. Using proper logging instead of print statements is a recommended practice.
While print statements can be helpful for quick debugging, logging provides a more powerful and versatile approach. Logging allows for better control over output, with options to configure log levels, filter messages, and redirect output to different destinations. While print statements can be helpful for quick debugging, logging provides a more powerful and versatile approach. Logging allows for better control over output, with options to configure log levels, filter messages, and redirect output to different destinations.
%% Cell type:code id:a31b2245 tags: %% Cell type:code id:a31b2245 tags:
``` python ``` python
import qim3d import qim3d
from qim3d.io.logger import log from qim3d.io.logger import log
``` ```
%% Cell type:code id:94022824 tags: %% Cell type:code id:94022824 tags:
``` python ``` python
# Here we test by sending one message for each level # Here we test by sending one message for each level
# Note that DEBUG and INFO do not appear # Note that DEBUG and INFO do not appear
log.debug('debug level message') log.debug('debug level message')
log.info('info level message') log.info('info level message')
log.warning('warning level message') log.warning('warning level message')
log.error('error level message') log.error('error level message')
log.critical('critical level message') log.critical('critical level message')
``` ```
%% Output %% Output
warning level message warning level message
error level message error level message
critical level message critical level message
%% Cell type:code id:b0856333 tags: %% Cell type:code id:b0856333 tags:
``` python ``` python
# Change the level to debug # Change the level to debug
qim3d.io.logger.level("debug") qim3d.io.logger.level("debug")
# Now all the levels get logged # Now all the levels get logged
log.debug('debug level message') log.debug('debug level message')
log.info('info level message') log.info('info level message')
log.warning('warning level message') log.warning('warning level message')
log.error('error level message') log.error('error level message')
log.critical('critical level message') log.critical('critical level message')
``` ```
%% Output %% Output
debug level message debug level message
info level message info level message
warning level message warning level message
error level message error level message
critical level message critical level message
%% Cell type:code id:eb542404 tags: %% Cell type:code id:eb542404 tags:
``` python ``` python
# Change the level to error # Change the level to error
qim3d.io.logger.level("error") qim3d.io.logger.level("error")
# And now only above ERROR is shown # And now only above ERROR is shown
log.debug('debug level message') log.debug('debug level message')
log.info('info level message') log.info('info level message')
log.warning('warning level message') log.warning('warning level message')
log.error('error level message') log.error('error level message')
log.critical('critical level message') log.critical('critical level message')
``` ```
%% Output %% Output
error level message error level message
critical level message critical level message
%% Cell type:code id:af3cc812 tags: %% Cell type:code id:af3cc812 tags:
``` python ``` python
# We can increase the level of detail # We can increase the level of detail
qim3d.io.logger.set_detailed_output() qim3d.io.logger.set_detailed_output()
# Note that DEBUG and INFO are still not shown # Note that DEBUG and INFO are still not shown
log.debug('debug level message') log.debug('debug level message')
log.info('info level message') log.info('info level message')
log.warning('warning level message') log.warning('warning level message')
log.error('error level message') log.error('error level message')
log.critical('critical level message') log.critical('critical level message')
``` ```
%% Output %% Output
ERROR 3224913348.py:8 error level message ERROR 3224913348.py:8 error level message
CRITICAL 3224913348.py:9 critical level message CRITICAL 3224913348.py:9 critical level message
%% Cell type:code id:d7239b1b tags: %% Cell type:code id:d7239b1b tags:
``` python ``` python
# We can switch back to the simple output mode # We can switch back to the simple output mode
qim3d.io.logger.set_simple_output() qim3d.io.logger.set_simple_output()
# Now we see all the levels on simple mode # Now we see all the levels on simple mode
log.debug('debug level message') log.debug('debug level message')
log.info('info level message') log.info('info level message')
log.warning('warning level message') log.warning('warning level message')
log.error('error level message') log.error('error level message')
log.critical('critical level message') log.critical('critical level message')
``` ```
%% Output %% Output
error level message error level message
critical level message critical level message
%% Cell type:code id:eaceb5b6 tags: %% Cell type:code id:eaceb5b6 tags:
``` python ``` python
# Change back to detailed and DEBUG level # Change back to detailed and DEBUG level
qim3d.io.logger.set_detailed_output() qim3d.io.logger.set_detailed_output()
qim3d.io.logger.level("debug") qim3d.io.logger.level("debug")
log.debug('debug level message') log.debug('debug level message')
log.info('info level message') log.info('info level message')
log.warning('warning level message') log.warning('warning level message')
log.error('error level message') log.error('error level message')
log.critical('critical level message') log.critical('critical level message')
``` ```
%% Output %% Output
DEBUG 1186198911.py:5 debug level message DEBUG 1186198911.py:5 debug level message
INFO 1186198911.py:6 info level message INFO 1186198911.py:6 info level message
WARNING 1186198911.py:7 warning level message WARNING 1186198911.py:7 warning level message
ERROR 1186198911.py:8 error level message ERROR 1186198911.py:8 error level message
CRITICAL 1186198911.py:9 critical level message CRITICAL 1186198911.py:9 critical level message
......
...@@ -423,7 +423,7 @@ ...@@ -423,7 +423,7 @@
], ],
"metadata": { "metadata": {
"kernelspec": { "kernelspec": {
"display_name": "Python 3 (ipykernel)", "display_name": "qim3d-env",
"language": "python", "language": "python",
"name": "python3" "name": "python3"
}, },
...@@ -437,7 +437,7 @@ ...@@ -437,7 +437,7 @@
"name": "python", "name": "python",
"nbconvert_exporter": "python", "nbconvert_exporter": "python",
"pygments_lexer": "ipython3", "pygments_lexer": "ipython3",
"version": "3.10.11" "version": "3.11.10"
} }
}, },
"nbformat": 4, "nbformat": 4,
......
This diff is collapsed.
Source diff could not be displayed: it is too large. Options to address this: view the blob.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment