学习
实践
活动
专区
工具
TVP
写文章
  • 广告
    关闭

    有奖征文丨玩转 Cloud Studio

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【工程】在线诊断系统设计与实现

    概要 本文分享一些在线问题诊断的经验,主要是业务层面,服务层面的在线问题诊断一般需要依赖服务监控系统和报警系统来辅助定位问题。 1.诊断分类 在服务端的开发中,我觉得有这几类问题的诊断。 上面第一种诊断,一般问题可以解决,但是有时候线上的某个设备,你自己构造请求过去,返回的结果也是符合预期的,但是实际就是返回的内容不符合预期的,这个时候需要在线系统有能力嗅探和捕捉线上的真实请求。 今天主要围绕第1类诊断来展开谈谈这类系统的设计与实现。 2.整体架构 ? 在线诊断架构图 如上图,该诊断系统需要具备以下几个能力。 界面。提供给开发人员方面构造请求的友好的界面。 请求构造。 需要方便的给研发人员诊断问题的结果,一般以json来展示即可。 3.数据结构设计 诊断日志最重要的功能是:需要知道系统中每一步关键逻辑发生了什么。同时又不能够给在线系统带来相应的时间和空间的开销。 image DebuggerOnlineImpl用作在线诊断时候的实现,DebuggerOnlineNoOp作为线上实际流量的实现,线上的真实流量DebugOnline实现为空。

    82020

    Github Trending榜首|阿里开源Java在线诊断工具Arthas

    ---- 上周刚刚开源的阿里内部广泛使用的Java在线诊断工具Arthas,今天来到了Github trending榜首,相当于程序员的微博热搜榜首! 遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗? 线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现! 是否有一个全局视角来查看系统的运行状况? Arthas 是基于 Greys 进行二次开发的全新在线诊断工具,利用Java6的Instrumentation特性,动态增强你所指定的类,获取你想要到的信息, 采用命令行交互模式,同时提供丰富的 Tab 此脚本暂时只接受一个参数 pid,即只能诊断本机上的 Java 进程。 Dashboard https://alibaba.github.io/arthas/dashboard ? 、预发使用时,请尽量明确需要观测的类、方法以及条件,诊断结束要执行 shutdown 或将增强过的类执行 reset 命令。

    72921

    Confluence 6 诊断

    当你对性能进行诊断或者希望知道是什么原因导致 Confluence 崩溃,你希望知道在 Confluence 内部是什么导致这些问题发生的。 这个时候系统的诊断信息能够帮助你获得更多的有关的这些信息。 通常情况下不是偶然发生的,诊断警告将会帮助你构建有关你 Confluence 站点表现的详细快照,然后帮助你来识别导致你这些问题的的症状。 我们将会提供为诊断信息提供 UI,请关注我们的站点来获得有关的更新。 有关诊断警告 系统诊断工具的作用是能够对系统的症状和表现进行持续的监控。 诊断信息将会存储在数据库中,这些数据每  30 天后会删除。老的警告信息将会在 30 天后被自动清理。

    36540

    详解UDS CAN诊断:什么是UDS(ISO 14229)诊断

    目录 1、UDS诊断概念 2、UDS诊断组成部分 3、UDS诊断服务 ---- 之前讲解到CAN物理层和数据链路层的相关知识,这些属于ISO 11898-1、ISO 11898-2和ISO 11898- 1、UDS诊断概念 UDS(Unified Diagnostic Services,统一的诊断服务)诊断协议是在汽车电子ECU环境下的一种诊断通信协议。 :CAN实现的统一诊断服务(UDSonCAN) ; ISO 14229-4-2012:FlexRay实现的统一诊断服务(UDSonFR) ; ISO 14229-5-2013:Internet协议实现的统一诊断服务 3、UDS诊断服务 UDS诊断是一种定向通信的交互协议(Request/Response),诊断方(Tester)发送服务请求,ECU返回响应(肯定响应/否定响应)。 UDS诊断包括6大类,26种服务,每种服务都有自己独立的ID,即SID(Service Identifier)。 UDS诊断服务的通信协议基本相似,但又有所区别。

    40620

    java 诊断工具—— Arthas

    今天的主角就登场了,阿里巴巴最近开源出来的一个针对 java 的工具,主要是针对 java 的问题进行诊断---Arthas(阿尔萨斯) ? 这就是使用Arthas诊断出的效率问题 [滑稽] 是不是特别爽,有了这个工具,妈妈再也不用担心我优化问题了,哪里慢改哪里! 此脚本暂时只接受一个参数 pid,即只能诊断本机上的 Java 进程。 使用classloader去getResource monitor/watch/trace相关 请注意,这些命令,都通过字节码增强技术来实现的,会在指定类的方法中插入一些切面来实现数据统计和观测,因此在线上 、预发使用时,请尽量明确需要观测的类、方法以及条件,诊断结束要执行 shutdown 或将增强过的类执行 reset 命令。

    99510

    网络诊断方案选型

    这里的网络诊断主要是针对特定的域名或者ip,也就是说app的网络诊断是对当前网络到域名指向的服务端的连通性和带宽情况。 这里分几个层面来说。 首先是哪些信息用来诊断网络,其次这些信息的诊断选择什么工具,再次网络诊断出来的数据如何理解。最后还需要给网络状况一个标准,以便于用户理解这个网络问题。 2. 网络诊断的工具 常用的网络工具或者方式,包括ping、DNS、traceroute、网络测速 2.1.ping测试 ping命令是基于ICMP,是在网络层。 参考文章 [1] 移动端下各类诊断方法与工具 [2] Android 网络优化,使用 HTTPDNS 优化 DNS,从原理到 OkHttp 集成 [3] Android获得DNS地址 [4] DNS(二 )通过dig命令理解DNS [5] Android网络测试与诊断 [6] 通话前网络测速

    1.7K60

    关注

    腾讯云开发者公众号
    10元无门槛代金券
    洞察腾讯核心技术
    剖析业界实践案例
    腾讯云开发者公众号二维码

    相关产品

    • 数据库智能管家 DBbrain

      数据库智能管家 DBbrain

      腾讯云数据库智能管家(DBbrain)是一款可为用户提供数据库性能、安全、管理等功能的数据库自治平台。利用机器学习、大数据手段快速复制资深数据库管理员的成熟经验,将大量数据库问题的诊断优化工作自动化,服务于云上和云下企业。提供从用户行为安全、SQL安全到数据存储加密安全等多项数据安全服务,公安部认证的等保合规性安全产品。提供免安装、免运维、即开即用、多种数据库类型与多种环境统一的web数据库管理终端。

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭

      扫码关注腾讯云开发者

      领取腾讯云代金券