ведение стека для регистрации при обнаружении ошибки в вызове функции - PullRequest
0 голосов
/ 16 ноября 2018

Я пытаюсь записать точную строку, где возникает ошибка в python, но я получаю только место, где регистрируется ошибка.

import logging

def main():
    log = logging.getLogger()
    hdlr = logging.FileHandler(r'C:\Users\kjain\Desktop\!exports\bug\errors.log', mode='w')
    formatter = logging.Formatter('''%(asctime)s\n%(levelname)s: %(filename)s | %(funcName)s | Line: %(lineno)d
%(message)s\n''')
    hdlr.setFormatter(formatter)
    log.addHandler(hdlr)

    try:
        callDiv()
    except Exception as e:
        log.error(e)

def callDiv():
    raise Exception('My error message')

main()

Мой вывод:

2018-11-15 20: 44: 54,451

ОШИБКА: ProcessStoryboardProLayouts.py |главная |Строка: 14

Мое сообщение об ошибке

Как вы можете видеть, это регистрирует ошибку в main в строке 14. Я бы хотел, чтобы она регистрировала ошибку в callDiv,Есть ли способ сделать это?

...