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

iOS 无法收集网络数据 #109

Closed
cunzhegao opened this issue Mar 2, 2023 · 16 comments
Closed

iOS 无法收集网络数据 #109

cunzhegao opened this issue Mar 2, 2023 · 16 comments

Comments

@cunzhegao
Copy link

SoloX 版本:2.4.1
设备:iPhone 13 Pro
OS:16.0.2

Network Data 栏都是 0,看 terminal 有疑似报错:

Exception in thread perf:
Traceback (most recent call last):
File "/usr/local/Cellar/[email protected]/3.11.2_1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py", line 1038, in _bootstrap_inner
self.run()
File "/usr/local/Cellar/[email protected]/3.11.2_1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py", line 975, in run
self._target(*self._args, **self._kwargs)
File "/usr/local/lib/python3.11/site-packages/solox/public/iosperf/_perf.py", line 266, in append_data
for _type, data in idata:
File "/usr/local/lib/python3.11/site-packages/solox/public/iosperf/_perf.py", line 259, in iter_network_flow
"downFlow": (nstat['rx.bytes'] or 0) / 1024,
KeyError: 'rx.bytes'

@rafa0128
Copy link
Member

rafa0128 commented Mar 3, 2023

SoloX 版本:2.4.1 设备:iPhone 13 Pro OS:16.0.2

Network Data 栏都是 0,看 terminal 有疑似报错:

Exception in thread perf: Traceback (most recent call last): File "/usr/local/Cellar/[email protected]/3.11.2_1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py", line 1038, in _bootstrap_inner self.run() File "/usr/local/Cellar/[email protected]/3.11.2_1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/threading.py", line 975, in run self._target(*self._args, **self._kwargs) File "/usr/local/lib/python3.11/site-packages/solox/public/iosperf/_perf.py", line 266, in append_data for _type, data in idata: File "/usr/local/lib/python3.11/site-packages/solox/public/iosperf/_perf.py", line 259, in iter_network_flow "downFlow": (nstat['rx.bytes'] or 0) / 1024, KeyError: 'rx.bytes'

请问重新连接收集还有这个问题吗?还是每次都会有,我自己测试是正常的

@cunzhegao
Copy link
Author

请问重新连接收集还有这个问题吗?还是每次都会有,我自己测试是正常的

每次都是一样的问题,试了 2.3.8 也是一样。你正常的 iOS 版本是多少的。

@cunzhegao
Copy link
Author

请问重新连接收集还有这个问题吗?还是每次都会有,我自己测试是正常的

试了下 Android 也是 FPS 和网络数据都是一直 0,不过 Android 没有上面的报错。
可能是什么问题呢?

@rafa0128
Copy link
Member

rafa0128 commented Mar 3, 2023

请问重新连接收集还有这个问题吗?还是每次都会有,我自己测试是正常的

试了下 Android 也是 FPS 和网络数据都是一直 0,不过 Android 没有上面的报错。 可能是什么问题呢?

ios大概知道什么原因了,是instruments的原因,还在想怎么处理。安卓的fps游戏类app目前收集不了,其他的app需要是动态页面fps才可能不为0,网络应该没啥问题。

@cunzhegao
Copy link
Author

请问重新连接收集还有这个问题吗?还是每次都会有,我自己测试是正常的

试了下 Android 也是 FPS 和网络数据都是一直 0,不过 Android 没有上面的报错。 可能是什么问题呢?

ios大概知道什么原因了,是instruments的原因,还在想怎么处理。安卓的fps游戏类app目前收集不了,其他的app需要是动态页面fps才可能不为0,网络应该没啥问题。

iOS 需要等修复版本嘛?我这边可不可以 fallback 回某个没问题的版本?

@rafa0128
Copy link
Member

rafa0128 commented Mar 3, 2023

请问重新连接收集还有这个问题吗?还是每次都会有,我自己测试是正常的

试了下 Android 也是 FPS 和网络数据都是一直 0,不过 Android 没有上面的报错。 可能是什么问题呢?

ios大概知道什么原因了,是instruments的原因,还在想怎么处理。安卓的fps游戏类app目前收集不了,其他的app需要是动态页面fps才可能不为0,网络应该没啥问题。

iOS 需要等修复版本嘛?我这边可不可以 fallback 回某个没问题的版本?

都会有问题,你的移动设备是wifi还是数据网络?

@cunzhegao
Copy link
Author

请问重新连接收集还有这个问题吗?还是每次都会有,我自己测试是正常的

试了下 Android 也是 FPS 和网络数据都是一直 0,不过 Android 没有上面的报错。 可能是什么问题呢?

ios大概知道什么原因了,是instruments的原因,还在想怎么处理。安卓的fps游戏类app目前收集不了,其他的app需要是动态页面fps才可能不为0,网络应该没啥问题。

iOS 需要等修复版本嘛?我这边可不可以 fallback 回某个没问题的版本?

都会有问题,你的移动设备是wifi还是数据网络?

wifi 和数据网络都试过,一样的问题。

@rafa0128
Copy link
Member

rafa0128 commented Mar 3, 2023

请问重新连接收集还有这个问题吗?还是每次都会有,我自己测试是正常的

试了下 Android 也是 FPS 和网络数据都是一直 0,不过 Android 没有上面的报错。 可能是什么问题呢?

ios大概知道什么原因了,是instruments的原因,还在想怎么处理。安卓的fps游戏类app目前收集不了,其他的app需要是动态页面fps才可能不为0,网络应该没啥问题。

iOS 需要等修复版本嘛?我这边可不可以 fallback 回某个没问题的版本?

都会有问题,你的移动设备是wifi还是数据网络?

wifi 和数据网络都试过,一样的问题。

我现在还不确定是xcode版本还是iphone的兼容性,看报错应该是xcode的instruments没有返回这个数据,你能换台设备试试吗?我这边是没有问题的,iphonex 16.1。我建议如果能看源码提交pr是最好。作者的设备没问题的一律不解决了,等别人提交pr。

@cunzhegao
Copy link
Author

请问重新连接收集还有这个问题吗?还是每次都会有,我自己测试是正常的

试了下 Android 也是 FPS 和网络数据都是一直 0,不过 Android 没有上面的报错。 可能是什么问题呢?

ios大概知道什么原因了,是instruments的原因,还在想怎么处理。安卓的fps游戏类app目前收集不了,其他的app需要是动态页面fps才可能不为0,网络应该没啥问题。

iOS 需要等修复版本嘛?我这边可不可以 fallback 回某个没问题的版本?

都会有问题,你的移动设备是wifi还是数据网络?

wifi 和数据网络都试过,一样的问题。

我现在还不确定是xcode版本还是iphone的兼容性,看报错应该是xcode的instruments没有返回这个数据,你能换台设备试试吗?我这边是没有问题的,iphonex 16.1。我建议如果能看源码提交pr是最好。作者的设备没问题的一律不解决了,等别人提交pr。

请问你那边 macos 系统是多少的

@jialeigd
Copy link

报错问题和题主的一样,打日志感觉是返回的nstat数据里没有rx.bytes这个字段了。
日志如下solox iter_network_flow nstat : {'connection-detected': {'Local': '[fe80::b8ea:cbff:fe08:3432]:58054', 'Remote': '[::]:0', 'InterfaceIndex': 9, 'Pid': -2, 'RecvBufferSize': 131072, 'RecvBufferUsed': 0, 'SerialNumber': 8, 'Protocol': 'tcp6'}}
SoloX 版本:2.4.4
设备:iPhone 6s Plus
OS:15.7

@rafa0128
Copy link
Member

报错问题和题主的一样,打日志感觉是返回的nstat数据里没有rx.bytes这个字段了。 日志如下solox iter_network_flow nstat : {'connection-detected': {'Local': '[fe80::b8ea:cbff:fe08:3432]:58054', 'Remote': '[::]:0', 'InterfaceIndex': 9, 'Pid': -2, 'RecvBufferSize': 131072, 'RecvBufferUsed': 0, 'SerialNumber': 8, 'Protocol': 'tcp6'}} SoloX 版本:2.4.4 设备:iPhone 6s Plus OS:15.7

我没有iphone调试了,你pip install tidevice==0.9.7再试试,我看看是不是tidevice升级后的影响

@rafa0128
Copy link
Member

请问重新连接收集还有这个问题吗?还是每次都会有,我自己测试是正常的

试了下 Android 也是 FPS 和网络数据都是一直 0,不过 Android 没有上面的报错。 可能是什么问题呢?

ios大概知道什么原因了,是instruments的原因,还在想怎么处理。安卓的fps游戏类app目前收集不了,其他的app需要是动态页面fps才可能不为0,网络应该没啥问题。

iOS 需要等修复版本嘛?我这边可不可以 fallback 回某个没问题的版本?

都会有问题,你的移动设备是wifi还是数据网络?

wifi 和数据网络都试过,一样的问题。

我现在还不确定是xcode版本还是iphone的兼容性,看报错应该是xcode的instruments没有返回这个数据,你能换台设备试试吗?我这边是没有问题的,iphonex 16.1。我建议如果能看源码提交pr是最好。作者的设备没问题的一律不解决了,等别人提交pr。

请问你那边 macos 系统是多少的

应该和系统无关,你能指定装pip install tidevice==0.9.7,看看是不是正常

@jialeigd
Copy link

大神,我怀疑可能是M1返回的数据包不一样了? image 如图日志,获取网络数据前几个connection-detected包里没有RxBytes等数据,导致_perf.py里"downFlow": (nstat['rx.bytes'] or 0) / 1024 解析rx.bytes失败,当前获取网络进程崩溃了?

connection-update包里有RxBytes,TxBytes等数据,大神,在解析里做个容错是不是就可以了?

@rafa0128
Copy link
Member

大神,我怀疑可能是M1返回的数据包不一样了? image 如图日志,获取网络数据前几个connection-detected包里没有RxBytes等数据,导致_perf.py里"downFlow": (nstat['rx.bytes'] or 0) / 1024 解析rx.bytes失败,当前获取网络进程崩溃了?

connection-update包里有RxBytes,TxBytes等数据,大神,在解析里做个容错是不是就可以了?

不是,这个是因为tidevices改了,你先按照我说的pip install tidevice==0.9.7看看是不是正常

@jialeigd
Copy link

大神,我怀疑可能是M1返回的数据包不一样了? image 如图日志,获取网络数据前几个connection-detected包里没有RxBytes等数据,导致_perf.py里"downFlow": (nstat['rx.bytes'] or 0) / 1024 解析rx.bytes失败,当前获取网络进程崩溃了?

connection-update包里有RxBytes,TxBytes等数据,大神,在解析里做个容错是不是就可以了?

不是,这个是因为tidevices改了,你先按照我说的pip install tidevice==0.9.7看看是不是正常

大神,按照你说的安装tidevice==0.9.7后,真可以了

@rafa0128
Copy link
Member

请安装最新版本,我刚发布了

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

3 participants