Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: zhangwei(Jovi) <jovi.zhangwei <at> huawei.com>
Subject: [ANNOUNCE] ktap 0.1 released
Newsgroups: gmane.linux.kernel
Date: Tuesday 21st May 2013 03:56:14 UTC (over 3 years ago)
Dear,

I'm pleased to announce that ktap release v0.1, this is the first official
release of ktap project, it is expected that this release is not fully
functional or very stable and we welcome bug reports and fixes for the
issues.

= what's ktap?

   A New Scripting Dynamic Tracing Tool For Linux

   KTAP is a new scripting dynamic tracing tool for Linux, it uses a
   scripting language and lets users trace the Linux kernel dynamically.
   KTAP is designed to give operational insights with interoperability
   that allow users to tune, troubleshoot and extend kernel and
application.

   KTAP have different design principles from Linux mainstream dynamic
tracing
   language in that it's based on bytecode, so it doesn't depend upon GCC,
   doesn't require compiling a kernel module, safe to use in production
   environment, fulfilling the embedd ecosystem's tracing needs.

   KTAP also is designed for enabling great interoperability with Linux
kernel,
   it gives user the power to modify and extend the system, and let users
   explore the system in an easy way.

   KTAP is released as GPL license.

   More information can be found at ktap/doc directory.

= Features

   Because this is the first release, so there wouldn't include too much
features,
   just contain several basic features about tracing,  here are the
summary:

   1) support x86-32 and x86-64 (other arch is not tested yet)
   2) support tracepoints, syscalls, kprobes, kretprobes
   3) timer
   4) dumpstack
   5) many built-in functions and library functions in there

   There have many features on the todo list, so it will support more
   features in future, and be more stable than this release.

= Planned Changes

   we are planning to enable more kernel ineroperability into ktap,
implement more
   sample scripts, and performance boost.

= Code

   Please download code from:
   https://github.com/ktap/ktap.git

= Building & Running

   [[email protected]]# cd linux/kernel/trace/
   [[email protected]]# git clone https://github.com/ktap/ktap.git

   [[email protected]]# cd linux/kernel/trace/ktap
   [[email protected]]# make       #generate ktapvm kernel module
   [[email protected]]# make ktap  #generate userspace ktap tool

   [[email protected]]# insmod ./ktapvm.ko
   [[email protected]]# ./ktap scripts/syscalls.kp


= Simple syscall tracing example

        function eventfun (e) {
                printf("%d %d\t%s\t%s", cpu(), pid(), execname(),
e.tostring())
        }

        kdebug.probe("tp:syscalls", eventfun)

        kdebug.probe_end(function () {
                printf("probe end\n")
        })


= Examples/Documentation

   Example is in ktap/scripts/
   Documentation is in ktap/doc/

= Mailing list

   [email protected]
   You can subscribe KTAP mailing list at link: http://www.freelists.org/list/ktap

= Contribution

   KTAP is still under active development, so contribution is welcome.
   You are encouraged to report bugs, provide feedback, send feature
request, or hack on it.

.jovi
 
CD: 4ms