Guys,
Thank you all for your input. I can't believe how helpful this list is and I'm very grateful. Ok so here is what I have so far of my script to get the number of apache requests to a given host:
#!/bin/bash
# this script parses mod_status to see which hosts are getting the most requests
echo “Time:” >> /tmp/apache_request_log
/usr/bin/ts >> /tmp/apache_request_log
echo -e “\n” >> /tmp/apache_request_log
echo “hostname” >> /tmp/apache_request_log
/bin/hostname -f >> /tmp/apache_request_log
echo -e “\n” >> /tmp/apache_request_log
echo “hostname ip” >> /tmp/apache_request_log
/bin/hostname -i >> /tmp/apache_request_log
echo -e “\n” >> /tmp/apache_request_log
echo “Requests per second:” >> /tmp/apache_request_log
/usr/bin/GET http://$(/bin/hostname -i)/server-status | /bin/grep -i -e request -e requests/sec | grep -i -v -e currently -e code -e ss | awk '{print $1}' | cut -d'>' -f2 >> /tmp/apache_request_log
echo “Requests processed / Idle workers:” >> /tmp/apache_request_log
/usr/bin/GET http://$(hostname -i)/server-status | /bin/grep -i -e requests -e currently | grep -v -e requests/sec | cut -d'>' -f2 | cut -d'<' -f1 >> /tmp/apache_request_log
echo -e “\n\n” >> /tmp/apache_request_log
/bin/sleep 60
So now my question is, is there any way to limit the size of the output log from within the script without having to use logrotate? I can use that, but I would prefer to do that from within the script if that's possib.e
Thanks
Tim
On Tue, Jun 3, 2014 at 9:29 AM, Patrick Bervoets < patrick.bervoets@psc-elsene.be> wrote:
op 03-06-14 15:18, schreef Tim Dunphy:
[root@uszmpwslp014lc ~]# GET http://$(hostname -i)/server-status |
grep -i requests/sec
<dt>4.08 requests/sec - 80.9 kB/second - 19.8 kB/request</dt>
That works ok. And next I'm grepping it back down and awking it to just the part I'm interested in:
[root@uszmpwslp014lc ~]# GET http://$(hostname -i)/server-status | grep -i -e request -e requests/sec | grep -i -v -e currently -e code -e ss | awk '{print $1}'
<dt>4.08
But now I need to get rid of just the <dt> in front of the 4.08?
cut --delimiter=">" --field=2
you could even get rid of the awk and pipe your grep to cut --delimiter=">" --field=2 | cut --delimiter=" " --field=1
But there are many different ways to solve this.
greetings Patrick
CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos