qxo

Results 59 issues of qxo

add context rev to link if it's not have 'h'

if not empty, then every logined user will join this team so we can set acl on the default team

通过SPI(ExpressFactoryProvider)方式,来扩展可选的表达式语言 并默认实现基于JSR 223 SPI: ExpressFactoryProvider4jsr223 以便使用者采用熟悉语言来查找分析问题 支持所有JSR 223脚本引擎,脚本上下文对象,采用“it"变量来引用, 如:要获取指定应用类可使用`it.appClass("demo.MathGame")` 或`it.getClass("demo.MathGame")` 默认除ognl外,默认已启用js,groovy则需要增加手工加入类库才行(据说有内存泄漏问题,暂没默认加入)

ie: ``` java -jar arthas-boot.jar -v -cp mvel2-2.4.3.Final.jar;groovy-all-2.4.15.jar ```

1. 重构level方法,返回第一个最合适的classloader对应LoggerTypes,默认情况基本不用-c参数,提高日志设置指令可重用度,提升可用性 根据应用环境的实际情况再调用具体实现类库更新日志级别,而不是之前的不管是否有log4j/logback/log4j分别各调用一次(不存在类库会在日志文件生成异常日志) 2. 增加-p参数,可根据类名来过滤classloader或loggerName 3. 日志级别设置时结果多加了各日志类库的对应的日志级别修改结果 同时输出对应classloader的hashCode,用于recheck: 用来在需要时确认设置的日志级别对应classloader和期望的是否一致

默认实现切换为jmx方式实现的ServerConnectorMetricsProvider4TomcatJmx arthas原来的可能是AliTomcat特有的方式,相关代码已迁移至ServerConnectorMetricsProvider4AliTomcat 采用SPI方式已为其它应用服务器预留扩展点

express改为有默认值的可选项之后(https://github.com/alibaba/arthas/pull/1122) 为了能在命令中不填express而传入condition-express,故增加可先的Option方式传递之 此参数命名名暂定为-c 另外help提示中如同时有Option和Argument最好能合并显示:)

通过编译参数-Xpkginfo:always来强制编译package-info.java以实现增量构建的目的 据说package-info.java中没有注解的话默认是不会编译 而useIncrementalCompilation发现java源文件没编译会触发重新编译 可通过加-X参数后在maven构建输出中查找“Stale source detected"和”Changes detected“来排查哪些文件导致无法增量构建 ``` org.apache.maven.plugins maven-compiler-plugin 3.8.0 -Xpkginfo:always ```

主分支中4a48a7b0增加了numberOfLimit,但没实现原PR: #1291 主旨:尽快响应用户请求,避免误操作产生较大CPU和内存消耗 之前numberOfLimit的功能是查询处理结束后,再给出用户已提示这样做实际意义不大。 要做到fail-fast:应该是重构search内部实现,当匹配到目标限制时直接退出,列出结果。 当匹配结果>=numberOfLimit时给出提示