Giter VIP home page Giter VIP logo

log-rewrite's Introduction

log rewrite

log-rewrite-app

项目根目录运行 gradle :log-rewrite-app:distZip

log-rewrite-app/build/distributions/log-rewrite-app.zip为目标打包应用

解压之后bin目录下有可执行脚本文件

然后运行脚本./log-rewrite-app -c config-path 配置文件格式见下面详细说明

log-recover-app

项目根目录运行 gradle :log-recover-app:distZip �同上然后运行脚本./log-recover-app -m mapping-1.txt -m mapping-2.txt -l f1.log -l f2.log -d the/dist/dir 便可恢复日志。 -m -l �后可以多次添加map、日志文件;-d为恢复后的日志输出文件夹路劲。

�配置文件说明

格式为toml

projectShortName="grd" #the shot name for target project
versionCode=1

[[unit]]
[[unit.signatures]]
sign="com.getui.rewrite.test.LogUtil log(String)"
argsIndex=[0]

[[unit.signatures]]
sign="com.getui.rewrite.test.LogUtil log(String,String)"
argsIndex=[1]

[[unit.signatures]]
sign="com.getui.rewrite.test.LogUtil log(String,String)"
argsIndex=[0]
isTag=true

[[unit.signatures]]
sign="com.getui.rewrite.test.LogUtil debug(String)"
#  ## default is argsIndex=[0]

[unit.source]
dirs=[
"/Users/fox/workspace/getui/tools/log-rewrite/rewrite-test-java/src/main/java"
]

[unit.distribution]
dir="/Users/fox/workspace/getui/tools/log-rewrite/rewrite-test-java/build/rewrite/src/main/java"
mappingDir="/Users/fox/workspace/getui/tools/log-rewrite/rewrite-test-java/build/rewrite/mapping"

字段说明

  • projectShortName �模块名简称,一个项目里有多模块的时候区分各模块,比如sdk gks etc,如果只有一个模块就写项目名简称,字符尽量短 比如 gy

  • versionCode 版本号,每次发版的时候递增�1,� �用来区分不同版本的日志

  • unit.signatures.sign 日志函数签名, 参数若为其他类型需要加上完整包名 demo.LogUtil log(String,String,com.getui.LogInfo)

  • unit.signatures.argsIndex �需要混淆的参数index , �用中括号包围起来 eg: [1]

  • unit.source.dirs 源代码路径,若为相对路径则为 log-rewrite-app脚本的相对路径

  • unit.distribution.dir ��重写后存放代码的路径

  • unit.distribution.mappingDir ��重写后存放�映射表的路径

log-rewrite's People

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.