DoKit icon indicating copy to clipboard operation
DoKit copied to clipboard

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

Open yixiangboy opened this issue 5 years ago • 28 comments

yixiangboy avatar Mar 29 '20 13:03 yixiangboy

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

yixiangboy avatar Mar 29 '20 13:03 yixiangboy

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

yixiangboy avatar Mar 30 '20 04:03 yixiangboy

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

li-lance avatar Mar 31 '20 10:03 li-lance

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

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

yixiangboy avatar Mar 31 '20 10:03 yixiangboy

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

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

debughao avatar Apr 14 '20 08:04 debughao

能否对插件字节码替换部分做的更加灵活,可以通过插件配置选择来控制,而不是通过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

jtsky avatar Apr 15 '20 02:04 jtsky

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

MasterWangBo avatar Apr 22 '20 01:04 MasterWangBo

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

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

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

li-lance avatar Apr 24 '20 03:04 li-lance

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

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

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

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

jtsky avatar Apr 26 '20 02:04 jtsky

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

RubinTry avatar Apr 29 '20 01:04 RubinTry

dokit.cn 不开源?

hugodotlau avatar Jun 22 '20 12:06 hugodotlau

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

willpyshan13 avatar Jun 23 '20 09:06 willpyshan13

dokit.cn 不开源?

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

jtsky avatar Aug 05 '20 07:08 jtsky

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

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

jtsky avatar Aug 05 '20 07:08 jtsky

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

liuleshuai avatar Aug 10 '20 09:08 liuleshuai

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

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

ReverseScale avatar Sep 18 '20 04:09 ReverseScale

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

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

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

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

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

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

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

ALongWay avatar Oct 16 '20 06:10 ALongWay

希望尽快适配gradle插件4.1.0

JackTuoTuo avatar Nov 01 '20 07:11 JackTuoTuo

期待flutter 版本

guixin567 avatar Nov 11 '20 12:11 guixin567

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

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

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

binzi56 avatar Feb 03 '21 09:02 binzi56

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

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

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

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

binzi56 avatar Feb 03 '21 12:02 binzi56

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

KaelInvoker avatar Jun 29 '21 03:06 KaelInvoker

能否对插件字节码替换部分做的更加灵活,可以通过插件配置选择来控制,而不是通过 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

ChenJunXu avatar Feb 11 '22 07:02 ChenJunXu

        优化建议:
        在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);
        }   

movemoveLife avatar Mar 18 '22 09:03 movemoveLife

能否在局域网内查看日志

z876335662 avatar Apr 18 '22 01:04 z876335662

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

jayden320 avatar Sep 29 '22 09:09 jayden320

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

larboy1991 avatar Oct 25 '22 08:10 larboy1991

建议网络抓包可以copy网络日志

iimuy avatar Apr 25 '23 06:04 iimuy