from dynaconf import settings from threading import Thread from intelab_python_sdk.dingtalk import DingTalkMessage def send_alarm_to_developer(service_name, e, mobiles=None): config = settings.get('DINGTALK') mobiles = mobiles or config.get('MOBILES') if isinstance(e, Exception): import traceback content = '告警::\n{}服务模块出错:\n {}'.format( service_name, traceback.format_exc()) else: content = e dt = DingTalkMessage(config.get('WEBHOOK'), config.get('SECRET')) Thread(target=dt.send_text, args=(content, mobiles, False)).start() def send_markdown(title, text, mobiles=None): dingtalk_config = settings.get('DINGTALK') dingtalk = DingTalkMessage(dingtalk_config.get('WEBHOOK'), dingtalk_config.get('SECRET')) dingtalk.send_markdown(title, text, mobiles)