https://github.com/dgl/perl-sys-trace
Perl interface to system call tracing interfaces (strace, ktrace)
https://github.com/dgl/perl-sys-trace
Last synced: about 1 year ago
JSON representation
Perl interface to system call tracing interfaces (strace, ktrace)
- Host: GitHub
- URL: https://github.com/dgl/perl-sys-trace
- Owner: dgl
- Created: 2010-06-28T00:23:02.000Z (almost 16 years ago)
- Default Branch: master
- Last Pushed: 2018-09-04T05:21:54.000Z (almost 8 years ago)
- Last Synced: 2025-04-13T03:14:56.864Z (about 1 year ago)
- Language: Perl
- Homepage:
- Size: 104 KB
- Stars: 2
- Watchers: 3
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README
- Changelog: Changes
Awesome Lists containing this project
README
NAME
Sys::Trace - Interface to system call tracing interfaces
SYNOPSIS
use Sys::Trace;
my $trace = Sys::Trace->new(exec => [qw(ls foo)]);
$trace->start; # Returns a PID which you can watch
$trace->wait; # Alternatively call this to wait on the PID
my $result = $trace->results; # Returns a Sys::Trace::Results object
use Cwd;
print $result->files(getcwd . "/"); # Should show an attempt to look at "foo"
# in the current directory (i.e. "ls
# foo", above)
DESCRIPTION
Provides a way to programmatically run or trace a program and see the
system calls it makes.
This can be useful during testing as a way to ensure a particular file
is actually opened, or another hard to test interaction actually occurs.
Currently supported tracing mechanisms are strace and ktrace.
METHODS
new(%args)
Keys in %args can be:
* exec: Program and arguments to execute
* pid: PID of program to trace
Only one of exec or pid must be provided.
start
Start running the trace.
wait
Wait for the trace to finish
results
Return a Sys::Trace::Results object populated with the results of the
trace.
BUGS
This does what I wanted, it is probably woefully incomplete in places.
See .
LICENSE
This program is free software. It comes without any warranty, to the
extent permitted by applicable law. You can redistribute it and/or
modify it under the terms of the Do What The Fuck You Want To Public
License, Version 2, as published by Sam Hocevar. See
http://sam.zoy.org/wtfpl/COPYING or Software::License::WTFPL_2 for more
details.
AUTHOR
David Leadbeater , 2010