[httperf] patch to httperf-0.8

Martin Arlitt arlitt@granite.hpl.hp.com
Mon, 25 Mar 2002 06:39:31 -0800 (PST)


Dave

thanks for the enhancement.

Martin

On Fri, 22 Mar 2002, David Viner wrote:

> hi all,
>   i think httperf is great, but parsing the output is kind of difficult
> right now.  so i've made a patch which adds a new command line
> parameter --output-xml.  when specified, the output looks like:
> 
> 
> httperf --hog --timeout=1 --client=0/1 --server=quintara.corp.yahoo.com --po
> rt=80 --uri=/test/page.php --send-buffer=4096 --recv-buffer=16384 --num-conn
> s=1000 --num-calls=1 --output-xml
> Maximum connect burst length: 1
> <results>
> <totals>
>         <total type="connections">1000</total>
>         <total type="requests">1000</total>
>         <total type="replies">1000</total>
>         <total type="test_duration">14.788</total>
> </totals>
> 
> <connection concurrent_conns="1">
>         <rate unit="conns/sec">67.6</rate>
>         <rate unit="ms/conn">14.8</rate>
>         <time desc="connection lifetime" unit="ms" min="13.4" avg="14.8"
> max="81.7" median="13.5" stddev="5.2" />
>         <time desc="time to connect" unit="ms">0.2</time>
>         <rate unit="replies/conn">1.000</rate>
> </connection>
> 
> <request>
>         <rate unit="req/s">67.6</rate>
>         <rate unit="ms/req">14.8</rate>
>         <size unit="byte">87.0</size>
> </request>
> 
> <reply unit="replies/s" min="56.8" avg="64.9" max="73.0" stddev="11.5"
> samples="2">
>         <times unit="ms">
>                 <time type="response">10.9</time>
>                 <time type="transfer">3.6</time>
>         </times>
>         <sizes unit="bytes">
>                 <size type="header">339.0</size>
>                 <size type="content">39519.0</size>
>                 <size type="footer">2.0</size>
>                 <size type="total">39860.0</size>
>         </sizes>
>         <status>
>                 <stat unit="1xx">0</stat>
>                 <stat unit="2xx">1000</stat>
>                 <stat unit="3xx">0</stat>
>                 <stat unit="4xx">0</stat>
>                 <stat unit="5xx">0</stat>
>         </status>
> </reply>
> 
> <cpu>
>         <time unit="s" pct="99.9%">
>                 <user pct="31.4%">4.65</user>
>                 <system pct="68.5%">10.13</system>
>         </time>
>         <net_io>
>                 <rate unit="kb/s">2637.8</rate>
>                 <rate unit="bps">21.6*10^6</rate>
>         </net_io>
> </cpu>
> 
> <errors total="0">
>         <error type="client-timo">0</error>
>         <error type="socket-timo">0</error>
>         <error type="connrefused">0</error>
>         <error type="connreset">0</error>
>         <error type="fd-unavail">0</error>
>         <error type="addrunavail">0</error>
>         <error type="ftab-full">0</error>
>         <error type="other">0</error>
> </errors>
> </results>
> 
> Although this is a little verbose, it does make it much easier to parse in
> other programs.  I'm attaching the patch file for your consideration.
> 
> Comments? Questions? Concerns? Flames?
> 
> thanks
> dave viner
>