Per virtualhost bandwidth/hitrate statistics for Apache
Anders Nordby
anders at FreeBSD.org
Mon Feb 12 09:43:50 UTC 2007
Hi,
Thanks. But this is to limit bandwidth. I didn't want that. I just want
to measure how much bandwidth is used (and other things), per virtual
host, in real time.
On Wed, Feb 07, 2007 at 10:33:06AM -0500, Jorge Evangelista wrote:
> A days ago I have configured a web server with bandwidth manager
> (module bwmod) compile with apache web server. It works fine. You
> could try install this module http://bwmod.sourceforge.net/index.html
> and test with your virtualhosts.
>
> Here, my small guide install, it made in spanish.
>
> Instalando el bwmod, primero comentar las lineas mencionadas abajo
>
> vi mod_bw.c
>
> /* Compatibility for APR < 1 */
> #if (APR_MAJOR_VERSION >= 1)
> #define apr_atomic_inc32 apr_atomic_inc
> #define apr_atomic_dec32 apr_atomic_dec
> #define apr_atomic_add32 apr_atomic_add
> #define apr_atomic_cas32 apr_atomic_cas
> #define apr_atomic_set32 apr_atomic_set
> #endif
>
>
> Compilar con el siguiente comando
>
> /usr/local/apache2/bin/apxs -i -a -c mod_bw.c
>
>
> Habilitar en apache httpd.conf
>
> BandWidthModule On
>
>
> Para bandwitdh ilimitado a una IP
> BandWidth 200.168.190.6 0
>
>
> Para colocar el bandwidth a los virtual hosts
>
> Limit al internal users to 1000 kb/s with a minimum of 50kb/s
>
> <Virtualhost *>
> BandwidthModule On
> ForceBandWidthModule On
> Bandwidth all 1024000
> MinBandwidth all 50000
> LargeFileLimit * 500 50000
> Servername www.example.com
> </Virtualhost>
>
> Limit every user to a max of 10Kb/s on a vhost :
>
> <Virtualhost *>
> BandwidthModule On
> ForceBandWidthModule On
> Bandwidth all 10240
> MinBandwidth all -1
> Servername www.example.com
> </Virtualhost>
>
>
> Examples :
> BandWidth all 102400
> MinBandWidth all 50000
>
> The example above, will have a top speed of 100kb for the 1º
> client. If more clients come, it will be splitted accordingly but
> everyone will have at least 50kb (even if you have 50 clients)
>
> BandWidth all 50000
> MinBandWidth all -1
>
> This example, makes everyone have 50kb as top speed.
>
>
>
>
>
>
>
> On 2/7/07, John Nielsen <lists at jnielsen.net> wrote:
> >On Wednesday 07 February 2007 08:06, Anders Nordby wrote:
> >> I just wonder if anyone has any good hints about software to use (Apache
> >> module?) for fetching per-virtualhost statistics about bandwidth usage
> >> and hitrates (hits per second) from Apache. I've been using mod_watch
> >> for a while, to graph this with MRTG, but it's discontinued it seems.
> >>
> >> What do people use to measure statistics per virtualhost?
> >
> >I use Apache's logrotate and a separate log directory for each
> >virtualhost. I
> >have a script that runs from cron every day that runs the logs through
> >webalizer and then cleans up logs older than a specified number of days. In
> >fact (since I'm feeling like sharing), here it is:
> >
> >#!/bin/sh
> >for path in `cat /usr/local/scripts/logpaths.txt` ; do
> > for log in `find ${path} -name access\* | sort -n` ; do
> > if [ -r ${path}/hostname.txt ]; then
> > host=`cat ${path}/hostname.txt`
> > /usr/local/bin/webalizer -Q -p -n ${host} \
> > -o ${path} ${log}
> > else
> > /usr/local/bin/webalizer -Q -p -o ${path} ${log}
> > fi
> > done
> > find ${path} -name \*.log\* ! -newermt '1 month ago' -delete
> >done
> >
> >The script depends on the existence of a "logpaths.txt" file, which
> >contains a
> >list of directories to scan, one per line. It also supports an
> >optional "hostname.txt" for each directory so webalizer can use the right
> >one
> >in the title of its reports. Webalizer output is stored in the log
> >directory
> >but that could easily be changed.
> >
> >The output is plain HTML, so you can publish it on a (presumably private)
> >webserver somewhere. Since I give certain clients access to their reports I
> >use webmin for this. However I just point webmin to a dummy file within
> >each
> >log directory and don't let it actually run webalizer (since my script
> >already takes care of that). So just the "View report" button works, but it
> >gets the job done.
> >
> >JN
> >_______________________________________________
> >freebsd-isp at freebsd.org mailing list
> >http://lists.freebsd.org/mailman/listinfo/freebsd-isp
> >To unsubscribe, send any mail to "freebsd-isp-unsubscribe at freebsd.org"
> >
>
>
> --
> "The network is the computer"
> _______________________________________________
> freebsd-isp at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-isp
> To unsubscribe, send any mail to "freebsd-isp-unsubscribe at freebsd.org"
--
Anders.
More information about the freebsd-isp
mailing list