🧁自定义请求Id
LiteFlow支持让你自定义你的请求Id。
大家在执行一条流程的时候,往往可以在日志信息中看到以下类似的信息:
2022-07-03 11:15:00.196 INFO 71275 --- [ main] com.yomahub.liteflow.flow.element.Node : [067a0baa6d434de3a8ccafa4b1506562]:[O]start component[a] execution
2022-07-03 11:15:00.204 INFO 71275 --- [ main] com.yomahub.liteflow.flow.element.Node : [067a0baa6d434de3a8ccafa4b1506562]:[O]start component[b] execution
2022-07-03 11:15:00.218 INFO 71275 --- [lf-when-thead-0] com.yomahub.liteflow.flow.element.Node : [067a0baa6d434de3a8ccafa4b1506562]:[O]start component[c] execution
2022-07-03 11:15:00.220 INFO 71275 --- [lf-when-thead-1] com.yomahub.liteflow.flow.element.Node : [067a0baa6d434de3a8ccafa4b1506562]:[O]start component[d] execution
2022-07-03 11:15:00.220 INFO 71275 --- [ main] com.yomahub.liteflow.slot.Slot : [067a0baa6d434de3a8ccafa4b1506562]:CHAIN_NAME[chain1]
a<1>==>b<0>==>c<0>==>d<0>
2022-07-03 11:15:00.221 INFO 71275 --- [ main] com.yomahub.liteflow.slot.DataBus : [067a0baa6d434de3a8ccafa4b1506562]:slot[0] released
其中日志主体中最前面的就是RequestId,一个请求中的requestId都是相同的,方便你进行日志查找。
这个requestId的形式也是可以自定义的。
你只需要要声明一个类,然后实现RequestIdGenerator
接口即可:
public class CustomRequestIdGenerator implements RequestIdGenerator {
@Override
public String generate() {
return System.nanoTime();
}
}
然后在LiteFlow的配置文件里声明下你这个类即可:
liteflow.request-id-generator-class=com.yomahub.liteflow.test.requestId.config.CustomRequestIdGenerator
一般情况下,LiteFlow有自己默认的Id生成规则。所以大多数情况下你并不需要去特别自定义这个Id生成器。
帮助我们改善此文档 (opens new window)
上次更新: 2023/03/17, 01:44:42