You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by Jakov Sosic <ja...@srce.hr> on 2010/06/15 23:33:05 UTC

[users@httpd] I/O accounting for all processes?

Hi to all.

I'm interested in measuring I/O that all apache processes are
generating. Is that possible somehow? I know that on Linux, after 2.6.28
there is I/O accounting per PID, but that's not satisfying for me
because apache PIDs in prefork mode change and are not the same...

I need this to calculate I/O needed for my load balancing cluster.

I'm open to all ideas...



-- 
|    Jakov Sosic    |    ICQ: 28410271    |   PGP: 0x965CAE2D   |
=================================================================
| start fighting cancer -> http://www.worldcommunitygrid.org/   |

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Re: [users@httpd] I/O accounting for all processes?

Posted by "Dennis J." <de...@conversis.de>.
On 06/16/2010 06:16 PM, Jakov Sosic wrote:
> On 06/16/2010 06:49 AM, Scott Gifford wrote:
>> On Tue, Jun 15, 2010 at 5:33 PM, Jakov Sosic<jakov.sosic@srce.hr
>> <ma...@srce.hr>>  wrote:
>>
>>      I'm interested in measuring I/O that all apache processes are
>>      generating.
>>
>>
>> I used mod_logio to solve a similar problem not too long ago, with good
>> success:
>
> But it seems that this module records network I/O and not the filesystem
> I/O. Although it's good to know this too, I would prefer more the
> filesystem I/O currently :)

I think this lies outside the scope of Apache and would have to be solved 
on the OS level. I have no idea how this could be done but if you find a 
way let us know as that would be interesting for me too.

Regards,
   Dennis

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Re: [users@httpd] I/O accounting for all processes?

Posted by Scott Gifford <sg...@suspectclass.com>.
On Wed, Jun 16, 2010 at 12:16 PM, Jakov Sosic <ja...@srce.hr> wrote:

> On 06/16/2010 06:49 AM, Scott Gifford wrote:
> > On Tue, Jun 15, 2010 at 5:33 PM, Jakov Sosic <jakov.sosic@srce.hr
> > <ma...@srce.hr>> wrote:
> >
> >     I'm interested in measuring I/O that all apache processes are
> >     generating.
> >
> >
> > I used mod_logio to solve a similar problem not too long ago, with good
> > success:
>
> But it seems that this module records network I/O and not the filesystem
> I/O. Although it's good to know this too, I would prefer more the
> filesystem I/O currently :)
>

Ah, I see.  I haven't done that before, but I can offer random suggestions.
 :-)

You probably know this already, but if Apache is the main or only thing
running on this server, tools like iostat and sar can get the information
you are after on a system-wide basis.  That would be by far the easiest
solution.

Otherwise, if you need to isolate Apache from other parts of the system, it
looks like the information you are after is in /proc/PID/io on Linux.  You
could find all of Apache's PIDs, poll this information periodically, log it,
then calculate usage/second over your log interval.  Tools like mrtg are
designed to manage this sort of data.  iotop might be helpful too.  You
could probably also install some custom request handlers from a module or
mod_perl (in a PerlLogHandler<http://perl.apache.org/docs/2.0/user/handlers/http.html#PerlLogHandler>or
PerlCleanupHandler<http://perl.apache.org/docs/2.0/user/handlers/http.html#PerlCleanupHandler>)
to read this file and record the I/O increase after every request.  This
might help work around your concern about PIDs changing.

Those are the places I would start at least.  Hope this is helpful,

-----Scott.

Re: [users@httpd] I/O accounting for all processes?

Posted by Jakov Sosic <ja...@srce.hr>.
On 06/16/2010 06:49 AM, Scott Gifford wrote:
> On Tue, Jun 15, 2010 at 5:33 PM, Jakov Sosic <jakov.sosic@srce.hr
> <ma...@srce.hr>> wrote:
> 
>     I'm interested in measuring I/O that all apache processes are
>     generating.
> 
> 
> I used mod_logio to solve a similar problem not too long ago, with good
> success:

But it seems that this module records network I/O and not the filesystem
I/O. Although it's good to know this too, I would prefer more the
filesystem I/O currently :)

Thank you for your answer anyway. It's good to know this information.




-- 
|    Jakov Sosic    |    ICQ: 28410271    |   PGP: 0x965CAE2D   |
=================================================================
| start fighting cancer -> http://www.worldcommunitygrid.org/   |

---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Re: [users@httpd] I/O accounting for all processes?

Posted by Scott Gifford <sg...@suspectclass.com>.
On Tue, Jun 15, 2010 at 5:33 PM, Jakov Sosic <ja...@srce.hr> wrote:

> I'm interested in measuring I/O that all apache processes are
> generating.


I used mod_logio to solve a similar problem not too long ago, with good
success:

http://httpd.apache.org/docs/2.0/mod/mod_logio.html


----Scott.