get_caller_name

lsst.utils.introspection.get_caller_name(stacklevel: int = 2) → str

Get the name of the caller method.

Any item that cannot be determined (or is not relevant, e.g. a free function has no class) is silently omitted, along with an associated separator.

Parameters:
stacklevel : int

How many levels of stack to skip while getting caller name; 1 means “who calls me”, 2 means “who calls my caller”, etc.

Returns:
name : str

Name of the caller as a string in the form module.class.method. An empty string is returned if stacklevel exceeds the stack height.

Notes

Adapted from http://stackoverflow.com/a/9812105 by adding support to get the class from parentframe.f_locals['cls']