mirror of https://github.com/tLDP/python-tldp
adding timing to a few methods
This commit is contained in:
parent
e6833f3989
commit
9137946a05
|
@ -11,7 +11,7 @@ from tempfile import NamedTemporaryFile as ntf
|
||||||
from functools import wraps
|
from functools import wraps
|
||||||
import networkx as nx
|
import networkx as nx
|
||||||
|
|
||||||
from tldp.utils import execute
|
from tldp.utils import execute, logtimings
|
||||||
|
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
@ -98,6 +98,7 @@ class BaseDoctype(object):
|
||||||
def hook_build_failure(self):
|
def hook_build_failure(self):
|
||||||
self.cleanup()
|
self.cleanup()
|
||||||
|
|
||||||
|
@logtimings(logger.debug)
|
||||||
def shellscript(self, script, preamble=preamble, postamble=postamble):
|
def shellscript(self, script, preamble=preamble, postamble=postamble):
|
||||||
source = self.source
|
source = self.source
|
||||||
output = self.output
|
output = self.output
|
||||||
|
@ -127,6 +128,7 @@ class BaseDoctype(object):
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
@logtimings(logger.debug)
|
||||||
def buildall(self):
|
def buildall(self):
|
||||||
stem = self.source.stem
|
stem = self.source.stem
|
||||||
order = nx.dag.topological_sort(self.graph)
|
order = nx.dag.topological_sort(self.graph)
|
||||||
|
@ -142,6 +144,7 @@ class BaseDoctype(object):
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
@logtimings(logger.info)
|
||||||
def generate(self):
|
def generate(self):
|
||||||
stem = self.source.stem
|
stem = self.source.stem
|
||||||
classname = self.__class__.__name__
|
classname = self.__class__.__name__
|
||||||
|
|
|
@ -6,10 +6,12 @@ from __future__ import absolute_import, division, print_function
|
||||||
import os
|
import os
|
||||||
import io
|
import io
|
||||||
import sys
|
import sys
|
||||||
|
import time
|
||||||
import errno
|
import errno
|
||||||
import operator
|
import operator
|
||||||
import subprocess
|
import subprocess
|
||||||
import functools
|
import functools
|
||||||
|
from functools import wraps
|
||||||
from tempfile import mkstemp
|
from tempfile import mkstemp
|
||||||
import logging
|
import logging
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
@ -17,6 +19,20 @@ logger = logging.getLogger(__name__)
|
||||||
logdir = 'tldp-document-build-logs'
|
logdir = 'tldp-document-build-logs'
|
||||||
|
|
||||||
|
|
||||||
|
def logtimings(logmethod):
|
||||||
|
def anon(f):
|
||||||
|
@wraps(f)
|
||||||
|
def timedfunc(*args, **kwargs):
|
||||||
|
s = time.time()
|
||||||
|
result = f(*args, **kwargs)
|
||||||
|
e = time.time()
|
||||||
|
logmethod('running %s(%r, %r) took %.3f s',
|
||||||
|
f.__name__, args, kwargs, e - s)
|
||||||
|
return result
|
||||||
|
return timedfunc
|
||||||
|
return anon
|
||||||
|
|
||||||
|
|
||||||
def firstfoundfile(locations):
|
def firstfoundfile(locations):
|
||||||
'''return the first existing file from a list of filenames (or None)'''
|
'''return the first existing file from a list of filenames (or None)'''
|
||||||
for option in locations:
|
for option in locations:
|
||||||
|
|
Loading…
Reference in New Issue