Merge pull request #33953 from yongtang:33799-_logger_find_caller-3.8

PiperOrigin-RevId: 279049116
Change-Id: Ie1e6ecaf358c16bc4b80077b735239c17aecaed4
This commit is contained in:
TensorFlower Gardener 2019-11-07 03:23:19 -08:00
commit 6977b8f742

View File

@ -57,9 +57,21 @@ def _get_caller(offset=3):
f = f.f_back
return None, None
# The definition of `findCaller` changed in Python 3.2,
# and further changed in Python 3.8
if _sys.version_info.major >= 3 and _sys.version_info.minor >= 8:
def _logger_find_caller(stack_info=False, stacklevel=1): # pylint: disable=g-wrong-blank-lines
code, frame = _get_caller(4)
sinfo = None
if stack_info:
sinfo = '\n'.join(_traceback.format_stack())
if code:
return (code.co_filename, frame.f_lineno, code.co_name, sinfo)
else:
return '(unknown file)', 0, '(unknown function)', sinfo
elif _sys.version_info.major >= 3 and _sys.version_info.minor >= 2:
# The definition of `findCaller` changed in Python 3.2
if _sys.version_info.major >= 3 and _sys.version_info.minor >= 2:
def _logger_find_caller(stack_info=False): # pylint: disable=g-wrong-blank-lines
code, frame = _get_caller(4)
sinfo = None