Skip to content
Snippets Groups Projects
Commit d0b8a3cf authored by Augie Fackler's avatar Augie Fackler
Browse files

tracing: extract tracing-active logic to separate function

I'm about to add support for counters, and want to avoid duplicating this
logic.

Differential Revision: https://phab.mercurial-scm.org/D6525
parent ff562d71
No related branches found
No related tags found
No related merge requests found
......@@ -13,8 +13,7 @@
_pipe = None
_checked = False
@contextlib.contextmanager
def log(whencefmt, *whenceargs):
def _isactive():
global _pipe, _session, _checked
if _pipe is None:
if _checked:
......@@ -18,7 +17,6 @@
global _pipe, _session, _checked
if _pipe is None:
if _checked:
yield
return
return False
_checked = True
if 'HGCATAPULTSERVERPIPE' not in os.environ:
......@@ -23,6 +21,5 @@
_checked = True
if 'HGCATAPULTSERVERPIPE' not in os.environ:
yield
return
return False
_pipe = open(os.environ['HGCATAPULTSERVERPIPE'], 'w', 1)
_session = os.environ.get('HGCATAPULTSESSION', 'none')
......@@ -27,5 +24,12 @@
_pipe = open(os.environ['HGCATAPULTSERVERPIPE'], 'w', 1)
_session = os.environ.get('HGCATAPULTSESSION', 'none')
return True
@contextlib.contextmanager
def log(whencefmt, *whenceargs):
if not _isactive():
yield
return
whence = whencefmt % whenceargs
try:
# Both writes to the pipe are wrapped in try/except to ignore
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment