Source code for jdxi_editor.log.decorator

from jdxi_editor.log.emoji import LEVEL_EMOJIS


[docs] def get_qc_tag(msg: str) -> str: """ get QC emoji etc :param msg: str :return: str """ msg = f"{msg}".lower() if "success rate" in msg: return "📊" if "updat" in msg or "success" in msg or "passed" in msg: return "✅" if "fail" in msg or "error" in msg: return "❌" return " "
[docs] def get_midi_tag(msg: str) -> str: """ get Midi emoji etc :param msg: str :return: str """ msg = f"{msg}".lower() if "jdxi" in msg or "jd-xi" in msg: return "🎹" if "midi" in msg or "sysex" in msg: return "🎵" return " "
[docs] def decorate_log_message(message: str, level: int) -> str: """ Adds emoji decoration to a log message based on its content and log level. :param message: The original log message :param level: The logging level :return: Decorated log message string """ level_emoji_tag = LEVEL_EMOJIS.get(level, "🔔") midi_tag = get_midi_tag(message) qc_tag = get_qc_tag(message) return f"{level_emoji_tag}{qc_tag}{midi_tag} {message}"