hi Kyle

On 20/01/2012 19:20, Kyle Hailey wrote:

I want to measure incoming/outgoing HTTP traffic in bytes.
Seems simple using the examples in  Brendan's DTrace book talks.
HTTP is discussed  starting on p609.

What about using the TCP provider and using port 80 as the predicate
for the destination port on tcp:::receive and 80 as the source port on
tcp:::send and counting payload bytes? In other words
/usr/demo/dtrace/tcpbytes.d with a slight modification to count for
port 80 only:

tcp:::receive
/ args[4]->tcp_dport == 80/
{
        @bytes[args[2]->ip_saddr, args[4]->tcp_dport] =
            sum(args[2]->ip_plength - args[4]->tcp_offset);
}

tcp:::send
/ args[4]->tcp_sport == 80/
{
        @bytes[args[2]->ip_daddr, args[4]->tcp_sport] =
            sum(args[2]->ip_plength - args[4]->tcp_offset);
}

You could split sent and received bytes into separate
aggregations of course. Hope this helps,

Alan
There is a data structure that looks great:

    typedef struct {
    string hri_uri; /* uri requested */
    string hri_user; /* authenticated user */
    string hri_method; /* method name (GET, POST, ...) */
    string hri_useragent; /* "User-agent" header (browser) */
    uint64_t hri_request; /* request id, unique at a given time */
    u*int64_t hri_bytesread; /* bytes SENT to the client */*
    *uint64_t hri_byteswritten; /* bytes RECEIVED from the client */*
    uint32_t hri_respcode; /* response code */
    } http_reqinfo_t;


but I don't see it on illumos:

    
http://src.illumos.org/source/search?q=&project=illumos-gate&defs=http_reqinfo_t&refs=&path=&hist=
    
<http://src.illumos.org/source/search?q=&project=illumos-gate&defs=http_reqinfo_t&refs=&path=&hist=>


Nor do I see any http probes as mentioned int he examples

    $ sudo dtrace -ln 'http*:::'
ID PROVIDER MODULE FUNCTION NAME
    dtrace: failed to match http*:::: No probe matches description


Looking for any pointers on measuring http traffic.


--
- Kyle

O: +1.415.341.3430
F: +1.650.494.1676
275 Middlefield Road, Suite 50
Menlo Park, CA 94025
http://www.delphix.com <http://www.delphix.com/>


_______________________________________________
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org

_______________________________________________
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org

Reply via email to