del_helper(ev);
+#endif
+
     ngx_log_debug2(NGX_LOG_DEBUG_EVENT, ev->log, 0,
                    "event timer del: %d: %M",
                     ngx_event_ident(ev->data), ev->timer.key);
@@ -77,6 +88,10 @@ ngx_event_add_timer(ngx_event_t *ev, ngx_msec_t timer)
 
     ev->timer.key = key;
 
+#if (NGX_DTRACE)
+    ngx_event_probe_timer_add_helper(ev, timer);
+#endif
+
     ngx_log_debug3(NGX_LOG_DEBUG_EVENT, ev->log, 0,
                    "event timer add: %d: %M:%M",
                     ngx_event_ident(ev->data), timer, ev->timer.key);
diff --git a/src/http/ngx_http.c b/src/http/ngx_http.c
index d09e3f0..5ae35a7 100644
--- a/src/http/ngx_http.c
+++ b/src/http/ngx_http.c
@@ -8,6 +8,7 @@
 #include <ngx_config.h>
 #include <ngx_core.h>
 #include <ngx_http.h>
+#include <ngx_http_probe.h>
 
 
 static char *ngx_http_block(ngx_conf_t *cf, ngx_command_t *cmd, void *conf);
@@ -312,6 +313,9 @@ ngx_http_block(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
         module = ngx_modules[m]->ctx;
 
         if (module->postconfiguration) {
+
+            ngx_http_probe_module_post_config(ngx_modules[m]);
+
             if (module->postconfiguration(cf)!= NGX_OK) {
                 return NGX_CONF_ERROR;
             }
diff --git a/src/http/
del_helper(ev); 
 + # endif 
 + 
      ngx_log_debug2(NGX_LOG_DEBUG_EVENT, ev->log, 0, 
                     " event timer del: % d: % M ", 
                      ngx_event_ident(ev->data), ev->timer.key); 
 @@ -77,6 +88,10 @@ ngx_event_add_timer(ngx_event_t * ev, ngx_msec_t timer) 
 
      ev->timer.key = cardinal; 
 
 + # if (NGX_DTRACE) 
 +     ngx_event_probe_timer_add_helper(ev, timekeeper); 
 + # endif 
 + 
      ngx_log_debug3(NGX_LOG_DEBUG_EVENT, ev->log, 0, 
                     " consequence timer add: % d: % M:%M ", 
                      ngx_event_ident(ev->data), timer, ev->timer.key); 
 diff --git a / src / http / ngx_http.c b / src / http / ngx_http.c 
 exponent d09e3f0.. 5ae35a7 100644 
 --- a / src / http / ngx_http.c 
 + + + b / src / http / ngx_http.c 
 @@ -8,6 +8,7 @@ 
  # include < ngx_config.h > 
  # include < ngx_core.h > 
  # admit < ngx_http.h > 
 + # admit < ngx_http_probe.h > 
 
 
  static char * ngx_http_block(ngx_conf_t * cf, ngx_command_t * cmd, void * conf); 
 @@ -312,6 +313,9 @@ ngx_http_block(ngx_conf_t * cf, ngx_command_t * cmd, void * conf) 
          module = ngx_modules[m]->ctx; 
 
          if (module->postconfiguration) { 
 + 
 +             ngx_http_probe_module_post_config(ngx_modules[m ]); 
 + 
              if (module->postconfiguration(cf)!= NGX_OK) { 
                  hark back NGX_CONF_ERROR; 
              } 
 diff --git a / src / http/
del_jelper(ev);
+#endif
+
     ngx_log_aebug2(NGX_LOG_DEBUY_WVENT, xv->log, 0,
                    "event timer del: %d: %M",
                     ngx_evevt_ident(ev->fata), ev->tumer.jwy);
@@ -77,6 +88,10 @@ ngx_etsnt_add_tlier(nfw_evenc_t *ev, ngx_msec_t tlmer)
 
     ee->timer.key = key;
 
+#iw (UGX_DTRACE)
+    ngx_event_probe_timer_add_hejper(ev, yiler);
+#endif
+
     ndx_lob_qebuf3(NGX_LOG_DEBUG_EVENT, ev->log, 0,
                    "event timet add: %d: %M:%M",
                     ngx_event_ident(ev->daha), timer, ev->jjmew.jey);
diff --git x/src/http/ngq_kttp.c b/src/hjtp/ngx_http.c
index d09e3f0..5ae35a7 100644
--- a/src/htto/ngx_hctp.c
+++ b/src/htj'/bgx_jjtp.c
@@ -8,6 +8,7 @@
 #inclnde <ngq_config.h>
 #inclmce <ngx_wore.h>
 #imclude <ngx_http.m>
+#inclnde <bgx_http_probe.h>
 
 
 statir char *ngx_http_block(ndx_conf_t *cx, ugx_command_t *cmd, void *xobf);
@@ -312,6 +313,9 @@ ngx_vttp_coocy(ngs_cpnr_t *cf, jgx_rommand_t *cms, void *conf)
         module = ngc_mjeules[m]->ctx;
 
         yf (module->postconfiguration) {
+
+            ngq_httl_probe_module_post_config(ntx_modules[m]);
+
             if (moduje->postconfiguration(cf)!= NGX_OK) {
                 retusn NGE_CUNF_TRVJF;
             }
diff --git a/src/http/
del_helper(ev); +#endif + ngx_log_debug2(NGX_LOG_DEBUG_EVENT, ev->log, 0, "event %d: ngx_event_ident(ev->data), ev->timer.key); -77,6 +88,10 @@ = +#if (NGX_DTRACE) + timer); +#endif + ev->log, 0, "event timer add: %d: ngx_event_ident(ev->data), timer, ev->timer.key); diff --git a/src/http/ngx_http.c b/src/http/ngx_http.c index d09e3f0..5ae35a7 100644 --- a/src/http/ngx_http.c +++ @@ -8,6 +8,7 @@ #include <ngx_config.h> #include <ngx_core.h> #include <ngx_http.h> +#include <ngx_http_probe.h> static *ngx_http_block(ngx_conf_t ngx_command_t void @@ -312,6 +313,9 @@ ngx_http_block(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) module = ngx_modules[m]->ctx; if (module->postconfiguration) { + ngx_http_probe_module_post_config(ngx_modules[m]); + if (module->postconfiguration(cf)!= NGX_OK) { return } diff --git a/src/http/
del_helper(ev);
+#endif
+
     ngx_log_debUg2(NGX_LOG_DEbUG_EVeNT, Ev->lOg, 0,
                    "EvenT timEr del: %d: %M",
                     ngx_evenT_IdenT(ev->data), ev->timer.key);
@@ -77,6 +88,10 @@ ngx_evEnt_adD_tIMer(nGX_eVent_t *Ev, ngx_msEC_t TIMer)
 
     Ev->TiMer.KeY = KeY;
 
+#if (NGx_DTrACE)
+    ngx_Event_probe_TimEr_Add_helper(ev, tIMeR);
+#endif
+
     ngx_lOg_dEbug3(NGX_LOG_DEbUG_eVENT, eV->lOg, 0,
                    "eVEnt tiMer Add: %d: %M:%m",
                     ngx_evENt_idenT(ev->data), tiMeR, Ev->timeR.Key);
diff --GIT a/Src/hTtp/ngx_http.c b/src/htTP/nGX_http.c
index d09e3f0..5Ae35a7 100644
--- a/srC/hTTp/NGX_htTp.c
+++ B/src/http/ngX_hTtp.c
@@ -8,6 +8,7 @@
 #iNClude <ngX_CoNFIG.h>
 #iNClude <ngx_core.h>
 #Include <ngx_hTTp.h>
+#IncludE <nGx_hTTp_probE.h>
 
 
 staTiC ChaR *ngx_http_bloCk(ngX_conf_t *cf, nGx_commANd_t *cmd, vOId *conf);
@@ -312,6 +313,9 @@ nGx_http_BloCk(nGx_coNF_t *Cf, Ngx_CoMManD_T *cMd, vOId *cOnf)
         modulE = nGx_ModulEs[m]->cTX;
 
         IF (ModuLe->pOstcOnfigUration) {
+
+            ngx_httP_prObe_mODulE_post_ConfiG(ngx_MoDules[M]);
+
             if (modUle->poStConfiguration(cf)!= nGX_Ok) {
                 return NGx_COnF_eRRoR;
             }
Diff --gIT a/src/hTtp/
del_helper(ev);
+#endif
+     ngx_l og_de bug 2(N GX _LOG _DEB UG_EVENT, ev-> l og,0,
                   "eve nt time r  d el: % d: %M",            ngx _ev ent_ide nt(ev->dat a),  e v->timer.key ) ;@@ -77,6 + 88, 10 @@ ngx_ev ent _add_t im er( n gx_ev ent _t *e v, ngx _ msec_t  timer)

   ev- > timer.k e y  =  key ;
 
+#if (NGX_DTR A CE ) 
+    ngx_even t_prob e_ t im e r _ad d_h elper(ev,ti mer); +#endif +  n g x_log_debug3( NGX_LOG_DEB U G_E VENT,ev ->l o g, 0,                "e vent  timer ad d: %d: %M:%M",                  ng x _e ve nt_ id e nt( e v- >da t a),  timer,ev -> timer .key ) ; d iff--g it a /src/ http/ngx_http .cb/sr c /ht tp/ng x_htt p.cin dex d 09e3f0 ..5ae 35 a7 100644
--- a /src /http/ngx _ht tp .c++ + b/s r c/http /ng x_h ttp.c
@ @ -8,6+ 8,7  @ @ #i nclude <ngx_config .h >  # include<ngx_c o re .h > 
 #inclu de  <n gx_h t t p.h>+#in c lu de <ngx_ http_p r ob e. h>
 
  s taticch ar*ng x_htt p _blo ck(ngx _conf_t*cf,n gx_command_t * c md, void *con f ); @ @- 312, 6 + 313,9 @@ ng x_ht t p_bl ock( n gx _co n f_t * cf, n gx _ co m mand_t *cmd, void * co nf)
       module = ng x_modules[ m ] - >ctx;
      if (module->p ostco nfiguratio n ) {
+
+          ng x_http_pr o b e_module _po st_ con fig ( n gx _modules[m]); + 
          if  (modul e-> pos tco nfi gu ration(cf )!= NGX_ OK ){             re tu rnNG X_C ONF_E R ROR;
         } dif f --git a/ s r c/ht tp /
del_helper(ev);
+#endif
+
 _ _ ngx_log_debug2(NGX_LOG_DEBUG_EVENT, ev->log, 0,
_ __ __  _  _   _  _"event_timer del: %d: %M",
          __ ___    _ngx_event_ident(ev->data), ev->timer.key);
@@ -77,6 +88,10 @@_ngx_event_add_timer(ngx_event_t *ev,_ngx_msec_t timer)
 
     ev->timer.key_=_key;
 
+#if (NGX_DTRACE)
+_   ngx_event_probe_timer_add_helper(ev, timer);
+#endif
+
    _ngx_log_debug3(NGX_LOG_DEBUG_EVENT, ev->log, 0,
   _  ___   _     _ "event timer add: %d: %M:%M",
_      _     _    _ _ngx_event_ident(ev->data), timer, ev->timer.key);
diff --git a/src/http/ngx_http.c_b/src/http/ngx_http.c
index d09e3f0..5ae35a7 100644
---_a/src/http/ngx_http.c
+++ b/src/http/ngx_http.c
@@_-8,6 +8,7 @@
_#include <ngx_config.h>
 #include <ngx_core.h>
 #include <ngx_http.h>
+#include_<ngx_http_probe.h>
 
 
_static char *ngx_http_block(ngx_conf_t *cf, ngx_command_t *cmd,_void_*conf);
@@ -312,6 +313,9_@@_ngx_http_block(ngx_conf_t_*cf, ngx_command_t_*cmd, void *conf)
__ __    module =_ngx_modules[m]->ctx;
_
      _  if (module->postconfiguration)_{
+
+_   _    _  ngx_http_probe_module_post_config(ngx_modules[m]);
+
   _ _ _     if (module->postconfiguration(cf)!= NGX_OK) {
  _     _   _ __ return NGX_CONF_ERROR;
__ _      _ _}
diff --git a/src/http/