工具类:统一获取打点信息

1. 封住工具类,获取具体哪个方法哪个地方出问题打点。

public class CommentUtils {

    /**
     * rpc方法执行异常打点
     */
    public static void perfRpcErr(Exception e) {
        String[] serviceArr = Thread.currentThread().getStackTrace()[2].getClassName().split("\.");
        String serviceName = serviceArr[serviceArr.length - 1];
        String method = Thread.currentThread().getStackTrace()[2].getMethodName();
        PerfUtils.perf(PerfConstants.A, PerfConstants.RPC_ERROR, serviceName, method,
                e.getClass().getSimpleName()).logstash();
    }

    public static void perf(String subtag, String... extras) {
        PerfUtils.perf(PerfConstants.A, subtag, extras).logstash();
    }

}

主要代码:能获取具体接口所有详情信息

String[] serviceArr = Thread.currentThread().getStackTrace()[2].getClassName().split("\."); String serviceName = serviceArr[serviceArr.length - 1]; String method = Thread.currentThread().getStackTrace()[2].getMethodName();

经验分享 程序员 微信小程序 职场和发展