Makes use of strace
Project description
ttrace - strace as a tree
Uses strace to trace a program call and displays what's going on in a human
friendly manner.
Installation and Usage
Install ttrace via pip:
[<python executable> -m] pip install [-U] ttrace
A new executable is then provided which can be used instead of strace:
ttrace [<ARGS>] <CMD>
Note that you would'nt provide strace arguments since ttrace provides them
automatically.
Alternatively you can clone and use the current development tree, see below.
Intended interface
The following commands and outputs reflect the current development plan:
ttrace <CMD|LOGFILE>
Prints annotated, pre-formatted and filtered output next to the process' original
stdout and stderr.
ttrace --attach <PID|NAME>
Attaches to the given process and displays all but stdout and stderr of the
process of course.
<CMD> | ttrace [<OTHER-ARGS>]
Same as with attach but using pipe semantics (limited due to the mixing of
stderr and strace output.
ttrace --grep <PATTERN> <CMD>
Applies pattern to the original strace output and only outputs the matching
content.
ttrace --tree <CMD>
Populates and displays a tree while the program is running.
ttrace --hybrid <CMD>
Not sure yet - plan is to have ncurses based split views for optionally any
of the following elements:
- tree output
- combined
stdoutandstderr - alternatively split
stdoutandstderr - strace console
- console with only warning character (whatever that means)
ttrace --timing <CMD>
ToDo for v1.0
- trace process termination
- output growing process tree
- report / visualize abnormal process termination
- report / visualize file access
- optionally turn PIDs into PID counters for comparability
- optionally print timestamp, pid, line number
- no color
- logging
Other ideas
- trace changes environment
- trace docker image usage
- highlight failed processes
Development & Contribution
pip3 install -U poetry pre-commit
git clone --recurse-submodules https://projects.om-office.de/frans/ttrace.git
cd ttrace
pre-commit install
# if you need a specific version of Python inside your dev environment
poetry env use ~/.pyenv/versions/3.10.4/bin/python3
poetry install
License
See License.md
Read
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ttrace-0.1.13.tar.gz.
File metadata
- Download URL: ttrace-0.1.13.tar.gz
- Upload date:
- Size: 13.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.4 Linux/6.6.8-200.fc39.x86_64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
25e3c9a13ffd8a1fb21af16795a4bc39a2fd1dc83b38fc8e2120df5608d0a625
|
|
| MD5 |
c674311d9454f0fba7bda57bb30eef47
|
|
| BLAKE2b-256 |
bce979042f3212ba4c40d89c71e0bf39e6c689faf2b896e1229af5536f8a58ec
|
File details
Details for the file ttrace-0.1.13-py3-none-any.whl.
File metadata
- Download URL: ttrace-0.1.13-py3-none-any.whl
- Upload date:
- Size: 13.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.4 Linux/6.6.8-200.fc39.x86_64
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0eaf5e7824bc4ab1afc2153c1c7f597d0b03274d5a750735247e1f3815f3c7d8
|
|
| MD5 |
1de3f880395ae547fc0c7c33b0b51dd8
|
|
| BLAKE2b-256 |
6c4504c176bbf95aacf8dd98a24eb22096f6a25dbac792bad85d673b96e44b7a
|