VersaLog.pyとは?
VersaLog.py は、多機能で柔軟なログ出力を簡単に実現できる Python ライブラリです。
シンプルな表示から詳細な実行情報まで、用途に応じたログ形式を選べます。
詳細・導入方法はこちら:
リポジトリ
どんな機能があるの?
大きく分けて、4つです。
機能モード | 説明 |
---|---|
simple |
シンプルで見やすいログを出力します。色付き・レベル付き |
simple2 |
シンプルで見やすいログを出力します。実行時間付き・色付き・レベル付き |
detailed |
実行時間、レベル付きログ |
file |
ファイル名、行数付きログ |
⚠️ 注意
ログを出力する前に、必ず VersaLog(mode="...")
でモードを設定してください。
オプションはあるの?
現在、設定可能なオプションは 7つ あります
オプション | 説明 |
---|---|
show_file |
ファイル情報有効/無効 |
show_tag |
タグ有効/無効 |
tag |
タグ |
enable_all |
全てのオプション有効/無効 |
notice |
ERROR&CRITICALを通知有効/無効 |
all_save |
全てのログをlogファイルとして保存有効/無効 |
save_levels |
特定のログレベルのログをlogファイルとして保存有効/無効 |
⚠️ 注意
True
を指定しないと、有効になりません。
インストール方法は?
pip install VersaLog
実装方法
サンプルコード(simpleモード)
from VersaLog import *
# show_file False
logger = VersaLog(mode="simple")
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# show_file True
logger = VersaLog(mode="simple", show_file=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# show_tag False
logger = VersaLog(mode="simple")
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# show_tag True
logger = VersaLog(mode="simple", show_tag=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# notice False
logger = VersaLog(mode="simple")
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# notice True
logger = VersaLog(mode="simple", notice=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# enable_all True
logger = VersaLog(mode="simple", tag="VersaLog",enable_all=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
サンプルコード(simple2モード)
from VersaLog import *
# show_file False
logger = VersaLog(mode="simple2")
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# show_file True
logger = VersaLog(mode="simple2", show_file=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# show_tag False
logger = VersaLog(mode="simple2")
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# show_tag True
logger = VersaLog(mode="simple2", show_tag=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# notice False
logger = VersaLog(mode="simple2")
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# notice True
logger = VersaLog(mode="simple2", notice=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# enable_all True
logger = VersaLog(mode="simple2", tag="VersaLog",enable_all=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
サンプルコード(detailedモード)
from VersaLog import *
# show_file False
logger = VersaLog(mode="detailed")
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# show_file True
logger = VersaLog(mode="detailed", show_file=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# show_tag False
logger = VersaLog(mode="detailed")
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# show_tag True
logger = VersaLog(mode="detailed", show_tag=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# notice False
logger = VersaLog(mode="detailed")
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# notice True
logger = VersaLog(mode="detailed", notice=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
# enable_all True
logger = VersaLog(mode="detailed", tag="VersaLog",enable_all=True)
logger.info("ok")
logger.error("err")
logger.warning("war")
logger.debug("deb")
logger.critical("cri")
サンプルコード(fileモード)
from VersaLog import *
logger = VersaLog(mode="file")
logger.info("ok")
logger.err("err")
logger.war("war")
ℹ️ ヒント
show_file=False
を指定すると、simple
や detailed
モードでもファイル情報(ファイル名・行数)は非表示になります。