strace-log-merge(1) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | EXIT STATUS | USAGE EXAMPLE | NOTES | BUGS | HISTORY | REPORTING BUGS | SEE ALSO | COLOPHON

STRACE-LOG-MERGE(1)      General Commands Manual      STRACE-LOG-MERGE(1)

NAME         top

       strace-log-merge - merge strace -ff -tt output

SYNOPSIS         top

       strace-log-merge STRACE_LOG

       strace-log-merge --help

DESCRIPTION         top

       strace-log-merge merges log files produced by the strace -ff
       -tt[t] command.  It prepends the Process ID (PID) to each line and
       sorts the combined output chronologically by timestamp.

OPTIONS         top

       --help Show program usage and exit.

       STRACE_LOG
              Specifies the file name prefix for the log files produced
              by a strace -ff -tt[t] command.  The utility will read all
              files matching the STRACE_LOG.* pattern.

EXIT STATUS         top

       0      Success

       Non-zero
              An error occurred.  This can be due to a missing argument
              (in which case usage information is printed) or a failure
              during the processing of the STRACE_LOG.*  files.

USAGE EXAMPLE         top

       $ strace -o sleepy -ff -tt -e trace=execve,nanosleep \
               sh -c 'sleep 0.1 & sleep 0.2 & sleep 0.3'
       $ strace-log-merge sleepy | fold -w 72 -s
       13475 21:13:52.040837 execve("/bin/sh", ["sh", "-c", "sleep 0.1 & sleep
       0.2 & sleep 0."...], 0x7ffde54b2450 /* 33 vars */) = 0
       13478 21:13:52.044050 execve("/bin/sleep", ["sleep", "0.3"],
       0x5631be4f87a8 /* 33 vars */) = 0
       13476 21:13:52.044269 execve("/bin/sleep", ["sleep", "0.1"],
       0x5631be4f87a8 /* 33 vars */) = 0
       13477 21:13:52.044389 execve("/bin/sleep", ["sleep", "0.2"],
       0x5631be4f87a8 /* 33 vars */) = 0
       13478 21:13:52.046207 nanosleep({tv_sec=0, tv_nsec=300000000}, NULL) = 0
       13476 21:13:52.046303 nanosleep({tv_sec=0, tv_nsec=100000000}, NULL) = 0
       13477 21:13:52.046318 nanosleep({tv_sec=0, tv_nsec=200000000}, NULL) = 0
       13476 21:13:52.146852 +++ exited with 0 +++
       13475 21:13:52.146942 --- SIGCHLD {si_signo=SIGCHLD,
       si_code=CLD_EXITED, si_pid=13476, si_uid=1000, si_status=0, si_utime=0,
       si_stime=0} ---
       13477 21:13:52.247782 +++ exited with 0 +++
       13475 21:13:52.247885 --- SIGCHLD {si_signo=SIGCHLD,
       si_code=CLD_EXITED, si_pid=13477, si_uid=1000, si_status=0, si_utime=0,
       si_stime=0} ---
       13478 21:13:52.347680 +++ exited with 0 +++
       13475 21:13:52.347786 --- SIGCHLD {si_signo=SIGCHLD,
       si_code=CLD_EXITED, si_pid=13478, si_uid=1000, si_status=0, si_utime=0,
       si_stime=0} ---
       13475 21:13:52.348069 +++ exited with 0 +++

NOTES         top

       strace-log-merge may fail to correctly sort logs that were
       generated with -tt and span across midnight.  This is because the
       standard -tt timestamp lacks date information, which is required
       for proper sorting.  Using the -ttt option with strace solves this
       problem, as its timestamp format includes the date.

BUGS         top

       strace-log-merge does not validate the format of the input files.
       It assumes that all files matching the STRACE_LOG.*  glob pattern
       are correctly formatted log files from a single strace session.

HISTORY         top

       The initial version of strace-log-merge was written by Denys
       Vlasenko in 2012.

REPORTING BUGS         top

       Problems with strace-log-merge should be reported to the strace
       mailing list at <strace-devel@lists.strace.io>.

SEE ALSO         top

       strace(1)

COLOPHON         top

       This page is part of the strace (system call tracer) project.
       Information about the project can be found at ⟨http://strace.io/⟩.
       If you have a bug report for this manual page, send it to
       strace-devel@lists.sourceforge.net.  This page was obtained from
       the project's upstream Git repository
       ⟨https://github.com/strace/strace.git⟩ on 2025-08-11.  (At that
       time, the date of the most recent commit that was found in the
       repository was 2025-08-06.)  If you discover any rendering
       problems in this HTML version of the page, or you believe there is
       a better or more up-to-date source for the page, or you have
       corrections or improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to
       man-pages@man7.org

strace 6.16.0.1.ca9fa           2025-07-02            STRACE-LOG-MERGE(1)

Pages that refer to this page: strace(1)