diff --git a/src/http/ngx_http_request.c b/src/http/ngx_http_request.c
index 2be20aa..e1f0ae7 100644
--- a/src/http/ngx_http_request.c
+++ b/src/http/ngx_http_request.c
@@ -1760,6 +1760,17 @@
         return;
     }
 
+    clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module);
+
+    if (r != r->main && !r->logged) {
+
+        if (clcf->log_subrequest) {
+            ngx_http_log_request(r);
+        }
+
+        r->logged = 1;
+    }
+
     if (r != r->main || rc == NGX_AGAIN) {
         if (ngx_http_set_write_handler(r) != NGX_OK) {
             return;
@@ -1775,8 +1786,6 @@
         return;
     }
 
-    clcf = ngx_http_get_module_loc_conf(r, ngx_http_core_module);
-
     if (r != r->main) {
 
         pr = r->parent;
@@ -1810,11 +1819,6 @@
                 ngx_log_debug2(NGX_LOG_DEBUG_HTTP, c->log, 0,
                                "http fast subrequest: \"%V?%V\" done",
                                &r->uri, &r->args);
-
-                if (clcf->log_subrequest) {
-                    ngx_http_log_request(r);
-                }
-
                 return;
             }
 
@@ -1823,18 +1827,8 @@
                                "http wake parent request: \"%V?%V\"",
                                &pr->uri, &pr->args);
 
-                if (clcf->log_subrequest) {
-                    ngx_http_log_request(r);
-                }
-
                 pr->write_event_handler(pr);
             }
-
-            return;
-        }
-
-        if (clcf->log_subrequest) {
-            ngx_http_log_request(r);
         }
 
         return;
diff --git a/src/http/ngx_http_request.h b/src/http/ngx_http_request.h
index 6368398..2486ca5 100644
--- a/src/http/ngx_http_request.h
+++ b/src/http/ngx_http_request.h
@@ -464,6 +464,7 @@
     unsigned                          expect_tested:1;
     unsigned                          root_tested:1;
     unsigned                          done:1;
+    unsigned                          logged:1;
     unsigned                          utf8:1;
 
     unsigned                          buffered:4;
