Skip to content

Commit 2dcd7e7

Browse files
committed
fix: newlines for messages in log tail
1 parent 68c629e commit 2dcd7e7

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

torchx/cli/cmd_log.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ def print_log_lines(
6464
streams=streams,
6565
):
6666
prefix = f"{GREEN}{role_name}/{replica_id}{ENDC} "
67-
print(_prefix_line(prefix, line), file=file, end="", flush=True)
67+
print(_prefix_line(prefix, line.strip()), file=file, end="\n", flush=True)
6868
except Exception as e:
6969
exceptions.put(e)
7070
raise

torchx/cli/test/cmd_log_test.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,3 +225,11 @@ def test_prefix_line(self) -> None:
225225
self.assertEqual(
226226
_prefix_line("<prefix>", "foo\ntest\n"), "<prefix>foo\n<prefix>test\n"
227227
)
228+
229+
def test_prefix_line_with_timestamp(self) -> None:
230+
# Test that stripping and prefixing works correctly with timestamp logs
231+
log_with_timestamp = "2024-01-01T10:00:00.123Z [INFO] - Test message\n"
232+
result = _prefix_line("role/0 ", log_with_timestamp.strip())
233+
self.assertEqual(
234+
result, "role/0 2024-01-01T10:00:00.123Z [INFO] - Test message"
235+
)

0 commit comments

Comments
 (0)