Java使用方式
 

通过javaagent的方式启动项目

java -javaagent:{skywalking-agent.jar包路径} -DSW_AGENT_NAME=${项目名称} -DSW_AGENT_COLLECTOR_BACKEND_SERVICES=${skywalking-oap地址}

示例

java -javaagent:D:\yymagicer\develop\apache-skywalking-java-agent-8.16\skywalking-agent\skywalking-agent.jar -DSW_AGENT_NAME=qrcode-prestore-service -DSW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800

多线程下的链路追踪的使用方法

使用以下包装类实现traceId链路传递

  • CallableWrapper
  • RunnableWrapper
  • SupplierWrapper

使用方法

    ExecutorService executorService = Executors.newFixedThreadPool(1);
    executorService.submit(CallableWrapper.of(new Callable<String>() {
        @Override public String call() throws Exception {
            return null;
        }
    }));
    ExecutorService executorService = Executors.newFixedThreadPool(1);
    executorService.execute(RunnableWrapper.of(new Runnable() {
        @Override public void run() {
            //your code
        }
    }));
    CompletableFuture.supplyAsync(SupplierWrapper.of(()->{
            return "SupplierWrapper";
    }));



链路追踪方法,携带参数,返回值

@Trace
@Tags({@Tag(key = "参数", value = "arg[0]"), @Tag(key = "返回值", value = "returnedObj")})
public Object method(Object param){

}

对象要重写toString()方法,不然,展示的是对象的地址

Python使用方式

使用Python3.9版本

安装skywalking模块

pip install apache-skywalking

使用方法

from skywalking import agent,config 
config.init(agent_collector_backend_services='${skywalking-oap地址}', agent_name='${项目名称}')
agent.start()

示例

from skywalking import agent,config 
config.init(agent_collector_backend_services='49.4.88.64:11800', agent_name='skywalking-test-python')
agent.start()

安装skywalking链路追踪日志工具包

pip install skywalking_trace==1.1.4

使用方法

from skywalking_trace.trace_log import  TraceLog

log = TraceLog()
log.info("xxxxxx")

 Python项目和Java项目都接入Skywalking服务后,相互之间接口调用,就可以是实现全链路追踪了

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐