From 753f00de657698e8303b2d61e49af61e93b22eaf Mon Sep 17 00:00:00 2001 From: Mike Salvatore Date: Fri, 18 Mar 2022 13:00:48 -0400 Subject: [PATCH] Agent: Put timestamp before random string in log names Putting the timestamp before the random string in the agent and dropper log names allows them to be sorted by time. --- CHANGELOG.md | 2 +- monkey/infection_monkey/utils/monkey_log_path.py | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4af0e245b..c99303957 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,7 +21,7 @@ Changelog](https://keepachangelog.com/en/1.0.0/). - The process list collection system info collector to now be a post-breach action. #1697 - The "/api/monkey/download" endpoint to accept an OS and return a file. #1675 - Log messages to contain human-readable thread names. #1766 -- The log file name to `infection-monkey-agent--.log`. #1761 +- The log file name to `infection-monkey-agent--.log`. #1761 ### Removed - VSFTPD exploiter. #1533 diff --git a/monkey/infection_monkey/utils/monkey_log_path.py b/monkey/infection_monkey/utils/monkey_log_path.py index ef9be4454..b6daa714a 100644 --- a/monkey/infection_monkey/utils/monkey_log_path.py +++ b/monkey/infection_monkey/utils/monkey_log_path.py @@ -7,8 +7,9 @@ from pathlib import Path # Cache the result of the call so that subsequent calls always return the same result @lru_cache(maxsize=None) def _get_log_path(monkey_arg: str) -> Path: - prefix = f"infection-monkey-{monkey_arg}-" - suffix = f"-{time.strftime('%Y-%m-%d-%H-%M-%S', time.gmtime())}.log" + timestamp = time.strftime("%Y-%m-%d-%H-%M-%S", time.gmtime()) + prefix = f"infection-monkey-{monkey_arg}-{timestamp}-" + suffix = ".log" _, monkey_log_path = tempfile.mkstemp(suffix=suffix, prefix=prefix)