我在下面编写了代码来处理使用多线程的请求。这里ConnectorRunner是一个可运行的对象 -
SELECT s.dwh_end_date,
t.*,
'-1' as PROMOTION_DROP_EMP_CODE,
trunc(sysdate +1) as PROMOTION_END_DATE,
'K01' as PROMOTION_DROP_REASON,
-1 as PROMOTION_DROP_WO_NUMBER
FROM STG_PROMO_EXPIRE_DATE t
INNER JOIN fct_customer_services s
ON(t.dwh_product_key = s.dwh_product_key)
在ConnectorRunner类中,我正在编写一些执行日志。我想以这样的方式编写日志:特定请求的所有日志都转到以该请求的请求ID命名的日志文件中。为了实现这一点,我在每次迭代中为每个请求创建一个新的记录器实例,并设置文件appender以在请求id命名的文件上写日志并将其传递给ConnectorRunner构造函数。
我面临的问题是,所有线程(所有请求)的日志都被写入属于最后一个线程的日志文件(最后执行的线程)。我不确定这里出了什么问题因为我每次创建一个新的ConnectorRunner对象并为每个线程创建一个新的记录器实例。
非常感谢任何帮助/指导。