You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by rj...@apache.org on 2022/06/23 18:32:12 UTC

[tomcat-connectors] branch main updated: Switch from logger to log context - part 1:

This is an automated email from the ASF dual-hosted git repository.

rjung pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat-connectors.git


The following commit(s) were added to refs/heads/main by this push:
     new e073520ba Switch from logger to log context - part 1:
e073520ba is described below

commit e073520badfa4a4fd9b2182e76f7e39451ad37f6
Author: Rainer Jung <ra...@kippdata.de>
AuthorDate: Thu Jun 23 20:29:40 2022 +0200

    Switch from logger to log context - part 1:
    
    - define a new struct jk_log_context_t,
      containing a jk_logger_t and a log context
      id, which can be used eg. by a request id
    
    - add jk_log_content_t to the service struct
    
    - change function declarations from using a
      jk_logger_t argument to jk_log_context_t
    
    This breaks compilation, but the huge change is split up in parts
    to simplify review.
---
 native/common/jk_ajp12_worker.h   |  2 +-
 native/common/jk_ajp13.h          |  2 +-
 native/common/jk_ajp13_worker.h   |  2 +-
 native/common/jk_ajp14.h          | 28 ++++++++++++++--------------
 native/common/jk_ajp14_worker.h   |  2 +-
 native/common/jk_ajp_common.h     | 34 +++++++++++++++++-----------------
 native/common/jk_connect.h        | 16 ++++++++--------
 native/common/jk_lb_worker.h      | 26 +++++++++++++-------------
 native/common/jk_logger.h         | 13 ++++++++++---
 native/common/jk_map.h            | 10 +++++-----
 native/common/jk_msg_buff.h       |  2 +-
 native/common/jk_service.h        | 25 +++++++++++++++----------
 native/common/jk_shm.h            | 14 +++++++-------
 native/common/jk_status.h         |  2 +-
 native/common/jk_uri_worker_map.h | 22 +++++++++++-----------
 native/common/jk_util.h           |  8 ++++----
 native/common/jk_worker.h         | 14 +++++++-------
 17 files changed, 117 insertions(+), 105 deletions(-)

diff --git a/native/common/jk_ajp12_worker.h b/native/common/jk_ajp12_worker.h
index 306f8cec9..ec1dc4d2a 100644
--- a/native/common/jk_ajp12_worker.h
+++ b/native/common/jk_ajp12_worker.h
@@ -35,7 +35,7 @@ extern "C"
 #define JK_AJP12_WORKER_TYPE (1)
 
 int JK_METHOD ajp12_worker_factory(jk_worker_t **w,
-                                   const char *name, jk_logger_t *l);
+                                   const char *name, jk_log_context_t *log_ctx);
 
 #ifdef __cplusplus
 }
diff --git a/native/common/jk_ajp13.h b/native/common/jk_ajp13.h
index d8cc501aa..acd634f7a 100644
--- a/native/common/jk_ajp13.h
+++ b/native/common/jk_ajp13.h
@@ -118,7 +118,7 @@ extern "C"
  */
 
 int ajp13_marshal_shutdown_into_msgb(jk_msg_buf_t *msg,
-                                     jk_pool_t *p, jk_logger_t *l);
+                                     jk_pool_t *p, jk_log_context_t *log_ctx);
 
 #ifdef __cplusplus
 }
diff --git a/native/common/jk_ajp13_worker.h b/native/common/jk_ajp13_worker.h
index ec495bbc6..80ac2b8fb 100644
--- a/native/common/jk_ajp13_worker.h
+++ b/native/common/jk_ajp13_worker.h
@@ -40,7 +40,7 @@ extern "C"
 #define JK_AJP13_WORKER_TYPE (2)
 
 int JK_METHOD ajp13_worker_factory(jk_worker_t **w,
-                                   const char *name, jk_logger_t *l);
+                                   const char *name, jk_log_context_t *log_ctx);
 
 #ifdef __cplusplus
 }
diff --git a/native/common/jk_ajp14.h b/native/common/jk_ajp14.h
index 0ba467245..38fe58914 100644
--- a/native/common/jk_ajp14.h
+++ b/native/common/jk_ajp14.h
@@ -251,51 +251,51 @@ struct jk_login_service
  * functions defined here
  */
 
-void ajp14_compute_md5(jk_login_service_t *s, jk_logger_t *l);
+void ajp14_compute_md5(jk_login_service_t *s, jk_log_context_t *log_ctx);
 
 int ajp14_marshal_login_init_into_msgb(jk_msg_buf_t *msg,
                                        jk_login_service_t *s,
-                                       jk_logger_t *l);
+                                       jk_log_context_t *log_ctx);
 
 int ajp14_unmarshal_login_seed(jk_msg_buf_t *msg,
-                               jk_login_service_t *s, jk_logger_t *l);
+                               jk_login_service_t *s, jk_log_context_t *log_ctx);
 
 int ajp14_marshal_login_comp_into_msgb(jk_msg_buf_t *msg,
                                        jk_login_service_t *s,
-                                       jk_logger_t *l);
+                                       jk_log_context_t *log_ctx);
 
 int ajp14_unmarshal_log_ok(jk_msg_buf_t *msg,
-                           jk_login_service_t *s, jk_logger_t *l);
+                           jk_login_service_t *s, jk_log_context_t *log_ctx);
 
-int ajp14_unmarshal_log_nok(jk_msg_buf_t *msg, jk_logger_t *l);
+int ajp14_unmarshal_log_nok(jk_msg_buf_t *msg, jk_log_context_t *log_ctx);
 
 int ajp14_marshal_shutdown_into_msgb(jk_msg_buf_t *msg,
                                      jk_login_service_t *s,
-                                     jk_logger_t *l);
+                                     jk_log_context_t *log_ctx);
 
-int ajp14_unmarshal_shutdown_nok(jk_msg_buf_t *msg, jk_logger_t *l);
+int ajp14_unmarshal_shutdown_nok(jk_msg_buf_t *msg, jk_log_context_t *log_ctx);
 
 int ajp14_marshal_unknown_packet_into_msgb(jk_msg_buf_t *msg,
                                            jk_msg_buf_t *unk,
-                                           jk_logger_t *l);
+                                           jk_log_context_t *log_ctx);
 
 int ajp14_marshal_context_query_into_msgb(jk_msg_buf_t *msg,
-                                          char *virtual, jk_logger_t *l);
+                                          char *virtual, jk_log_context_t *log_ctx);
 
 int ajp14_unmarshal_context_info(jk_msg_buf_t *msg,
-                                 jk_context_t *context, jk_logger_t *l);
+                                 jk_context_t *context, jk_log_context_t *log_ctx);
 
 int ajp14_marshal_context_state_into_msgb(jk_msg_buf_t *msg,
                                           jk_context_t *context,
-                                          char *cname, jk_logger_t *l);
+                                          char *cname, jk_log_context_t *log_ctx);
 
 int ajp14_unmarshal_context_state_reply(jk_msg_buf_t *msg,
                                         jk_context_t *context,
-                                        jk_logger_t *l);
+                                        jk_log_context_t *log_ctx);
 
 int ajp14_unmarshal_context_update_cmd(jk_msg_buf_t *msg,
                                        jk_context_t *context,
-                                       jk_logger_t *l);
+                                       jk_log_context_t *log_ctx);
 
 #ifdef __cplusplus
 }
diff --git a/native/common/jk_ajp14_worker.h b/native/common/jk_ajp14_worker.h
index 18cd89b7a..51eec00f8 100644
--- a/native/common/jk_ajp14_worker.h
+++ b/native/common/jk_ajp14_worker.h
@@ -42,7 +42,7 @@ extern "C"
 #define JK_AJP14_WORKER_TYPE (3)
 
 int JK_METHOD ajp14_worker_factory(jk_worker_t **w,
-                                   const char *name, jk_logger_t *l);
+                                   const char *name, jk_log_context_t *log_ctx);
 
 #ifdef __cplusplus
 }
diff --git a/native/common/jk_ajp_common.h b/native/common/jk_ajp_common.h
index 52e653bb3..a2402b2c2 100644
--- a/native/common/jk_ajp_common.h
+++ b/native/common/jk_ajp_common.h
@@ -332,7 +332,7 @@ struct ajp_worker
      * Post physical connect handler.
      * AJP14 will set here its login handler
      */
-    int (*logon) (ajp_endpoint_t * ae, jk_logger_t *l);
+    int (*logon) (ajp_endpoint_t * ae, jk_log_context_t *log_ctx);
 
     /*
      * Handle Socket Timeouts
@@ -441,50 +441,50 @@ struct ajp_operation
  */
 
 
-const char *jk_ajp_get_state(ajp_worker_t *aw, jk_logger_t *l);
+const char *jk_ajp_get_state(ajp_worker_t *aw, jk_log_context_t *log_ctx);
 
 int jk_ajp_get_state_code(const char *v);
 
 int ajp_validate(jk_worker_t *pThis,
                  jk_map_t *props,
-                 jk_worker_env_t *we, jk_logger_t *l, int proto);
+                 jk_worker_env_t *we, jk_log_context_t *log_ctx, int proto);
 
 int ajp_init(jk_worker_t *pThis,
              jk_map_t *props,
-             jk_worker_env_t *we, jk_logger_t *l, int proto);
+             jk_worker_env_t *we, jk_log_context_t *log_ctx, int proto);
 
 int JK_METHOD ajp_worker_factory(jk_worker_t **w,
-                                 const char *name, jk_logger_t *l);
+                                 const char *name, jk_log_context_t *log_ctx);
 
-int ajp_destroy(jk_worker_t **pThis, jk_logger_t *l, int proto);
+int ajp_destroy(jk_worker_t **pThis, jk_log_context_t *log_ctx, int proto);
 
-int JK_METHOD ajp_done(jk_endpoint_t **e, jk_logger_t *l);
+int JK_METHOD ajp_done(jk_endpoint_t **e, jk_log_context_t *log_ctx);
 
 int ajp_get_endpoint(jk_worker_t *pThis,
-                     jk_endpoint_t **pend, jk_logger_t *l, int proto);
+                     jk_endpoint_t **pend, jk_log_context_t *log_ctx, int proto);
 
-int ajp_connect_to_endpoint(ajp_endpoint_t * ae, jk_logger_t *l);
+int ajp_connect_to_endpoint(ajp_endpoint_t * ae, jk_log_context_t *log_ctx);
 
-void ajp_close_endpoint(ajp_endpoint_t * ae, jk_logger_t *l);
+void ajp_close_endpoint(ajp_endpoint_t * ae, jk_log_context_t *log_ctx);
 
-void jk_ajp_pull(ajp_worker_t * aw, int locked, jk_logger_t *l);
+void jk_ajp_pull(ajp_worker_t * aw, int locked, jk_log_context_t *log_ctx);
 
-void jk_ajp_push(ajp_worker_t * aw, int locked, jk_logger_t *l);
+void jk_ajp_push(ajp_worker_t * aw, int locked, jk_log_context_t *log_ctx);
 
 int ajp_connection_tcp_send_message(ajp_endpoint_t * ae,
-                                    jk_msg_buf_t *msg, jk_logger_t *l);
+                                    jk_msg_buf_t *msg, jk_log_context_t *log_ctx);
 
 int ajp_connection_tcp_get_message(ajp_endpoint_t * ae,
-                                   jk_msg_buf_t *msg, jk_logger_t *l);
+                                   jk_msg_buf_t *msg, jk_log_context_t *log_ctx);
 
-int JK_METHOD ajp_maintain(jk_worker_t *pThis, time_t now, int global, jk_logger_t *l);
+int JK_METHOD ajp_maintain(jk_worker_t *pThis, time_t now, int global, jk_log_context_t *log_ctx);
 
-int JK_METHOD ajp_shutdown(jk_worker_t *pThis, jk_logger_t *l);
+int JK_METHOD ajp_shutdown(jk_worker_t *pThis, jk_log_context_t *log_ctx);
 
 void jk_ajp_get_cping_text(int mode, char *buf);
 int jk_ajp_get_cping_mode(const char *m, int def);
 
-int ajp_has_endpoint(jk_worker_t *pThis, jk_logger_t *l);
+int ajp_has_endpoint(jk_worker_t *pThis, jk_log_context_t *log_ctx);
 
 #ifdef __cplusplus
 }
diff --git a/native/common/jk_connect.h b/native/common/jk_connect.h
index b75159ed6..e699e3be9 100644
--- a/native/common/jk_connect.h
+++ b/native/common/jk_connect.h
@@ -40,28 +40,28 @@ extern "C"
 void jk_clone_sockaddr(jk_sockaddr_t *out, jk_sockaddr_t *in);
 
 int jk_resolve(const char *host, int port, jk_sockaddr_t *rc, void *pool,
-               int prefer_ipv6, jk_logger_t *l);
+               int prefer_ipv6, jk_log_context_t *log_ctx);
 
 jk_sock_t jk_open_socket(jk_sockaddr_t *addr, jk_sockaddr_t *source,
                          int keepalive,
                          int timeout, int connect_timeout,
-                         int sock_buf, jk_logger_t *l);
+                         int sock_buf, jk_log_context_t *log_ctx);
 
-int jk_close_socket(jk_sock_t sd, jk_logger_t *l);
+int jk_close_socket(jk_sock_t sd, jk_log_context_t *log_ctx);
 
-int jk_shutdown_socket(jk_sock_t sd, jk_logger_t *l);
+int jk_shutdown_socket(jk_sock_t sd, jk_log_context_t *log_ctx);
 
-int jk_tcp_socket_sendfull(jk_sock_t sd, const unsigned char *b, int len, jk_logger_t *l);
+int jk_tcp_socket_sendfull(jk_sock_t sd, const unsigned char *b, int len, jk_log_context_t *log_ctx);
 
-int jk_tcp_socket_recvfull(jk_sock_t sd, unsigned char *b, int len, jk_logger_t *l);
+int jk_tcp_socket_recvfull(jk_sock_t sd, unsigned char *b, int len, jk_log_context_t *log_ctx);
 
 char *jk_dump_hinfo(jk_sockaddr_t *saddr, char *buf, size_t size);
 
 char *jk_dump_sinfo(jk_sock_t sd, char *buf, size_t size);
 
-int jk_is_input_event(jk_sock_t sd, int timeout, jk_logger_t *l);
+int jk_is_input_event(jk_sock_t sd, int timeout, jk_log_context_t *log_ctx);
 
-int jk_is_socket_connected(jk_sock_t sd, jk_logger_t *l);
+int jk_is_socket_connected(jk_sock_t sd, jk_log_context_t *log_ctx);
 
 
 /***
diff --git a/native/common/jk_lb_worker.h b/native/common/jk_lb_worker.h
index ad9da1fa4..7385c3875 100644
--- a/native/common/jk_lb_worker.h
+++ b/native/common/jk_lb_worker.h
@@ -203,24 +203,24 @@ struct lb_worker
 typedef struct lb_worker lb_worker_t;
 
 int JK_METHOD lb_worker_factory(jk_worker_t **w,
-                                const char *name, jk_logger_t *l);
+                                const char *name, jk_log_context_t *log_ctx);
 
-const char *jk_lb_get_lock_direct(int lblock, jk_logger_t *l);
-const char *jk_lb_get_lock(lb_worker_t *p, jk_logger_t *l);
+const char *jk_lb_get_lock_direct(int lblock, jk_log_context_t *log_ctx);
+const char *jk_lb_get_lock(lb_worker_t *p, jk_log_context_t *log_ctx);
 int jk_lb_get_lock_code(const char *v);
-const char *jk_lb_get_method_direct(int lbmethod, jk_logger_t *l);
-const char *jk_lb_get_method(lb_worker_t *p, jk_logger_t *l);
+const char *jk_lb_get_method_direct(int lbmethod, jk_log_context_t *log_ctx);
+const char *jk_lb_get_method(lb_worker_t *p, jk_log_context_t *log_ctx);
 int jk_lb_get_method_code(const char *v);
-const char *jk_lb_get_state_direct(int state, jk_logger_t *l);
-const char *jk_lb_get_state(lb_sub_worker_t *p, jk_logger_t *l);
+const char *jk_lb_get_state_direct(int state, jk_log_context_t *log_ctx);
+const char *jk_lb_get_state(lb_sub_worker_t *p, jk_log_context_t *log_ctx);
 int jk_lb_get_state_code(const char *v);
-const char *jk_lb_get_activation_direct(int activation, jk_logger_t *l);
-const char *jk_lb_get_activation(lb_sub_worker_t *p, jk_logger_t *l);
+const char *jk_lb_get_activation_direct(int activation, jk_log_context_t *log_ctx);
+const char *jk_lb_get_activation(lb_sub_worker_t *p, jk_log_context_t *log_ctx);
 int jk_lb_get_activation_code(const char *v);
-void reset_lb_values(lb_worker_t *p, jk_logger_t *l);
-void jk_lb_pull(lb_worker_t * p, int locked, jk_logger_t *l);
-void jk_lb_push(lb_worker_t * p, int locked, int push_all_members, jk_logger_t *l);
-void update_mult(lb_worker_t * p, jk_logger_t *l);
+void reset_lb_values(lb_worker_t *p, jk_log_context_t *log_ctx);
+void jk_lb_pull(lb_worker_t * p, int locked, jk_log_context_t *log_ctx);
+void jk_lb_push(lb_worker_t * p, int locked, int push_all_members, jk_log_context_t *log_ctx);
+void update_mult(lb_worker_t * p, jk_log_context_t *log_ctx);
 
 #ifdef __cplusplus
 }
diff --git a/native/common/jk_logger.h b/native/common/jk_logger.h
index 01d733482..73b25280d 100644
--- a/native/common/jk_logger.h
+++ b/native/common/jk_logger.h
@@ -59,6 +59,13 @@ struct jk_file_logger_t
     int is_piped;
 };
 
+typedef struct jk_log_context_t jk_log_context_t;
+struct jk_log_context_t
+{
+    jk_logger_t *logger;
+    const char *id;
+};
+
 /* Level like Java tracing, but available only
    at compile time on DEBUG preproc define.
  */
@@ -108,7 +115,7 @@ struct jk_file_logger_t
 #define JK_IS_PRODUCTION    0
 #define JK_TRACE_ENTER(l)                               \
     do {                                                \
-        if ((l) && (l)->level == JK_LOG_TRACE_LEVEL) {  \
+        if ((l) && (l)->logger && (l)->logger->level == JK_LOG_TRACE_LEVEL) {  \
             int tmp_errno = errno;                      \
             jk_log((l), JK_LOG_TRACE, "enter");         \
             errno = tmp_errno;                          \
@@ -116,7 +123,7 @@ struct jk_file_logger_t
 
 #define JK_TRACE_EXIT(l)                                \
     do {                                                \
-        if ((l) && (l)->level == JK_LOG_TRACE_LEVEL) {  \
+        if ((l) && (l)->logger && (l)->logger->level == JK_LOG_TRACE_LEVEL) {  \
             int tmp_errno = errno;                      \
             jk_log((l), JK_LOG_TRACE, "exit");          \
             errno = tmp_errno;                          \
@@ -130,7 +137,7 @@ struct jk_file_logger_t
  * It is more efficient to check the level prior
  * calling function that will not execute anyhow because of level
  */
-#define JK_IS_DEBUG_LEVEL(l)  ((l) && (l)->level <  JK_LOG_INFO_LEVEL)
+#define JK_IS_DEBUG_LEVEL(l)  ((l) && (l)->logger && (l)->logger->level < JK_LOG_INFO_LEVEL)
 
 
 #ifdef __cplusplus
diff --git a/native/common/jk_map.h b/native/common/jk_map.h
index 6e56f9eb2..264f4ef73 100644
--- a/native/common/jk_map.h
+++ b/native/common/jk_map.h
@@ -83,9 +83,9 @@ int jk_map_add(jk_map_t *m, const char *name, const void *value);
 
 int jk_map_put(jk_map_t *m, const char *name, const void *value, void **old);
 
-int jk_map_read_property(jk_map_t *m, jk_map_t *env, const char *str, int treatment, jk_logger_t *l);
+int jk_map_read_property(jk_map_t *m, jk_map_t *env, const char *str, int treatment, jk_log_context_t *log_ctx);
 
-int jk_map_read_properties(jk_map_t *m, jk_map_t *env, const char *f, time_t *modified, int treatment, jk_logger_t *l);
+int jk_map_read_properties(jk_map_t *m, jk_map_t *env, const char *f, time_t *modified, int treatment, jk_log_context_t *log_ctx);
 
 int jk_map_size(jk_map_t *m);
 
@@ -93,13 +93,13 @@ const char *jk_map_name_at(jk_map_t *m, int idex);
 
 void *jk_map_value_at(jk_map_t *m, int idex);
 
-void jk_map_dump(jk_map_t *m, jk_logger_t *l);
+void jk_map_dump(jk_map_t *m, jk_log_context_t *log_ctx);
 
 int jk_map_copy(jk_map_t *src, jk_map_t *dst);
 
-int jk_map_resolve_references(jk_map_t *m, const char *prefix, int wildcard, int depth, jk_logger_t *l);
+int jk_map_resolve_references(jk_map_t *m, const char *prefix, int wildcard, int depth, jk_log_context_t *log_ctx);
 
-int jk_map_inherit_properties(jk_map_t *m, const char *from, const char *to, jk_logger_t *l);
+int jk_map_inherit_properties(jk_map_t *m, const char *from, const char *to, jk_log_context_t *log_ctx);
 
 #ifdef __cplusplus
 }
diff --git a/native/common/jk_msg_buff.h b/native/common/jk_msg_buff.h
index d77d1dd87..bb93c0b59 100644
--- a/native/common/jk_msg_buff.h
+++ b/native/common/jk_msg_buff.h
@@ -136,7 +136,7 @@ unsigned short jk_b_pget_int(jk_msg_buf_t *msg, int pos);
 unsigned long jk_b_pget_long(jk_msg_buf_t *msg, int pos);
 
 /* --------------------- Help ------------------------ */
-void jk_dump_buff(jk_logger_t *l,
+void jk_dump_buff(jk_log_context_t *log_ctx,
                   const char *file,
                   int line, const char *funcname,
                   int level, char *what, jk_msg_buf_t *msg);
diff --git a/native/common/jk_service.h b/native/common/jk_service.h
index c7f59135e..103b321e5 100644
--- a/native/common/jk_service.h
+++ b/native/common/jk_service.h
@@ -155,6 +155,11 @@ struct jk_ws_service
      */
     jk_pool_t *pool;
 
+    /*
+     * log context
+     */
+    jk_log_context_t *log_ctx;
+
     /*
      * CGI Environment needed by servlets
      */
@@ -430,7 +435,7 @@ struct jk_endpoint
      */
     int (JK_METHOD * service) (jk_endpoint_t *e,
                                jk_ws_service_t *s,
-                               jk_logger_t *l, int *is_error);
+                               jk_log_context_t *log_ctx, int *is_error);
 
     /*
      * Called when this particular endpoint has finished processing a
@@ -442,7 +447,7 @@ struct jk_endpoint
      * rather a pointer to a 'this' pointer.  This is necessary, because
      * we may need to free this object.
      */
-    int (JK_METHOD * done) (jk_endpoint_t **p, jk_logger_t *l);
+    int (JK_METHOD * done) (jk_endpoint_t **p, jk_log_context_t *log_ctx);
 };
 
 /*
@@ -511,14 +516,14 @@ struct jk_worker
      */
     int (JK_METHOD * validate) (jk_worker_t *w,
                                 jk_map_t *props,
-                                jk_worker_env_t *we, jk_logger_t *l);
+                                jk_worker_env_t *we, jk_log_context_t *log_ctx);
 
     /*
      * Update worker either from jk_status or reloading from workers.properties
      */
     int (JK_METHOD * update) (jk_worker_t *w,
                               jk_map_t *props,
-                              jk_worker_env_t *we, jk_logger_t *l);
+                              jk_worker_env_t *we, jk_log_context_t *log_ctx);
 
     /*
      * Do whatever initialization needs to be done to start this worker up.
@@ -526,7 +531,7 @@ struct jk_worker
      */
     int (JK_METHOD * init) (jk_worker_t *w,
                             jk_map_t *props,
-                            jk_worker_env_t *we, jk_logger_t *l);
+                            jk_worker_env_t *we, jk_log_context_t *log_ctx);
 
 
     /*
@@ -534,24 +539,24 @@ struct jk_worker
      * the endpoint is stored in pend.
      */
     int (JK_METHOD * get_endpoint) (jk_worker_t *w,
-                                    jk_endpoint_t **pend, jk_logger_t *l);
+                                    jk_endpoint_t **pend, jk_log_context_t *log_ctx);
 
     /*
      * Shutdown this worker.  The first argument is not a 'this' pointer,
      * but rather a pointer to 'this', so that the object can be free'd (I
      * think -- though that doesn't seem to be happening.  Hmmm).
      */
-    int (JK_METHOD * destroy) (jk_worker_t **w, jk_logger_t *l);
+    int (JK_METHOD * destroy) (jk_worker_t **w, jk_log_context_t *log_ctx);
 
     /*
      * Maintain this worker.
      */
-    int (JK_METHOD * maintain) (jk_worker_t *w, time_t now, int global, jk_logger_t *l);
+    int (JK_METHOD * maintain) (jk_worker_t *w, time_t now, int global, jk_log_context_t *log_ctx);
 
     /*
      * Shut this worker down.
      */
-    int (JK_METHOD * shutdown) (jk_worker_t *w, jk_logger_t *l);
+    int (JK_METHOD * shutdown) (jk_worker_t *w, jk_log_context_t *log_ctx);
 
 };
 
@@ -570,7 +575,7 @@ struct jk_worker
  */
 typedef int (JK_METHOD * worker_factory) (jk_worker_t **w,
                                           const char *name,
-                                          jk_logger_t *l);
+                                          jk_log_context_t *log_ctx);
 
 void jk_init_ws_service(jk_ws_service_t *s);
 
diff --git a/native/common/jk_shm.h b/native/common/jk_shm.h
index 6ec737e9f..819d04d78 100644
--- a/native/common/jk_shm.h
+++ b/native/common/jk_shm.h
@@ -188,39 +188,39 @@ typedef struct jk_shm_lb_worker jk_shm_lb_worker_t;
 const char *jk_shm_name(void);
 
 /* Calculate needed shm size */
-int jk_shm_calculate_size(jk_map_t *init_data, jk_logger_t *l);
+int jk_shm_calculate_size(jk_map_t *init_data, jk_log_context_t *log_ctx);
 
 /* Open the shared memory creating file if needed
  */
-int jk_shm_open(const char *fname, int sz, jk_logger_t *l);
+int jk_shm_open(const char *fname, int sz, jk_log_context_t *log_ctx);
 
 /* Close the shared memory
  */
-void jk_shm_close(jk_logger_t *l);
+void jk_shm_close(jk_log_context_t *log_ctx);
 
 /* Attach the shared memory in child process.
  * File has to be opened in parent.
  */
-int jk_shm_attach(const char *fname, int sz, jk_logger_t *l);
+int jk_shm_attach(const char *fname, int sz, jk_log_context_t *log_ctx);
 
 /* allocate shm ajp worker record
  * If there is no shm present the pool will be used instead
  */
 jk_shm_ajp_worker_t *jk_shm_alloc_ajp_worker(jk_pool_t *p, const char *name,
-                                             jk_logger_t *l);
+                                             jk_log_context_t *log_ctx);
 
 /* allocate shm lb sub worker record
  * If there is no shm present the pool will be used instead
  */
 jk_shm_lb_sub_worker_t *jk_shm_alloc_lb_sub_worker(jk_pool_t *p,
                                                    int lb_id, const char *name,
-                                                   jk_logger_t *l);
+                                                   jk_log_context_t *log_ctx);
 
 /* allocate shm lb worker record
  * If there is no shm present the pool will be used instead
  */
 jk_shm_lb_worker_t *jk_shm_alloc_lb_worker(jk_pool_t *p, const char *name,
-                                           jk_logger_t *l);
+                                           jk_log_context_t *log_ctx);
 
 int jk_shm_check_maintain(time_t trigger);
 
diff --git a/native/common/jk_status.h b/native/common/jk_status.h
index bc810b293..a314179d6 100644
--- a/native/common/jk_status.h
+++ b/native/common/jk_status.h
@@ -35,7 +35,7 @@ extern "C"
 #define JK_STATUS_WORKER_TYPE     (6)
 
 int JK_METHOD status_worker_factory(jk_worker_t **w,
-                                    const char *name, jk_logger_t *l);
+                                    const char *name, jk_log_context_t *log_ctx);
 
 #ifdef __cplusplus
 }
diff --git a/native/common/jk_uri_worker_map.h b/native/common/jk_uri_worker_map.h
index 857cc8bff..08e931434 100644
--- a/native/common/jk_uri_worker_map.h
+++ b/native/common/jk_uri_worker_map.h
@@ -179,45 +179,45 @@ struct jk_uri_worker_map
 typedef struct jk_uri_worker_map jk_uri_worker_map_t;
 
 void extension_fix(jk_pool_t *p, const char *name,
-                                      rule_extension_t *extensions, jk_logger_t *l);
+                                      rule_extension_t *extensions, jk_log_context_t *log_ctx);
 
 void parse_rule_extensions(char *rule, rule_extension_t *extensions,
-                           jk_logger_t *l);
+                           jk_log_context_t *log_ctx);
 
 const char *uri_worker_map_get_source(uri_worker_record_t *uwr);
 
 char *uri_worker_map_get_match(uri_worker_record_t *uwr, char *buf);
 
 int uri_worker_map_alloc(jk_uri_worker_map_t **uw_map,
-                         jk_map_t *init_data, jk_logger_t *l);
+                         jk_map_t *init_data, jk_log_context_t *log_ctx);
 
-int uri_worker_map_free(jk_uri_worker_map_t **uw_map, jk_logger_t *l);
+int uri_worker_map_free(jk_uri_worker_map_t **uw_map, jk_log_context_t *log_ctx);
 
 int uri_worker_map_open(jk_uri_worker_map_t *uw_map,
-                        jk_map_t *init_data, jk_logger_t *l);
+                        jk_map_t *init_data, jk_log_context_t *log_ctx);
 
-void uri_worker_map_switch(jk_uri_worker_map_t *uw_map, jk_logger_t *l);
+void uri_worker_map_switch(jk_uri_worker_map_t *uw_map, jk_log_context_t *log_ctx);
 
-void uri_worker_map_ext(jk_uri_worker_map_t *uw_map, jk_logger_t *l);
+void uri_worker_map_ext(jk_uri_worker_map_t *uw_map, jk_log_context_t *log_ctx);
 
 int uri_worker_map_add(jk_uri_worker_map_t *uw_map,
                        const char *puri, const char *worker,
-                       unsigned int source_type, jk_logger_t *l);
+                       unsigned int source_type, jk_log_context_t *log_ctx);
 
 const char *map_uri_to_worker_ext(jk_uri_worker_map_t *uw_map,
                                   const char *uri, const char *vhost,
                                   rule_extension_t **extensions,
                                   int *index,
-                                  jk_logger_t *l);
+                                  jk_log_context_t *log_ctx);
 
 rule_extension_t *get_uri_to_worker_ext(jk_uri_worker_map_t *uw_map,
                                         int index);
 
 int uri_worker_map_load(jk_uri_worker_map_t *uw_map,
-                        jk_logger_t *l);
+                        jk_log_context_t *log_ctx);
 
 int uri_worker_map_update(jk_uri_worker_map_t *uw_map,
-                          int force, jk_logger_t *l);
+                          int force, jk_log_context_t *log_ctx);
 
 #ifdef __cplusplus
 }
diff --git a/native/common/jk_util.h b/native/common/jk_util.h
index db15775c2..5190a2b77 100644
--- a/native/common/jk_util.h
+++ b/native/common/jk_util.h
@@ -53,12 +53,12 @@ int jk_attach_file_logger(jk_logger_t **l, int fd, int level);
 
 int jk_close_file_logger(jk_logger_t **l);
 
-int jk_log(jk_logger_t *l,
+int jk_log(jk_log_context_t *log_ctx,
            const char *file, int line, const char *funcname, int level,
            const char *fmt, ...);
 
 int jk_check_attribute_length(const char *name, const char *value,
-                              jk_logger_t *l);
+                              jk_log_context_t *log_ctx);
 
 const char *jk_get_worker_host(jk_map_t *m, const char *wname, const char *def);
 
@@ -247,9 +247,9 @@ int is_http_status_fail(unsigned int http_status_fail_num,
 
 int jk_wildchar_match(const char *str, const char *exp, int icase);
 
-int jk_servlet_normalize(char *path, jk_logger_t *logger);
+int jk_servlet_normalize(char *path, jk_log_context_t *log_ctx);
 
-int jk_strip_session_id(char* path, char* session_name, jk_logger_t *logger);
+int jk_strip_session_id(char* path, char* session_name, jk_log_context_t *log_ctx);
 
 #define JK_NORMALIZE_BAD_PATH   -1
 #define JK_NORMALIZE_TRAVERSAL  -2
diff --git a/native/common/jk_worker.h b/native/common/jk_worker.h
index 230f89ba8..3655227fe 100644
--- a/native/common/jk_worker.h
+++ b/native/common/jk_worker.h
@@ -33,22 +33,22 @@ extern "C"
 {
 #endif                          /* __cplusplus */
 
-int wc_open(jk_map_t *init_data, jk_worker_env_t *we, jk_logger_t *l);
+int wc_open(jk_map_t *init_data, jk_worker_env_t *we, jk_log_context_t *log_ctx);
 
-void wc_close(jk_logger_t *l);
+void wc_close(jk_log_context_t *log_ctx);
 
-jk_worker_t *wc_get_worker_for_name(const char *name, jk_logger_t *l);
+jk_worker_t *wc_get_worker_for_name(const char *name, jk_log_context_t *log_ctx);
 
-const char *wc_get_name_for_type(int type, jk_logger_t *l);
+const char *wc_get_name_for_type(int type, jk_log_context_t *log_ctx);
 
 int wc_create_worker(const char *name, int use_map,
                      jk_map_t *init_data,
                      jk_worker_t **rc,
-                     jk_worker_env_t *we, jk_logger_t *l);
+                     jk_worker_env_t *we, jk_log_context_t *log_ctx);
 
-void wc_maintain(jk_logger_t *l);
+void wc_maintain(jk_log_context_t *log_ctx);
 
-void wc_shutdown(jk_logger_t *l);
+void wc_shutdown(jk_log_context_t *log_ctx);
 
 #ifdef __cplusplus
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org