f = logging.currentframe().f_back
rv = '(unknown file)', 0, '(unknown function)'
while hasattr(f, 'f_code'):
    co = f.f_code
filename = os.path.normcase(co.co_filename)
if filename in (_srcfile, logging._srcfile):
    f = f.f_back
continue
rv = filename, f.f_lineno, co.co_name
break
return rv
Как написать собственные методы логирования для собственных уровней логирования