diff options
author | Jim Jagielski <jim@apache.org> | 2005-02-02 20:32:18 +0100 |
---|---|---|
committer | Jim Jagielski <jim@apache.org> | 2005-02-02 20:32:18 +0100 |
commit | 9e6b47277246f41fcb2db44be9bdc4adf0779baa (patch) | |
tree | da884dde833e05e9c64b0f8115be747f9a0d2e2b | |
parent | Update Japanese translation. (diff) | |
download | apache2-9e6b47277246f41fcb2db44be9bdc4adf0779baa.tar.xz apache2-9e6b47277246f41fcb2db44be9bdc4adf0779baa.zip |
Keep track of time taken to process requests again.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@149550 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | CHANGES | 3 | ||||
-rw-r--r-- | include/scoreboard.h | 2 | ||||
-rw-r--r-- | modules/http/http_request.c | 4 | ||||
-rw-r--r-- | server/scoreboard.c | 6 |
4 files changed, 11 insertions, 4 deletions
@@ -2,6 +2,9 @@ Changes with Apache 2.1.3 [Remove entries to the current 2.0 section below, when backported] + *) Start keeping track of time-taken-to-process-request again for + mod_status if ExtendedStatus is enabled. [Jim Jagielski] + *) mod_cache: Add CacheStorePrivate and CacheStoreNoStore directive. [Justin Erenkrantz] diff --git a/include/scoreboard.h b/include/scoreboard.h index 0a045d1859..2c41e86405 100644 --- a/include/scoreboard.h +++ b/include/scoreboard.h @@ -174,7 +174,7 @@ AP_DECLARE(int) find_child_by_pid(apr_proc_t *pid); AP_DECLARE(int) ap_update_child_status(ap_sb_handle_t *sbh, int status, request_rec *r); AP_DECLARE(int) ap_update_child_status_from_indexes(int child_num, int thread_num, int status, request_rec *r); -void ap_time_process_request(int child_num, int thread_num, int status); +void ap_time_process_request(ap_sb_handle_t *sbh, int status); AP_DECLARE(worker_score *) ap_get_scoreboard_worker(int x, int y); AP_DECLARE(process_score *) ap_get_scoreboard_process(int x); diff --git a/modules/http/http_request.c b/modules/http/http_request.c index 1f03a52998..3c7787805e 100644 --- a/modules/http/http_request.c +++ b/modules/http/http_request.c @@ -248,6 +248,8 @@ void ap_process_request(request_rec *r) * Use this hook with extreme care and only if you know what you are * doing. */ + if (ap_extended_status) + ap_time_process_request(r->connection->sbh, START_PREQUEST); access_status = ap_run_quick_handler(r, 0); /* Not a look-up request */ if (access_status == DECLINED) { access_status = ap_process_request_internal(r); @@ -278,6 +280,8 @@ void ap_process_request(request_rec *r) check_pipeline_flush(r); ap_update_child_status(r->connection->sbh, SERVER_BUSY_LOG, r); ap_run_log_transaction(r); + if (ap_extended_status) + ap_time_process_request(r->connection->sbh, STOP_PREQUEST); } static apr_table_t *rename_original_env(apr_pool_t *p, apr_table_t *t) diff --git a/server/scoreboard.c b/server/scoreboard.c index 465cb3d886..325a1fcb89 100644 --- a/server/scoreboard.c +++ b/server/scoreboard.c @@ -448,15 +448,15 @@ AP_DECLARE(int) ap_update_child_status(ap_sb_handle_t *sbh, int status, status, r); } -void ap_time_process_request(int child_num, int thread_num, int status) +void ap_time_process_request(ap_sb_handle_t *sbh, int status) { worker_score *ws; - if (child_num < 0) { + if (sbh->child_num < 0) { return; } - ws = &ap_scoreboard_image->servers[child_num][thread_num]; + ws = &ap_scoreboard_image->servers[sbh->child_num][sbh->thread_num]; if (status == START_PREQUEST) { ws->start_time = apr_time_now(); |