Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

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

对于DoKit的建议(平台dokit.cn、iOS、Android、小程序)(2021) #421

Open
yixiangboy opened this issue Mar 29, 2020 · 28 comments

Comments

@yixiangboy
Copy link
Contributor

No description provided.

@yixiangboy yixiangboy pinned this issue Mar 29, 2020
@yixiangboy yixiangboy changed the title 对于Dokit SDK的建议(iOS、Android、小程序) 对于Dokit SDK的建议(iOS、Android、小程序)(2020) Mar 29, 2020
@yixiangboy
Copy link
Contributor Author

yixiangboy commented Mar 29, 2020

iOS:期望iOS端支持swift中的print日志监控功能

@yixiangboy yixiangboy changed the title 对于Dokit SDK的建议(iOS、Android、小程序)(2020) 对于Dokit SDK的建议(dokit.cn、iOS、Android、小程序)(2020) Mar 30, 2020
@yixiangboy yixiangboy changed the title 对于Dokit SDK的建议(dokit.cn、iOS、Android、小程序)(2020) 对于Dokit SDK的建议(平台dokit.cn、iOS、Android、小程序)(2020) Mar 30, 2020
@yixiangboy
Copy link
Contributor Author

平台dokit.cn : 希望平台端mock 数据,可以通过post的body字段区分场景

@yixiangboy yixiangboy changed the title 对于Dokit SDK的建议(平台dokit.cn、iOS、Android、小程序)(2020) 对于Dokit的建议(平台dokit.cn、iOS、Android、小程序)(2020) Mar 31, 2020
@li-lance
Copy link

是否可以针对网络请求单独做日志功能,现有日志功能在查看一段时间内的网络请求日志并不直观,比如提供一个okhttp的拦截器这样也可以方便格式化json进行展示

@yixiangboy
Copy link
Contributor Author

是否可以针对网络请求单独做日志功能,现有日志功能在查看一段时间内的网络请求日志并不直观,比如提供一个okhttp的拦截器这样也可以方便格式化json进行展示

现在性能检测功能区有一个流量检测功能功能,里面有每一个接口的流量分析和接口数据详情,你可以试一下。

@debughao
Copy link

debughao commented Apr 14, 2020

能否对插件字节码替换部分做的更加灵活,可以通过插件配置选择来控制,而不是通过taskName是否release判断。

    //如果task包含release 则不进行字节码替换
        for (String taskName : taskNames) {
            if (taskName.contains("Release")) {
                return;
            }
        }

@jtsky
Copy link
Collaborator

jtsky commented Apr 15, 2020

能否对插件字节码替换部分做的更加灵活,可以通过插件配置选择来控制,而不是通过taskName是否release判断。

    //如果task包含release 则不进行字节码替换
        for (String taskName : taskNames) {
            if (taskName.contains("Release")) {
                return;
            }
        }

我们android可以通过以下配置来更加精细化的控制字节码插装
dokitExt {
//整个dokit的插件开关
dokitPluginSwitch = true
//函数耗时的开关
slowMethodSwitch = true
//大图检测的开关
bigImgSwitch = true
//函数耗时的自定义阈值 单位为ms 1000ms = 1s
thresholdTime = 200
//在指定的包名业务代码下插入代码
packageNames = ["com.didichuxing.doraemondemo"]
}
详细文档:http://xingyun.xiaojukeji.com/docs/dokit/#/androidGuide

@MasterWangBo
Copy link

MasterWangBo commented Apr 22, 2020

定位图标的拖动不是很灵敏,有的时候要拖好几次才能拖动

@li-lance
Copy link

是否可以针对网络请求单独的日志功能,现有日志功能在查看内部的网络请求日志并不直观,而是提供一个okhttp的拦截器这样也可以方便地格式化json进行展示

现在性能检测功能区有一个流量检测功能功能,里面有每一个接口的流量分析和接口数据详情,你可以试一下。

提个建议接口列表是否可以不设置ellipsize属性,现在这样链接长了看不见接口名称呀

@jtsky
Copy link
Collaborator

jtsky commented Apr 26, 2020

是否可以针对网络请求单独的日志功能,现有日志功能在查看内部的网络请求日志并不直观,而是提供一个okhttp的拦截器这样也可以方便地格式化json进行展示

现在性能检测功能区有一个流量检测功能功能,里面有每一个接口的流量分析和接口数据详情,你可以试一下。

提个建议接口列表是否可以不设置ellipsize属性,现在这样链接长了看不见接口名称呀

好的 这个我这边处理一下 随着下个版本发

@RubinTry
Copy link

要是能增加一个类似bugly一样的异常上报功能就更好了,就是那种能在dokit网页里看到异常的那种

@hugodotlau
Copy link

dokit.cn 不开源?

@willpyshan13
Copy link

有没有考虑做个flutter版本的?

@jtsky
Copy link
Collaborator

jtsky commented Aug 5, 2020

dokit.cn 不开源?

我们的平台端是搭建在滴滴的内部云上,受滴滴内部的监管,由于各种原因我们暂时还无法针对平台端进行开源。

@jtsky
Copy link
Collaborator

jtsky commented Aug 5, 2020

有没有考虑做个flutter版本的?

对于flutter版本,我们上次在社区里做过一次调查,现在flutter的普及率还没有那么高,等再过一段时间,假如社区反响比较强烈的话我们会推出专享的flutter模块。

@liuleshuai
Copy link

android:期望支持多进程,比如有些App需要检测游戏独立进程的指标,或者WebVIew独立进程的指标。

@ReverseScale
Copy link

1)建议优化:希望引入 Hook 机制,方便扩展现有功能,比如:H5 任意门,如果需要 url 跳转到公司自家的 WebView,就可以 hook 住然后“架接”到任意 WebView。

2)建议功能:推出 UI 设计图对比功能,可以网站上传设计图,在工具集中进行1:1对比,帮助还原设计稿,比如:https://www.appcoda.com.tw/flawless-app-demo/。

@ALongWay
Copy link

我公司准备使用 DoKit 的 mock 功能,在试用过程中,发现一些不太方便的地方,在此提出一些建议:

  1. 在 web 管理后台,为 mock 的接口场景提供标识符,便于在客户端抓包以后,能分别出 mock 的是哪个原接口

现在能看到 mock 以后的一个场景id,但是无法在后台查到对应的是哪个原接口,对于同时mock多个接口,想抓包查看时候,无法区分。

  1. 在 web 管理后台,为 mock 的 json 数据字段提供便捷生成器,便于生成一定规则的随机数据

这个功能 easyMock 是有提供的,可以为 json 的 value,指定随机生成的正则,便于客户端模拟不同数据。

  1. 能在管理后台配置 mock 接口的域名

存在这种场景,path 一样,但是域名可能不同,就会出现这些接口,都被同一个 mock 场景拦截的情况

@JackTuoTuo
Copy link

希望尽快适配gradle插件4.1.0

@guixin567
Copy link

期待flutter 版本

@binzi56
Copy link

binzi56 commented Feb 3, 2021

希望iOS展开的面板, 点击某个自定义项可以更新它的描述, 我想弄个开关点击后更改图标下发的描述, 目前还不能实现这个功能;

只能删除某个plugin然后在添加,这样的话, 位置会变更;
希望可以提供根据Module,PluginName只更新某个collectionViewCell的方法, 以此来更新图标/描述;

=============
tip:开关切换方便一些

@binzi56
Copy link

binzi56 commented Feb 3, 2021

希望iOS展开的面板, 点击某个自定义项可以更新它的描述, 我想弄个开关点击后更改图标下发的描述, 目前还不能实现这个功能;

只能删除某个plugin然后在添加,这样的话, 位置会变更;
希望可以提供根据Module,PluginName只更新某个collectionViewCell的方法, 以此来更新图标/描述;

=============
tip:开关切换方便一些

点击悬浮按钮展开的时候再加个回调, 方便刷新状态

@KaelInvoker
Copy link

目前抓包只能等app启动后打开开关才可以,在打开开关到启动中间这段没法记录请求,能否把开关持久缓存下来

@jtsky jtsky changed the title 对于Dokit的建议(平台dokit.cn、iOS、Android、小程序)(2020) 对于DoKit的建议(平台dokit.cn、iOS、Android、小程序)(2021) Dec 7, 2021
@ChenJunXu
Copy link

能否对插件字节码替换部分做的更加灵活,可以通过插件配置选择来控制,而不是通过 taskName 是否 release 判断。

    //如果task包含release 则不进行字节码替换
        for (String taskName : taskNames) {
            if (taskName.contains("Release")) {
                return;
            }
        }

我们 android 可以通过以下配置来更加精细化的控制字节码插装 dokitExt { // 整个 dokit 的插件开关 dokitPluginSwitch = true // 函数耗时的开关 slowMethodSwitch = true // 大图检测的开关 bigImgSwitch = true // 函数耗时的自定义阈值 单位为 ms 1000ms = 1s thresholdTime = 200 // 在指定的包名业务代码下插入代码 packageNames = ["com.didichuxing.doraemondemo"] } 详细文档:http://xingyun.xiaojukeji.com/docs/dokit/#/androidGuide

插件逻辑里判断 release 包就不会往下执行。我们项目以前是通过渠道区分线上包和内部包,给到测试同事是 release 包,这里的拦截导致测试同事用不了一些插件功能。
dJD71GfMg2

@movemoveLife
Copy link

movemoveLife commented Mar 18, 2022

        优化建议:
        在Android使用卡顿监控的时候,通过传入自定义Printer,然后在println函数里面进行判断卡顿逻辑。这里有一个值得关注的问题就是,">>>>> Dispatching to " + msg.target + " " +
            msg.callback + ": " + msg.what。这里有大量的字符串拼接,会损耗性能。这里想能不能插装替换成logging.println(""),省掉这个字符串的拼接。

        Printer logging = me.mLogging;        
        if (logging != null) {
            logging.println(">>>>> Dispatching to " + msg.target + " " +
            msg.callback + ": " + msg.what);
        }

        msg.target.dispatchMessage(msg);        
        if (logging != null) {
            logging.println("<<<<< Finished to " + msg.target + " " + msg.callback);
        }   

@z876335662
Copy link

能否在局域网内查看日志

@jayden320
Copy link

希望iOS的ANR检测,使用PLCrashReporter库获取堆栈。BSBacktraceLogger无法解析系统的堆栈。

@larboy1991
Copy link

建议网络抓包时不展示流量监控的View

@CtrlJone
Copy link

什么时候支持SPM导入

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests