Index: openacs-4/packages/acs-admin/tcl/apm-admin-init.tcl =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-admin/tcl/apm-admin-init.tcl,v diff -u -N -r1.3.2.1 -r1.3.2.2 --- openacs-4/packages/acs-admin/tcl/apm-admin-init.tcl 10 Sep 2015 08:21:00 -0000 1.3.2.1 +++ openacs-4/packages/acs-admin/tcl/apm-admin-init.tcl 2 Jan 2016 13:50:15 -0000 1.3.2.2 @@ -7,54 +7,57 @@ } # Only run this if this is openacs.org -#ad_schedule_proc -thread t -schedule_proc ns_schedule_daily [list 0 0] apm_build_repository -# we register the following filters only during startup, since -# existing connection threads are not aware of the throttle object. +if {0} { -if {[ns_server connections] == 0} { - # - # Register the filter progs for url statistics. - # The methods to be called have the name of the filter type. - # - ns_register_filter trace GET /repository/* repository-download + ad_schedule_proc -thread t -schedule_proc ns_schedule_daily [list 0 0] apm_build_repository - if {[info commands ::xo::db::require] ne ""} { - ::xo::db::require table apm_package_downloads { - time timestamp - ip text - user_id integer - channel text - package text - version text - url text - } + # we register the following filters only during startup, since + # existing connection threads are not aware of the throttle object. - ad_proc ::repository_log_to_db {} { - set ip [ns_conn peeraddr] - set user_id [ad_conn user_id] - set url [ns_conn url] - if {[regexp {^/repository/([^/]+)/(.*)-([^-]+).apm$} [ns_conn url] _ channel package version]} { - ::xo::dc dml record_package_download \ - "insert into apm_package_downloads(time, ip, user_id, channel, package, version, url) \ + if {[ns_server connections] == 0} { + # + # Register the filter progs for url statistics. + # The methods to be called have the name of the filter type. + # + ns_register_filter trace GET /repository/* repository-download + + if {[info commands ::xo::db::require] ne ""} { + ::xo::db::require table apm_package_downloads { + time timestamp + ip text + user_id integer + channel text + package text + version text + url text + } + + ad_proc ::repository_log_to_db {} { + set ip [ns_conn peeraddr] + set user_id [ad_conn user_id] + set url [ns_conn url] + if {[regexp {^/repository/([^/]+)/(.*)-([^-]+).apm$} [ns_conn url] _ channel package version]} { + ::xo::dc dml record_package_download \ + "insert into apm_package_downloads(time, ip, user_id, channel, package, version, url) \ values (now(), :ip, :user_id, :channel, :package, :version, :url)" - } - } - } + } + } + } - ad_proc ::repository-download {args} { - } { - ns_log notice "::repository-download called with <$args> [ad_conn user_id] <[ns_conn url]> [ns_conn peeraddr]" - set f [open $::acs::rootdir/log/apm.log a] - puts $f "[clock format [clock seconds]]\t[ns_conn peeraddr]\t[ad_conn user_id]\t[ns_conn url]" - close $f - if {[catch {::repository_log_to_db} errorMsg]} { - ns_log error "repository-download: $errorMsg" - } - return filter_ok - } + ad_proc ::repository-download {args} { + } { + ns_log notice "::repository-download called with <$args> [ad_conn user_id] <[ns_conn url]> [ns_conn peeraddr]" + set f [open $::acs::rootdir/log/apm.log a] + puts $f "[clock format [clock seconds]]\t[ns_conn peeraddr]\t[ad_conn user_id]\t[ns_conn url]" + close $f + if {[catch {::repository_log_to_db} errorMsg]} { + ns_log error "repository-download: $errorMsg" + } + return filter_ok + } + } - }