Add append_timestamp option for trace action
This commit is contained in:
parent
2a7f857cc4
commit
5b2280d543
3 changed files with 17 additions and 1 deletions
|
@ -38,6 +38,7 @@ class Trace(Action):
|
||||||
self,
|
self,
|
||||||
*,
|
*,
|
||||||
session_name: str,
|
session_name: str,
|
||||||
|
append_timestamp: bool = False,
|
||||||
base_path: str = path.DEFAULT_BASE_PATH,
|
base_path: str = path.DEFAULT_BASE_PATH,
|
||||||
events_ust: List[str] = names.DEFAULT_EVENTS_ROS,
|
events_ust: List[str] = names.DEFAULT_EVENTS_ROS,
|
||||||
events_kernel: List[str] = names.DEFAULT_EVENTS_KERNEL,
|
events_kernel: List[str] = names.DEFAULT_EVENTS_KERNEL,
|
||||||
|
@ -47,11 +48,13 @@ class Trace(Action):
|
||||||
Constructor.
|
Constructor.
|
||||||
|
|
||||||
:param session_name: the name of the tracing session
|
:param session_name: the name of the tracing session
|
||||||
|
:param append_timestamp: whether to append timestamp to the session name
|
||||||
:param base_path: the path to the base directory in which to create the tracing session directory
|
:param base_path: the path to the base directory in which to create the tracing session directory
|
||||||
:param events_ust: the list of ROS UST events to enable
|
:param events_ust: the list of ROS UST events to enable
|
||||||
:param events_kernel: the list of kernel events to enable
|
:param events_kernel: the list of kernel events to enable
|
||||||
"""
|
"""
|
||||||
super().__init__(**kwargs)
|
super().__init__(**kwargs)
|
||||||
|
session_name = path.append_timestamp(session_name) if append_timestamp else session_name
|
||||||
self.__session_name = session_name
|
self.__session_name = session_name
|
||||||
self.__base_path = base_path
|
self.__base_path = base_path
|
||||||
self.__events_ust = events_ust
|
self.__events_ust = events_ust
|
||||||
|
|
|
@ -42,7 +42,7 @@ def parse_args():
|
||||||
def add_arguments(parser):
|
def add_arguments(parser):
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
'--session-name', '-s', dest='session_name',
|
'--session-name', '-s', dest='session_name',
|
||||||
default=f'session-{time.strftime("%Y%m%d%H%M%S")}',
|
default=path.append_timestamp('session'),
|
||||||
help='the name of the tracing session (default: session-YYYYMMDDHHMMSS)')
|
help='the name of the tracing session (default: session-YYYYMMDDHHMMSS)')
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
'--path', '-p', dest='path',
|
'--path', '-p', dest='path',
|
||||||
|
|
|
@ -13,11 +13,24 @@
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
import os
|
import os
|
||||||
|
import time
|
||||||
|
|
||||||
|
|
||||||
DEFAULT_BASE_PATH = '~/.ros/tracing/'
|
DEFAULT_BASE_PATH = '~/.ros/tracing/'
|
||||||
|
|
||||||
|
|
||||||
|
def append_timestamp(
|
||||||
|
session_name_base: str,
|
||||||
|
) -> str:
|
||||||
|
"""
|
||||||
|
Append timestamp to base session name.
|
||||||
|
|
||||||
|
:param session_name_base: the base name of the tracing session
|
||||||
|
:return: the session name with timestamp
|
||||||
|
"""
|
||||||
|
return session_name_base + '-' + time.strftime("%Y%m%d%H%M%S")
|
||||||
|
|
||||||
|
|
||||||
def get_full_session_path(
|
def get_full_session_path(
|
||||||
session_name: str,
|
session_name: str,
|
||||||
base_path: str = DEFAULT_BASE_PATH
|
base_path: str = DEFAULT_BASE_PATH
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue