9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Roman Shaposhnik <roman@shaposhnik.org>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] dtrace for plan 9
Date: Mon,  9 Nov 2009 20:20:56 -0800	[thread overview]
Message-ID: <e763acc10911092020u6feeae77t6fb17a9e19d3c36b@mail.gmail.com> (raw)
In-Reply-To: <9ab217670911091908u25e0a23bk838bd67c460492ac@mail.gmail.com>

On Mon, Nov 9, 2009 at 7:08 PM, Devon H. O'Dell <devon.odell@gmail.com> wrote:
> 2009/11/9 erik quanstrom <quanstro@coraid.com>:
> That said, my knowledge of DTrace internals greatly surpasses my knowledge of how to
> actually use it, so I'll let Roman help out on that front :)

Which means -- we can nicely compliment each other ;-)

>> before we go all crazy, has anyone else tried ron's
>> great tracing?
>
> It's good, I read the paper and played around with it while I was
> doing some 9vx work. But it's not really the same. Devtrace implements
> a subset of DTrace's functionality.

Well said. I played with it in a very limited context and for what it
was built -- I felt
it was a nice tool. As a matter of fact, at the same time I suggested
to Ron that
a more DTrace'ish extensions of his work could be interesting. More on
that later.

> DTrace does more than syscalls, and a lot of the talk on this thread
> seems to be focused around that, so please let me clarify a bit.

To me, the greatest value of DTrace comes from the fact that it is a
*unified* tracing framework that lets you trace events throughout multiple
layers of software. You can start tracing at the level of hardware interrupt,
pick the event up in Apache, continue into Tomcat and all the way into
middleware.

Yes, I know, on a cleanly designed system -- none of this nonsense would
be needed anyway, but when it is "turtles all the way down" DTrace can let
you see how stuff percolates quite neatly. All the way up to...

> It's also fairly easy to do this. I was at a party with the Sun guys
> at OSCon in 2005. Wez Furlong wrote a DTrace provider for PHP in about
> 30 minutes with Bryan Cantrill, who then rather excitedly ran to me
> explaining how I needed to come look (this is a gross understatement
> for brevity). It was pretty cool, and the code needed for the DTrace
> hooking was smaller than the PHP module skeleton code.

...your own application. Being able to expose the states of your app in
an efficient and unified manner is quite helpful.

> While extending it may be done relatively easy, it is quite big. When
> I was working on porting it to FreeBSD (before jb@ essentially usurped
> the project, anyway), I spent 3 weeks getting CTF and the base DTrace
> provider ported over. Granted, I was much less experienced than now,
> but it is a significant amount of work to reproduce all the
> functionality. I'd estimate a finished version to be about the size of
> the Plan 9 kernel.

Right. I guess the trick is to see how close are we to a point of diminishing
returns. Ron's stuff covers kernel pretty neatly and for everything else -- its
easy enough to spill the guts via 9P.

Thanks,
Roman.



  reply	other threads:[~2009-11-10  4:20 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <<9ab217670911010852h46cc32a0k2e3ef99323287595@mail.gmail.com>
2009-11-01 16:58 ` erik quanstrom
2009-11-01 18:44   ` Nathaniel W Filardo
2009-11-03 15:30     ` Iruata Souza
2009-11-03 18:29       ` Lyndon Nerenberg
2009-11-03 18:50         ` Iruata Souza
2009-11-07 10:45       ` Ethan Grammatikidis
2009-11-07 17:44         ` ron minnich
2009-11-08 14:19         ` dave.l
2009-11-09  0:07           ` dave.l
2009-11-09  0:27             ` hiro
2009-11-09  0:56             ` ron minnich
2009-11-10  0:33             ` Nathaniel W Filardo
2009-11-10  0:46               ` ron minnich
2009-11-10  1:00                 ` Roman Shaposhnik
2009-11-10 20:21                   ` dave.l
2009-11-10 23:38                     ` Roman Shaposhnik
2009-11-13 23:47                       ` dave.l
2009-11-10  2:37                 ` erik quanstrom
2009-11-10  3:08                   ` Devon H. O'Dell
2009-11-10  4:20                     ` Roman Shaposhnik [this message]
2009-11-10  0:47               ` Roman Shaposhnik
     [not found] <<9ab217670911091908u25e0a23bk838bd67c460492ac@mail.gmail.com>
2009-11-10  3:26 ` erik quanstrom
2009-11-10  4:05   ` Devon H. O'Dell
     [not found] <<13426df10911081656q75a7b5aawd01dc9df71beca08@mail.gmail.com>
2009-11-09 14:28 ` erik quanstrom
2009-11-09 15:45   ` ron minnich
2009-11-09 16:01     ` erik quanstrom
     [not found] <<Pine.BSI.4.64.0911011858540.4700@malasada.lava.net>
2009-11-02  5:03 ` erik quanstrom
2009-11-02 15:59   ` David Leimbach
     [not found] <<4AEDB3DD.2010205@maht0x0r.net>
2009-11-01 16:19 ` erik quanstrom
2009-11-01 16:52   ` Devon H. O'Dell
2009-11-01 17:19     ` ron minnich
     [not found] <<e763acc10910312200k4fe66aa8q557dcfe3a1d73ff3@mail.gmail.com>
2009-11-01 13:25 ` erik quanstrom
2009-11-01 16:14   ` matt
2009-11-02  4:59   ` Tim Newsham
     [not found] <<13426df10910271720t7679d169k84fb7d4b9a9cefc5@mail.gmail.com>
2009-10-28  1:49 ` erik quanstrom
2009-10-28  2:23   ` ron minnich
2009-10-28  2:38     ` Jeff Sickel
2009-11-01  3:01       ` dave.l
2009-11-01  3:26         ` ron minnich
2009-11-01  5:00           ` Roman Shaposhnik
2009-10-28  0:20 ron minnich
2009-10-28  0:52 ` Devon H. O'Dell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e763acc10911092020u6feeae77t6fb17a9e19d3c36b@mail.gmail.com \
    --to=roman@shaposhnik.org \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).