稳定性始终会是一家成功公司的重要指标,在移动端亦是如此。跟大部分创业公司一样,有赞在创业初期选择以核心业务为主, 在一些基础设施的搭建上主要以使用三方平台为主(腾讯bugly)。随着业务的发展和bugly的长期不维护,慢慢出现一些三方平台的弊端。例如:
垃圾(trash)是指无用或废弃的东西,可以在计算机中表示回收站中的删除文件或文件夹。当您删除文件时,它通常会被移动到回收站,而不是永久删除,以便您有机会恢复它们。这种机制可以防止意外删除重要文件。
最近新版本发布后,出现了一个偶现的crash并且迅速增加为Top1,这里对该问题做一个分析。 报错内容如下: NSException -[UITabBarController setSelectedViewController:] only a view controller in the tab bar controller's list of view controllers can be selected. crash堆栈如下:
这是一个简单的缓冲区溢出的漏洞,今天没事,来分析一下看看他溢出的原因,最后通过平衡堆栈的方式,让目标程序执行shellcode使程序不crash。只是用来研究和学习。
在处理客户需求的时候,曾经遇到过客户在线上删除了资源,但是本地资源编排不能处理tfstate状态与线上资源不一致的情况,这时候会读到空的资源引用,进而导致terraform crash。虽然现在在tencent terraform的最新版本中,基本上所有资源都能处理这个情景,但是如果你使用的是一些比较早的版本同时也遇上了类似问题,可以看一下下面的解决方案。
在iOS开发中,bug从来都叫人尴尬又头秃,bug中又以线上崩溃最为致命。本地尚且能相视一笑而后猥琐排查,如果线上应用崩溃,就需要考验职业素养了。
作 者 段聪,腾讯社交平台部高级工程师 商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处。 WeTest 导读 近期测试反馈一个问题,在旧版本微视基础上覆盖安装新版本的微视APP,首次打开拍摄页录制视频合成时高概率出现crash。 那么我们直奔主题,看看日志: 另外复现的日志中还出现如下信息: '/data/data/com.tencent.weishi/appresArchiveExtra/res1bodydetect/bodydetect/libxnet.so: strtab
导语 精神哥最近发现, 很多开发者在 iOS10 上遇到了一类堆栈为nano_free字样的Crash,也有很多人向我们Bugly客服反馈遇到了这类问题,但并没有好的解决方案。正当大家都束手无策的时候,微信强大的技术团队针对这类Crash进行了深度研究,并提出了一个解决方案。原来微信也遇到了这个问题呢,我们一起来看看他们是如何干掉这个Crash的吧! 背景 iOS 10.0-10.1.1上,新出现了一类堆栈为nano_free字样的crash问题,困扰了我们一段时间,这里主要分享解决这个问题的思路,最后尝试
最近在处理iOS问题时遇到了好几个坑,这里做个总结,也希望能帮助到遇到同样问题的同学。
原文链接:https://wetest.qq.com/lab/view/421.html
2017年4月,企鹅智酷公布了最新的《2017微信用户&生态研究报告》。报告数据显示,截止到2016年12月微信全球共计8.89亿月活用户,新兴的公众号平台拥有1000万个。微信这一年来直接带动了信息消费1742.5亿元,相当于2016年中国信息消费总规模的4.54%。
背景 iOS 10.0-10.1.1上,新出现了一类堆栈为nano_free字样的crash问题,困扰了我们一段时间,这里主要分享解决这个问题的思路,最后尝试提出一个解决方案可供参考。 它的crash堆栈大致为: 这种crash我们并不陌生,一般野指针的问题,也是这样的堆栈。但在iOS 10发布之后,这类crash就嗖地窜到了微信的crash排行榜的前列,而此时微信并没有发布新版本。 通过和一些内部、外部团队的交流,发现这是个共性问题,例如:https://forums.developer.appl
Mac已然是一个不可或缺的平台,但是相对其它平台来说,针对Mac app的各项专项测试却没有多少资料可供参考,本篇文章介绍了腾讯视频Mac端的各项专项测试总结,整理了过去一年腾讯视频Mac测试团队的探索和研究。
u-boot是一种普遍用于嵌入式系统中的Bootloader,Bootloader是在操作系统运行之前执行的一小段程序。他可以用来恢复小米路由器的固件,可以说只要刷了uboot,你的路由器基本上刷不死了。 以下操作都是在你获取了root信息后才可以实现。 2015年11月10日更: 刷uboot属于高危操作,如果你觉得刷了以后出现问题自己不一定Hold的住,请止步,谢谢合作! 如果造成不可挽回的损失,老高也没辙。。。 2015年9月17日更: 新版固件不要刷uboot了,会造成很多问题。 20
开发型团队App内部测试以及对应的crash报告类的服务相对很少,而且并不成熟。通过了解蒲公英-作为技术型研发团队算是在这一领域的后起之秀,而随着app市场的不断膨胀,相应的类似服务也逐渐增多,比较常用的有:
唐聪, 腾讯云高级工程师, etcd活跃贡献者, 主要负责腾讯云万级K8s集群和内部业务的公共etcd平台以及Serverless产品研发设计工作。 背景与挑战 随着腾讯自研上云及公有云用户的迅速增长,一方面,腾讯云容器服务TKE服务数量和核数大幅增长, 另一方面我们提供的容器服务类型(TKE托管及独立集群、EKS弹性集群、edge边缘计算集群、mesh服务网格、serverless knative)也越来越丰富。各类容器服务类型背后的核心都是K8s,K8s核心的存储etcd又统一由我们基于K8s构建的et
印象中一款非常棒的产品,经过反复测试上线这样的“幕后工作者”-测试员经常被看做bug的寻找着,但你曾想过实际是如何开展测试的吗?你是否好奇究竟都做了哪些,并且他们如何在一个典型的技术项目中体现价值的?下来大家来一起经历测试人员的思维过程,以及测试App时的各种考虑....
Oracle的任何一个新版本,总是会带来大量引人瞩目的新特性,但是往往在这些新特性引入之初,首先引起的是一些麻烦,因为对于新技术的不了解、因为对于旧环境的不适应,从Oracle产品到技术服务运维,总是要走过一个磨合的长期过程。 请注意:我们并不推荐大家盲目的关闭和摒弃Oracle的新特性,我们建议大家在遇到问题时,做出适合自己的调整。 就此盘点一下 Oracle 11g 中,那些新特性带来的新烦恼,如果有用户准备或者刚刚踏入这个新版本,则可以作为借鉴。 1.Adaptive direct path rea
看到percona发了篇Do Not Upgrade to Any Version of MySQL After 8.0.37. 说是mysql新版本有BUG.
Linux操作系统在作为服务器的场景下应用最为广泛,但是在使用过程中也会遇到莫名崩溃的情况.这时我们就希望能对崩溃前一刻内存中的数据进行分析,从而找到崩溃的原因.本文将对整个过程所涉及到的技术做一个简单但是全面的介绍,包括:如何安装kdump,如何设置系统参数来捕获崩溃前的内存;如何使用crash做简单的分析;并且介绍如何使用更加简便的工具PyKdump来做crash文件的分析.通过了解这些知识, 可以帮助Linux运维人员更快更方便地排查问题.
音视频产品、即时通信都有默认把sdk运行的log输出到本地文件,腾讯云技术支持在帮忙定位问题时,需要这些运行log分析问题。默认输出文件的路径如下表格。可修改输出文件路径、可过滤日志等级、可关闭日志输出。
今天讲的是纯干货,目的就是为了指导Android开发者如何根据JNI Crash日志顺藤摸瓜,最后直捣黄龙定位磨人的JNI Crash。所以废话不多,直接开干吧。
简介 本文记录的是:国庆节前夕,解决Crash率高达9.08%问题成功避免加班拿3倍工资的故事 PS: 除了在时间上两者相遇外,本文中提到的两个(top1&top2)crash问题与dex分包并没有关系 ---- 初见问题(2015-09-25) 2015-09-25:产品灰度第一天灰度结果:Crash率9.08%,主要是如下两个Crash所导致 TOP1: java.lang.NoClassDefFoundError 堆栈还原: java.lang.NoClassDefFoundError: com/ex
随着腾讯自研上云及公有云用户的迅速增长,一方面,腾讯云容器服务TKE服务数量和核数大幅增长, 另一方面我们提供的容器服务类型(TKE托管及独立集群、EKS弹性集群、edge边缘计算集群、mesh服务网格、serverless knative)也越来越丰富。各类容器服务类型背后的核心都是K8s,K8s核心的存储etcd又统一由我们基于K8s构建的etcd平台进行管理。基于它我们目前管理了千级etcd集群,背后支撑了万级K8s集群。
有赞在基础保障平台的实践中完成了 Crash平台 的建设,但是iOS的崩溃日志未经符号化,排查问题比较困难。为了降低iOS App的crash率,快速排查线上crash,疑难crash的跟踪处理,符号化崩溃日志显得尤为重要!
App 出现意外闪退我们称之为 Crash,Crash 率是衡量 App 稳定性的一个重要指标,App 的稳定性不仅影响使用体验,甚至会造成用户流失。由于导致 App Crash 的原因和类型众多,一篇文章无法阐述清楚,也不是本文的重点,我们不做过多赘述。
React Native (简称RN)是Facebook于2015年开源的移动端跨平台开发框架。RN从开源以来已经有6个年头了,有着十分丰富的社区资源和生态,时至今日依然有很多移动端项目都使用RN来开发。本文主要通过以往的项目实践来谈谈在选择RN开发app可能需要注意的一些点,也算是自己的一个踩坑经验总结。
GreatSQL合并Percona-Server 8.0.30的Beta版测试中,QA报了一个crash的bug:
之前我们介绍过 某酒店App sign、appcode签名解析(一) 带壳分析 r0tracer。
2016年3月10日,Tinker项目正式启动,并在同年9月23日举行的MDCC会议上开源。一年过去了,两个人,50%的工作时间。总的来说,填了一些坑,获得少许成绩,也遭受不少批评。 究竟Tinker是否将已经很糟糕的Android的生态变得更差,会不会对用户的安全造成更大的挑战? 回想Tinker的初心,我们希望开发者可以用很小代价进行快速升级,它是国内追求快速迭代诉求。立项至今,Tinker踩了很多坑也填了很多坑。今天,我希望跟大家分享这一年来我们遇到的一些问题,以及解决它们的思路与过程。 Tinke
作者|shwen 来自|WeMobileDev 2016年3月10日,Tinker项目正式启动,并在同年9月23日举行的MDCC会议上开源。一年过去了,两个人,50%的工作时间。总的来说,填了一些坑,获得少许成绩,也遭受不少批评。究竟Tinker是否将已经很糟糕的Android的生态变得更差,会不会对用户的安全造成更大的挑战? 回想Tinker的初心,我们希望开发者可以用很小代价进行快速升级,它是国内追求快速迭代诉求。立项至今,Tinker踩了很多坑也填了很多坑。今天,我希望跟大家分享这一年来我们遇到的一
Written by 赵文杰. SRS for Windows SRS 5.0.89+正式支持Windows,基于Cygwin64平台,支持代码编译,以及流水线,每个5.0的版本都会提供安装包。 Build from code 如果你需要自己从代码编译Windows版本的SRS,请先安装Cygwin64[1]。 另外,还需要安装工具gcc-g++ make automake patch pkg-config tcl cmake,可以参考流水线说明[2]。 安装好环境后,在Cygwin终端中执行命令: git
我们不久前定位了一个Linux内核bug,这个bug会影响所有在特权容器中启用了use-gss-proxy的Linux环境,表现为容器的网络命名空间(net namespace)无法彻底释放,导致容器终止后关联的虚拟网卡未能自动清除,运行时间长的机器上会观察到内存泄露。目前upstream还没有对这个bug的修复,我们内部已经做好了patch待测。 这个问题的定位过程很有借鉴价值,特此与大家分享。 【问题现象】 在k8s环境里,容器终止之后概率性地发生弹性网卡残留现象,而且只有privileged容器
前言 最近遇到一个苦恼的问题,寻找了漫长的时间才解决。 起因是项目需要fork一个新的分支到新的git,于是把代码复制到新的git,创建git库,然后推送,一切正常。 当我把target和工程的名字修改之后,出现了一下问题: CocoaPods did not set the base configuration of your project because your project already has a custom config set. In order for CocoaPods in
六脉神剑秘籍 说起一年一度的管家大版本,那可是一个浩大的工程,管家各大中心都会参与,变更代码线多,版本稳定期久,对各个中心正常的单周迭代需求合入影响大,这质量把控起来想想都有点头大啊。 今年的管家12版本也不例外,而且pm用倒推时间的方法,掐头去尾,留给研发的时间只有一个月!打磨期一个月!开发测试都震惊了!各种抗议无效后,只好想尽一切办法努力达标了。 过程的艰辛先略过不表,最后的结局还是令人满意的。研发如期完成,测试第一次承担的打磨率质量指标超过预期!去年管家11的打磨版本数是15,今年咱的打磨数只有2!打
1. 背景 一个新版本的代码,在4.x版本进入某个页面的时候,必现crash。看到必现,心情就放松了一半。 大致的crash信息如下: FATAL EXCEPTION: main java.lang.ClassCastException: android.support.v4.view.ViewPager$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams at android.widget.ListView.se
APP 的崩溃问题,一直以来都是开发过程中重中之重的问题。日常开发阶段的崩溃,发现后还能够立即处理。但是一旦发布上架的版本出现问题,就需要紧急加班修复 BUG,再更新上架新版本了。在这个过程中, 说不定会因为崩溃而导致关键业务中断、用户存留率下降、品牌口碑变差、生命周期价值下降等,最终导致流失用户,影响到公司的发展。
以前研究过一次在iPad上安装Linux系统,当时的方案是:AltStore + UTM,由于没有硬件虚拟化,性能非常差,只能安装服务器版Linux,而且UTM由于签名问题需要每7天续签一次,几乎不具有可玩性。
原文链接:http://wetest.qq.com/lab/view/404.html
北京时间凌晨一点,苹果一年一度的发布会如期而至。新机型的发布又会让适配相关的同学忙上一阵子啦,并且iOS Crash的问题始终伴随着移动开发者。本文将从三个阶段,由浅入深的介绍如何看懂并分析一篇crash报告,一起身临其境去读懂它吧。
翻译自苹果官方文档:Understanding and Analyzing Application Crash Reports
前言:一些复杂的工程可以通过查看工程的UML图快速分析个各个类之间的关系。当然,网上也有很多其它的方案,不过要么设置麻烦,要么用最新版本Xcode并不支持的插件方案。均不简单。
前言:本文翻译自sans.org,有删节。在学习sulley的过程中发现中文参考资料很少,所以抛砖引玉翻译一下,希望对学习协议fuzz测试的同学有帮助。本文适合作为学习sulley协议测试过程中参考资料,如果需要学习sulley的使用可以参考其文档。 背景 不久前,我们接到了一个渗透测试的项目。分配任务的时候,团队里有的同学负责无线渗透,有的负责web应用渗透,我分到的任务是对外网开放的网络端口进行测试。我的主要测试范围包括:从外部可以访问的系统接口,不包括客户测的漏洞利用,不包括web应用,不包括
Crash率是衡量一个App好坏的重要指标之一,如果你忽略了它的存在,它就会愈演愈烈,最后造成大量用户的流失,进而给公司带来无法估量的损失。本文讲述美团外卖Android客户端团队在将App的Crash率从千分之三做到万分之二过程中所做的大量实践工作,抛砖引玉,希望能够为其他团队提供一些经验和启发。
Oracle的任何一个新版本,总是会带来大量引人瞩目的新特性,但是往往在这些新特性引入之初,首先引起的是一些麻烦,因为对于新技术的不了解、因为对于旧环境的不适应,从Oracle产品到技术服务运维,总是要走过一个磨合的长期过程。 请注意:我们并不推荐大家盲目的关闭和摒弃Oracle的新特性,我们建议大家在遇到问题时,做出适合自己的调整。 就此盘点一下 Oracle 11g 中,那些新特性带来的新烦恼,如果有用户准备或者刚刚踏入这个新版本,则可以作为借鉴。 1 Adaptive direct path re
Native Crash常常发生在带有Jni代码的APP中,或者系统的Native服务中。作为比较难分析的一类问题,Native Crash其实还是有较多的方法去定位。
领取专属 10元无门槛券
手把手带您无忧上云