添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement . We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

使用curl -L " https://arthas.aliyun.com/as.sh " >as.sh; chmod a+x as.sh; ./as.sh进行安装的

  • 操作系统版本: linux
  • 目标进程的JVM版本: 8
  • 重现问题的步骤

  • watch com.alibaba.intl.sourcing.contract.service.impl.TradePaymentServiceImpl findNysePayList "params[0]==126325811001026842" -x 2。使用watch 进行指定参数过滤,参数类型为long,所以当触发该方法时便会出现转换错误
  • 实际运行的结果

    watch failed, condition is: null, express is: params[0]==126325811001026842, java.lang.NumberFormatException: For input string: "126325811001026842", visit /home/admin/logs/arthas/arthas.log for more details.

    把异常信息贴到这里
    

    报错信息:
    at io.reactivex.internal.operators.flowable.FlowableSubscribeOn$SubscribeOnSubscriber.run(FlowableSubscribeOn.java:82)
    at com.alibaba.ttl.TtlRunnable.run(TtlRunnable.java:49)
    at io.reactivex.internal.schedulers.ExecutorScheduler$ExecutorWorker$BooleanRunnable.run(ExecutorScheduler.java:261)
    at io.reactivex.internal.schedulers.ExecutorScheduler$ExecutorWorker.run(ExecutorScheduler.java:226)
    at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1402)
    at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
    at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
    at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
    at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
    Caused by: java.lang.NumberFormatException: For input string: "126325811001026842"
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Integer.parseInt(Integer.java:583)
    at java.lang.Integer.valueOf(Integer.java:740)
    at ognl.OgnlParserTokenManager.makeInt(OgnlParserTokenManager.java:63)
    at ognl.OgnlParserTokenManager.TokenLexicalActions(OgnlParserTokenManager.java:1624)
    at ognl.OgnlParserTokenManager.getNextToken(OgnlParserTokenManager.java:1498)
    at ognl.OgnlParser.jj_ntk(OgnlParser.java:3099)
    at ognl.OgnlParser.unaryExpression(OgnlParser.java:1079)
    at ognl.OgnlParser.multiplicativeExpression(OgnlParser.java:971)
    at ognl.OgnlParser.additiveExpression(OgnlParser.java:894)
    at ognl.OgnlParser.shiftExpression(OgnlParser.java:750)
    at ognl.OgnlParser.relationalExpression(OgnlParser.java:508)
    at ognl.OgnlParser.equalityExpression(OgnlParser.java:438)
    at ognl.OgnlParser.andExpression(OgnlParser.java:352)
    at ognl.OgnlParser.exclusiveOrExpression(OgnlParser.java:299)
    at ognl.OgnlParser.inclusiveOrExpression(OgnlParser.java:246)
    at ognl.OgnlParser.logicalAndExpression(OgnlParser.java:193)
    at ognl.OgnlParser.logicalOrExpression(OgnlParser.java:140)
    at ognl.OgnlParser.conditionalTestExpression(OgnlParser.java:101)
    at ognl.OgnlParser.assignmentExpression(OgnlParser.java:64)
    at ognl.OgnlParser.expression(OgnlParser.java:23)
    at ognl.OgnlParser.topLevelExpression(OgnlParser.java:15)
    at ognl.Ognl.parseExpression(Ognl.java:110)
    at ognl.Ognl.getValue(Ognl.java:572)
    at ognl.Ognl.getValue(Ognl.java:542)
    at com.taobao.arthas.core.command.express.OgnlExpress.get(OgnlExpress.java:40)

    参考(https://commons.apache.org/proper/commons-ognl/language-guide.html)

    Numeric literals, with a few more kinds than Java. In addition to Java's ints, longs, floats and doubles, OGNL lets you specify BigDecimals with a "b" or "B" suffix, and BigIntegers with an "h" or "H" suffix (think "huge"---we chose "h" for BigIntegers because it does not interfere with hexadecimal digits);

    如果数字不带后缀,默认是Integer导致parserInt越界,此处应该为"params[0]==126325811001026842L"