diff options
author | Phil Davis <phil.davis@world.inf.org> | 2013-03-15 07:55:37 +0545 |
---|---|---|
committer | Phil Davis <phil.davis@world.inf.org> | 2013-03-15 07:55:37 +0545 |
commit | daab0f59284deb8ba91f9d87498a98846f2f87a0 (patch) | |
tree | 0fc351caa4275a592147c243896464e061fba83a | |
parent | cbe0db0aff3429bc10115b44459f61bb570bb56d (diff) | |
download | pfsense-packages-daab0f59284deb8ba91f9d87498a98846f2f87a0.tar.gz pfsense-packages-daab0f59284deb8ba91f9d87498a98846f2f87a0.tar.bz2 pfsense-packages-daab0f59284deb8ba91f9d87498a98846f2f87a0.zip |
bandwidthd - rotate log files when output_cdf is enabled
-rw-r--r-- | config/bandwidthd/bandwidthd.inc | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/config/bandwidthd/bandwidthd.inc b/config/bandwidthd/bandwidthd.inc index 47a4b1fd..4e0107eb 100644 --- a/config/bandwidthd/bandwidthd.inc +++ b/config/bandwidthd/bandwidthd.inc @@ -46,6 +46,8 @@ function bandwidthd_install_deinstall() { exec("rm -f /usr/local/etc/rc.d/bandwidthd*"); exec("rm -rf " . PKG_BANDWIDTHD_BASE . "/htdocs"); exec("rm -f /usr/local/www/bandwidthd"); + // Remove the cron job, if it is there + install_cron_job("/bin/kill -HUP `cat /var/run/bandwidthd.pid`", false); conf_mount_ro(); config_unlock(); } @@ -79,7 +81,9 @@ function bandwidthd_install_config() { $recover_cdf = "recover_cdf true\n"; $output_cdf = $config['installedpackages']['bandwidthd']['config'][0]['outputcdf']; if($output_cdf) - $output_cdf = "output_cdf true\n"; + $output_cdf_string = "output_cdf true\n"; + else + $output_cdf_string = ""; $promiscuous = $config['installedpackages']['bandwidthd']['config'][0]['promiscuous']; if($promiscuous) $promiscuous = "promiscuous true\n"; @@ -180,7 +184,7 @@ $graph_cutoff $promiscuous #Log data to cdf file htdocs/log.cdf -$output_cdf +$output_cdf_string #Read back the cdf file on startup $recover_cdf @@ -297,6 +301,16 @@ EOD; if (!file_exists($bandwidthd_index_file)) { exec("echo \"Please start bandwidthd to populate this directory.\" > " . $bandwidthd_index_file); } + + if($output_cdf) { + // Use cron job to rotate logs every day at 00:01 + install_cron_job("/bin/kill -HUP `cat /var/run/bandwidthd.pid`", true, "1", "0"); + } + else + { + // Remove the cron job, if it is there + install_cron_job("/bin/kill -HUP `cat /var/run/bandwidthd.pid`", false); + } conf_mount_ro(); config_unlock(); stop_service("bandwidthd"); |