123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- .\" Copyright (c) 2017 The strace developers.
- .\" All rights reserved.
- .\"
- .\" SPDX-License-Identifier: LGPL-2.1-or-later
- .\"
- .\" Required option.
- .de OR
- . ie \\n(.$-1 \
- . RI "\fB\\$1\fP" "\ \\$2"
- . el \
- . BR "\\$1"
- ..
- .\"
- .TH STRACE-LOG-MERGE 1 "@MANPAGE_DATE@" "strace @VERSION@"
- .\"
- .SH NAME
- strace-log-merge \- merge strace \-ff \-tt output
- .\"
- .SH SYNOPSIS
- .SY strace\-log\-merge
- .IR STRACE_LOG
- .YS
- .SY strace\-log\-merge
- .OR \-\-help
- .YS
- .\"
- .SH DESCRIPTION
- .B strace\-log\-merge
- merges the output of
- .B strace \-ff \-tt[t]
- command, prepending PID to each line and sorting the result using time stamp as
- a key.
- .\"
- .SH OPTIONS
- .\"
- .TP
- .B \-\-help
- Show program usage and exit.
- .TP
- .I STRACE_LOG
- Output file name prefix of files produced by a
- .B strace -ff -tt[t]
- command.
- .SH EXIT STATUS
- .TP
- .B 0
- Success
- .TP
- .B Non-zero
- Error occurred: either no argument specified (in that case a usage is printed),
- or something went wrong during the processing of
- .IR STRACE_LOG ".*"
- files.
- .\"
- .SH USAGE EXAMPLE
- .sp
- .nf
- .ft CW
- $ 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 +++
- .ft R
- .fi
- .sp
- .\"
- .SH NOTES
- .I strace-log-merge
- does not work well with
- .B strace
- logs generated by
- .B strace -tt
- invocation that pass midnight, as those lack the information required
- for the proper sorting.
- Employing the
- .B -ttt
- option in the respective
- .B strace
- invocation should solve the problem.
- .\"
- .SH BUGS
- .I strace-log-merge
- does not perform any checks whether the files specified are in the correct
- format and implies that only files from a single
- .I strace
- session match
- .IR STRACE_LOG ".*"
- glob pattern.
- .\"
- .SH HISTORY
- The initial version of
- .I strace-log-merge
- was written by Denys Vlasenko in 2012.
- .\"
- .SH REPORTING BUGS
- Problems with
- .B strace-log-merge
- should be reported to the
- .B strace
- mailing list at <strace\-devel@lists.strace.io>.
- .\"
- .SH "SEE ALSO"
- .BR strace (1)
|