rrdtool.txt 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. =======
  2. rrdtool
  3. =======
  4. -------------------
  5. Module: mod_rrdtool
  6. -------------------
  7. :Author: Jan Kneschke
  8. :Date: $Date: 2004/08/29 09:43:49 $
  9. :Revision: $Revision: 1.1 $
  10. :abstract:
  11. mod_rrdtool is used to monitor the traffic and load on the webserver
  12. .. meta::
  13. :keywords: lighttpd, skeleton
  14. .. contents:: Table of Contents
  15. Description
  16. ===========
  17. RRD_ is a system to store and display time-series data (i.e. network
  18. bandwidth, machine-room temperature, server load average).
  19. .. _RRD: http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/
  20. Options
  21. =======
  22. rrdtool.binary
  23. path to the rrdtool binary
  24. e.g.: ::
  25. rrdtool.binary = "/usr/bin/rrdtool"
  26. rrdtool.db-name
  27. filename of the rrd-database. Make sure that <rrdtool.db-name> doesn't exist
  28. before the first run, as lighttpd has to create the DB for you.
  29. e.g.: ::
  30. rrdtool.db-name = "/var/www/lighttpd.rrd"
  31. Generating Graphs
  32. =================
  33. ::
  34. #!/bin/sh
  35. RRDTOOL=/usr/bin/rrdtool
  36. OUTDIR=/var/www/servers/www.example.org/pages/rrd/
  37. INFILE=/var/www/lighttpd.rrd
  38. OUTPRE=lighttpd-traffic
  39. DISP="-v bytes --title TrafficWebserver \
  40. DEF:binraw=$INFILE:InOctets:AVERAGE \
  41. DEF:binmaxraw=$INFILE:InOctets:MAX \
  42. DEF:binminraw=$INFILE:InOctets:MIN \
  43. DEF:bout=$INFILE:OutOctets:AVERAGE \
  44. DEF:boutmax=$INFILE:OutOctets:MAX \
  45. DEF:boutmin=$INFILE:OutOctets:MIN \
  46. CDEF:bin=binraw,-1,* \
  47. CDEF:binmax=binmaxraw,-1,* \
  48. CDEF:binmin=binminraw,-1,* \
  49. CDEF:binminmax=binmaxraw,binminraw,- \
  50. CDEF:boutminmax=boutmax,boutmin,- \
  51. AREA:binmin#ffffff: \
  52. STACK:binmax#f00000: \
  53. LINE1:binmin#a0a0a0: \
  54. LINE1:binmax#a0a0a0: \
  55. LINE2:bin#a0a735:incoming \
  56. GPRINT:bin:MIN:%.2lf \
  57. GPRINT:bin:AVERAGE:%.2lf \
  58. GPRINT:bin:MAX:%.2lf \
  59. AREA:boutmin#ffffff: \
  60. STACK:boutminmax#00f000: \
  61. LINE1:boutmin#a0a0a0: \
  62. LINE1:boutmax#a0a0a0: \
  63. LINE2:bout#a0a735:outgoing \
  64. GPRINT:bout:MIN:%.2lf \
  65. GPRINT:bout:AVERAGE:%.2lf \
  66. GPRINT:bout:MAX:%.2lf \
  67. "
  68. $RRDTOOL graph $OUTDIR/$OUTPRE-hour.png -a PNG --start -14400 $DISP
  69. $RRDTOOL graph $OUTDIR/$OUTPRE-day.png -a PNG --start -86400 $DISP
  70. $RRDTOOL graph $OUTDIR/$OUTPRE-month.png -a PNG --start -2592000 $DISP
  71. OUTPRE=lighttpd-requests
  72. DISP="-v req --title RequestsperSecond -u 1 \
  73. DEF:req=$INFILE:Requests:AVERAGE \
  74. DEF:reqmax=$INFILE:Requests:MAX \
  75. DEF:reqmin=$INFILE:Requests:MIN \
  76. CDEF:reqminmax=reqmax,reqmin,- \
  77. AREA:reqmin#ffffff: \
  78. STACK:reqminmax#0e0e0e: \
  79. LINE1:reqmin#a0a0a0: \
  80. LINE1:reqmax#a0a0a0: \
  81. LINE2:req#00a735:requests"
  82. $RRDTOOL graph $OUTDIR/$OUTPRE-hour.png -a PNG --start -14400 $DISP
  83. $RRDTOOL graph $OUTDIR/$OUTPRE-day.png -a PNG --start -86400 $DISP
  84. $RRDTOOL graph $OUTDIR/$OUTPRE-month.png -a PNG --start -2592000 $DISP