LSSTApplications
20.0.0
LSSTDataManagementBasePackage
|
Functions | |
def | logPairs (obj, pairs, logLevel=Log.DEBUG) |
def | logInfo (obj, prefix, logLevel=Log.DEBUG) |
def | timeMethod (func) |
def lsst.pipe.base.timer.logInfo | ( | obj, | |
prefix, | |||
logLevel = Log.DEBUG |
|||
) |
Log timer information to ``obj.metadata`` and ``obj.log``. Parameters ---------- obj : `lsst.pipe.base.Task`-type A `~lsst.pipe.base.Task` or any other object with these two attributes: - ``metadata`` an instance of `lsst.daf.base.PropertyList`` (or other object with ``add(name, value)`` method). - ``log`` an instance of `lsst.log.Log`. prefix Name prefix, the resulting entries are ``CpuTime``, etc.. For example timeMethod uses ``prefix = Start`` when the method begins and ``prefix = End`` when the method ends. logLevel : optional Log level (an `lsst.log` level constant, such as `lsst.log.Log.DEBUG`). Notes ----- Logged items include: - ``Utc``: UTC date in ISO format (only in metadata since log entries have timestamps). - ``CpuTime``: System + User CPU time (seconds). This should only be used in differential measurements; the time reference point is undefined. - ``MaxRss``: maximum resident set size. All logged resource information is only for the current process; child processes are excluded.
Definition at line 62 of file timer.py.
def lsst.pipe.base.timer.logPairs | ( | obj, | |
pairs, | |||
logLevel = Log.DEBUG |
|||
) |
Log ``(name, value)`` pairs to ``obj.metadata`` and ``obj.log`` Parameters ---------- obj : `lsst.pipe.base.Task`-type A `~lsst.pipe.base.Task` or any other object with these two attributes: - ``metadata`` an instance of `lsst.daf.base.PropertyList`` (or other object with ``add(name, value)`` method). - ``log`` an instance of `lsst.log.Log`. pairs : sequence A sequence of ``(name, value)`` pairs, with value typically numeric. logLevel : optional Log level (an `lsst.log` level constant, such as `lsst.log.Log.DEBUG`).
Definition at line 34 of file timer.py.
def lsst.pipe.base.timer.timeMethod | ( | func | ) |
Decorator to measure duration of a task method. Parameters ---------- func The method to wrap. Notes ----- Writes various measures of time and possibly memory usage to the task's metadata; all items are prefixed with the function name. .. warning:: This decorator only works with instance methods of Task, or any class with these attributes: - ``metadata``: an instance of `lsst.daf.base.PropertyList` (or other object with ``add(name, value)`` method). - ``log``: an instance of `lsst.log.Log`. Examples -------- To use:: import lsst.pipe.base as pipeBase class FooTask(pipeBase.Task): pass @pipeBase.timeMethod def run(self, ...): # or any other instance method you want to time pass