Tracing 在PeopleSoft 程序中怎么开启

本文介绍一些常用的跟踪方法在Applications,Application Engine,PeopleSoft,Integration Broker,Cobol中。


1、Application Engine Trace

    对于Application Engine Programs打开"主菜单>PeopleTools>进程调度器>进程"选择"覆盖选项"在参数列表中选择"附加(append)"在编辑框里输入如下内容:-TRACE 7 -TOOLSTRACEPC 4044  -TOOLSTRACESQL 31

 

保存进程定义,在程序每次运行时候都会被执行。使用-TOOLSTRSCEPC & -TOOLSTRSCESQL一起使用,tracing的内容会被写进一个文件中,文件会很大,很难阅读,一般使用的是:

-TRACE 7 -TOOLSTRACEPC 4044

生成文件说明:

-TRACE 会生成.AET文件

-TOOLSTRSCEPC 会生成.trc文件

-TOOLSTRACESQL  会生成.trc文件

如果加上tracing程序每次运行都会产生文件,所以不用的时候记得去掉。

2、PeopleCode Online Trace

为了跟踪 PeopleCode 或 SQL ,debug可以在页面设置,可以在进行实际业务之前在页面设置好。

 

跟踪sql页面设置如下:

当你点击了想要tracing的页面,点击ok或者登出,tracing文件就会写道appserver的log中。生成文件的地址如下:

PS_HOME/appserv/<DBNAME>/Logs/

3、Integration Broker - Subscription Trace

这种trace可以跟踪peoplecode 和sql在写在service operation里。

如图所示:

生成的文件在PS_HOME/appserv/<DBNAME>/Logs/

删除代码可以关掉tracing。

3、COBOL Trace(没咋用过)

    1) 如果COBOL进程运行在windows机器上

        a) 打开进程定义如图贴入如下参数

         

        %%DBTYPE%%/%%DBNAME%%/%%OPRID%%/%%OPRPSWD%%/%%RUNCNTLID%%/%%INSTANCE%%/255/%%DBFLAG%%

2)如果是linux/unix服务器则是如下代码:

 

 %%PRCSNAME%% %%DBTYPE%%/%%DBNAME%%/%%OPRID%%/%%OPRPSWD%%/%%RUNCNTLID%%/%%INSTANCE%%/255/%%DBFLAG%%

关注我的公众号:

转载于:https://www.cnblogs.com/eason-liu/p/7136080.html

### Micrometer Tracing 集成 Feign 实现分布式追踪 为了在使用 Micrometer Tracing 的情况下将 Trace ID 添加到 Feign 请求头中以支持分布式追踪,可以按照以下方法操作。 #### 1. 引入必要的依赖项 确保项目中引入了 Micrometer 和 OpenTelemetry 或 Zipkin 所需的相关依赖。以下是 Maven 中可能需要的依赖配置: ```xml <dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-tracing-bridge-brave</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency> ``` 这些依赖会提供 Micrometer Tracing 功能以及 Feign 客户端的支持[^1]。 --- #### 2. 自定义 Feign 请求拦截器 通过创建自定义的 `RequestInterceptor` 来捕获当前的 Trace Context 并将其注入到 HTTP 头部字段中。具体实现如下所示: ```java import feign.RequestInterceptor; import feign.RequestTemplate; import io.micrometer.tracing.Tracer; @Component public class TracingFeignInterceptor implements RequestInterceptor { private final Tracer tracer; public TracingFeignInterceptor(Tracer tracer) { this.tracer = tracer; } @Override public void apply(RequestTemplate template) { if (tracer.currentSpan() != null) { String traceId = tracer.currentSpan().context().traceId(); String spanId = tracer.currentSpan().context().spanId(); // 将 Trace ID 和 Span ID 注入到请求头部 template.header("X-B3-TraceId", traceId); template.header("X-B3-SpanId", spanId); // 如果启用了采样功能,则设置 Sampling Header boolean sampled = tracer.currentSpan().isSampled(); if (sampled) { template.header("X-B3-Sampled", "1"); } else { template.header("X-B3-Sampled", "0"); } } } } ``` 此代码片段实现了 Feign 的 `RequestInterceptor` 接口,并利用 Micrometer 提供的 `Tracer` 对象获取当前上下文中的 Trace ID 和 Span ID,随后将它们作为 HTTP Headers 插入到每个发出的请求中[^2]。 --- #### 3. 启用 Feign 支持并注册拦截器 为了让上述拦截器生效,在 Spring Boot 应用程序中启用 Feign 并自动装配该拦截器即可。可以通过以下方式完成: ##### 方法一:Spring Bean 方式 如果已经定义好了 `TracingFeignInterceptor` 类,只需确保它被标记为组件(即带有 `@Component`),那么 Spring 会自动检测并将其实例化。 ##### 方法二:手动注册 也可以显式地将拦截器添加到 Feign 客户端配置中: ```java @Configuration public class FeignConfig { @Bean public TracingFeignInterceptor tracingFeignInterceptor(Tracer tracer) { return new TracingFeignInterceptor(tracer); } } ``` 这样就可以让所有的 Feign 调用都携带 Trace 上下文中提取的信息[^3]。 --- #### 4. 测试验证 启动应用程序后,发送任何通过 Feign 发起的服务调用时,应该能够在下游服务接收到的请求头中看到类似于下面的内容: ``` X-B3-TraceId: abcdefghijklmnopqrstuvwxyz X-B3-SpanId: 1234567890abcdef X-B3-Sampled: 1 ``` 这表明 Trace 数据已成功传递给目标服务,从而完成了整个链路的跟踪记录工作流程[^4]。 --- ### 总结 以上过程展示了如何借助 Micrometer Tracing 工具库来增强基于 Feign 构建的应用间通信能力,使得每一次远程 API 呼叫都能够附带完整的分布式追踪元数据信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值