WO2014106489A1 - 浏览器崩溃信息的处理方法及系统 - Google Patents

浏览器崩溃信息的处理方法及系统 Download PDF

Info

Publication number
WO2014106489A1
WO2014106489A1 PCT/CN2014/070185 CN2014070185W WO2014106489A1 WO 2014106489 A1 WO2014106489 A1 WO 2014106489A1 CN 2014070185 W CN2014070185 W CN 2014070185W WO 2014106489 A1 WO2014106489 A1 WO 2014106489A1
Authority
WO
WIPO (PCT)
Prior art keywords
crash
browser
information
data packet
packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2014/070185
Other languages
English (en)
French (fr)
Inventor
范家鹏
张鹏翼
任寰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to US14/759,617 priority Critical patent/US9876696B2/en
Publication of WO2014106489A1 publication Critical patent/WO2014106489A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0709Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0769Readable error formats, e.g. cross-platform generic formats, human understandable formats
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Definitions

  • the present invention relates to the field of computer network technologies, and in particular, to a method and system for processing browser crash information. Background technique
  • a method for processing browser crash information including: receiving browser crash status information uploaded when a browser crashes; generating, according to the browser crash status information, whether to allow a browser to upload a crash Crash identification information of the data packet; feeding back the crash identification information to the browser; receiving the crash of the crash data packet uploaded by the browser if the crash identification information indicates that the browser is allowed to upload the crash data packet Information; starting a crash packet automatic analysis program, analyzing the crash data packet; and transmitting the analysis result data of the crash data packet to the browser for uploading the crash data packet.
  • FIG. 1 is a flow chart showing a method of processing browser crash information according to an embodiment of the present invention
  • FIG. 2 is a flowchart showing a method of processing browser crash information according to another embodiment of the present invention
  • FIG. 4 illustrates a block diagram of a server that performs the method of the present invention in accordance with one embodiment of the present invention
  • FIG. 5 illustrates A storage unit for holding or carrying program code implementing the method of the present invention, in accordance with one embodiment of the present invention.
  • the method 100 begins in step S101, in which browser crash status information uploaded when a browser crashes is received.
  • the browser crashes first upload the browser crash status information to the cloud.
  • the browser uploads browser crash status information to the cloud using the Get interface provided by the cloud.
  • the browser crash status information is information about the crash status fed back by the browser, and includes at least browser crash common parameter information (pubkey), optionally including a command line, a browser product name, and a first browser side data school.
  • the first browser side data verification information is generated by the browser according to the browser crash public parameter information and the preset key.
  • Browser crash public parameter letter The information includes at least the following information: information about the crash module, the specific crash offset, the crash stack, the browser version number, and the operating system version number.
  • a crash identification information (dumpid) indicating whether to allow the browser to upload the crashed data packet is generated based on the browser crash state information.
  • the cloud mainly generates crash identification information according to the above browser crash public parameter information. Specifically, the cloud extracts information about the crash module, the specific crash offset, the crash stack, the browser version number, the operating system version number, and the like, from the browser crash status information, according to a preset algorithm pair. This information is processed to generate a crash key, for example: The above information is processed according to the MD5 algorithm to generate a dumpkey. If the number of the same dumpkey is greater than or equal to the preset threshold (for example, 3), the cloud indicates the same browser crash status information.
  • the preset threshold for example, 3
  • step S212 in which different analysis devices initiate respective crash packet automatic analysis programs to analyze the crash packets.
  • the analysis step can be carried out in the following two ways: One is to deploy an automatic crash packet analysis program on the Windows machine, and to monitor the files in the current directory at any time. Once a new crash packet is found, analyze it immediately and return to the analysis in time. The resulting data; the other is that the Windows machine calls the automated analysis interface of another cloud crash server to analyze the crash packets.
  • the browser after receiving the browser crash status information uploaded when the browser crashes, generating, according to the browser crash status information, a crash identifier information indicating whether to allow the browser to upload the crash data packet, and feeding back to the browsing For the browser to determine whether to get permission to upload the crash packet based on the crash identification information.
  • the browser uploads the crash packet, and the cloud launches the automatic analysis program to analyze the crash packet and deliver the analysis result data to the browser.
  • This approach provides a cloud-system-level solution that collects, processes, analyzes, and authenticates browser crashes in a targeted manner.
  • the first cloud crash server 320 is further configured to generate first server-side data verification information according to the crash identification information and the preset key, and feed back the first server-side data while feeding back the crash identification information to the browser.
  • the verification information is sent to the browser for the browser to verify the validity and integrity of the crash identification information by verifying the first server side data verification information.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Environmental & Geological Engineering (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种浏览器崩溃信息的处理方法及系统。其中方法包括:接收浏览器崩溃时上传的浏览器崩溃状态信息;根据所述浏览器崩溃状态信息生成指示是否允许浏览器上传崩溃数据包的崩溃标识信息;反馈所述崩溃标识信息到所述浏览器;在所述崩溃标识信息表明允许浏览器上传崩溃数据包的情况下,接收所述浏览器上传的包括崩溃数据包的崩溃信息;启动崩溃数据包自动分析程序,对所述崩溃数据包进行分析;将所述崩溃数据包的分析结果数据下发到所述上传崩溃数据包的浏览器。本发明提供了一种云系统级的方案,能够有针对性地对浏览器的崩溃信息进行收集、处理、分析以及鉴定。

Description

浏览器崩溃信息的处理方法及系统 技术领域
本发明涉及计算机网络技术领域,具体涉及一种浏览器崩溃信息的处理方法及系统。 背景技术
云计算(cloud computing)是分布式计算技术的一种, 其最基本的概念是通过网络将 庞大的计算处理程序自动拆分成无数个较小的子程序, 再交由多部服务器所组成的庞大 系统经搜寻、 计算分析之后将处理结果回传给用户。 通过该技术, 网络服务提供者可以 在数秒之内达成处理数以千万计甚至数以亿计的信息的目的, 从而达成和"超级计算机" 同样强大效能的网络服务。
在浏览器进行网页加载的过程中, 常常由于种种原因使得浏览器反应变得很慢, 或 者造成浏览器失去响应, 甚至会导致机器无法进行其他的操作。 这种现象被称之为浏览 器崩溃。 导致浏览器崩溃的原因主要包括: 内存泄露、 网页代码复杂和浏览器的故障 (Bug) 、 网页数据过多、 网络服务漏洞等。
在 windows系统中, 一般通过 windows错误报告来上传操作系统出现的各类问题。 由于 windows系统中 IE浏览器是与操作系统绑定的, 所以当 IE出现崩溃时, 操作系统 会收集浏览器的状态信息, 并将信息封装到一个错误报告中回传给服务器端。 而对于浏 览器端产生崩溃后, 现有技术没有提供一种云系统级的方案, 能够有针对性地对浏览器 的崩溃信息进行收集、 保存、 分析以及鉴定。 发明内容
鉴于上述问题, 提出了本发明以便提供一种克服上述问题或者至少部分地解决上述 问题的浏览器崩溃信息的处理系统和相应的浏览器崩溃信息的处理方法。
根据本发明的一个方面, 提供了一种浏览器崩溃信息的处理方法, 包括: 接收浏览 器崩溃时上传的浏览器崩溃状态信息; 根据所述浏览器崩溃状态信息生成指示是否允许 浏览器上传崩溃数据包的崩溃标识信息; 反馈所述崩溃标识信息到所述浏览器; 在所述 崩溃标识信息表明允许浏览器上传崩溃数据包的情况下, 接收所述浏览器上传的包括崩 溃数据包的崩溃信息; 启动崩溃数据包自动分析程序, 对所述崩溃数据包进行分析; 将 所述崩溃数据包的分析结果数据下发到所述上传崩溃数据包的浏览器。
根据本发明的另一方面, 提供了一种浏览器崩溃信息的处理系统, 包括: 第一接口, 用于接收浏览器崩溃时上传的浏览器崩溃状态信息; 第一云崩溃服务器, 用于根据所述 浏览器崩溃状态信息生成指示是否允许浏览器上传崩溃数据包的崩溃标识信息, 通过所 述第一接口反馈所述崩溃标识信息到所述浏览器; 第二接口, 用于在所述崩溃标识信息 表明允许浏览器上传崩溃数据包的情况下, 接收所述浏览器上传的包括崩溃数据包的崩 溃信息; 分析设备, 用于启动崩溃数据包自动分析程序, 对所述崩溃数据包进行分析; 下发设备, 用于通过所述第二接口将所述崩溃数据包的分析结果数据下发到所述上传崩 溃数据包的浏览器。
根据本发明提供的方案, 在接收到浏览器崩溃时上传的浏览器崩溃状态信息之后, 根据该浏览器崩溃状态信息生成指示是否允许浏览器上传崩溃数据包的崩溃标识信息, 并反馈给浏览器, 以供浏览器根据崩溃标识信息确定是否得到上传崩溃数据包的允许。 在得到允许的情况下, 浏览器上传崩溃数据包, 云端启动自动分析程序对崩溃数据包进 行分析, 并将分析结果数据下发给浏览器。 本发明提供了一种云系统级的方案, 能够有 针对性地对浏览器的崩溃信息进行收集、 处理、 分析以及鉴定。
上述说明仅是本发明技术方案的概述, 为了能够更清楚了解本发明的技术手段, 而 可依照说明书的内容予以实施, 并且为了让本发明的上述和其它目的、 特征和优点能够 更明显易懂, 以下特举本发明的具体实施方式。 附图说明
通过阅读下文优选实施方式的详细描述, 各种其他的优点和益处对于本领域普通技 术人员将变得清楚明了。 附图仅用于示出优选实施方式的目的, 而并不认为是对本发明 的限制。 而且在整个附图中, 用相同的参考符号表示相同的部件。 在附图中:
图 1示出了根据本发明一个实施例的浏览器崩溃信息的处理方法的流程图; 图 2示出了根据本发明另一个实施例的浏览器崩溃信息的处理方法的流程图; 图 3示出了根据本发明一个实施例的浏览器崩溃信息的处理系统的结构框图; 图 4示出了根据本发明一个实施例的执行本发明所述方法的服务器的框图; 以及 图 5示出了根据本发明一个实施例的用于保持或者携带实现本发明所述方法的程序 代码的存储单元。 具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。 虽然附图中显示了本公开的 示例性实施例, 然而应当理解, 可以以各种形式实现本公开而不应被这里阐述的实施例 所限制。 相反, 提供这些实施例是为了能够更透彻地理解本公开, 并且能够将本公开的 范围完整的传达给本领域的技术人员。
图 1示出了根据本发明一个实施例的浏览器崩溃信息的处理方法 100的流程图。 如 图 1所示,方法 100始于步骤 S101,其中接收浏览器崩溃时上传的浏览器崩溃状态信息。 在浏览器产生崩溃时, 首先向云端上传浏览器崩溃状态信息。 可选地, 浏览器使用云端 提供的 Get接口向其上传浏览器崩溃状态信息。 浏览器崩溃状态信息是浏览器反馈的有 关崩溃状态的信息, 其至少包括浏览器崩溃公共参数信息 (pubkey) , 可选地还可包括 命令行、 浏览器产品名称以及第一浏览器侧数据校验信息, 其中第一浏览器侧数据校验 信息是浏览器根据浏览器崩溃公共参数信息和预设密钥生成的。 浏览器崩溃公共参数信 息至少包括如下信息: 崩溃模块的相关信息、 具体崩溃偏移、 崩溃堆栈、 浏览器版本号 以及操作系统版本号。
随后, 方法 100进入步骤 S102, 其中根据浏览器崩溃状态信息生成指示是否允许浏 览器上传崩溃数据包的崩溃标识信息 (dumpid) 。 云端主要是根据上述浏览器崩溃公共 参数信息生成崩溃标识信息。 具体来说, 云端从浏览器崩溃状态信息中提取出崩溃模块 的相关信息、 具体崩溃偏移、 崩溃堆栈、 浏览器版本号、 操作系统版本号等浏览器崩溃 公共参数信息, 按照预设算法对这些信息进行处理, 生成崩溃键值 (dumpkey) , 例如: 按照 MD5算法对上述信息进行处理生成 dumpkey。云端累计对相同的浏览器崩溃状态信 息的接收次数, 具体做法就是累计相同 dumpkey的数目, 如果相同 dumpkey的数目大于 或等于预设阈值(比如 3 ), 表明云端对相同的浏览器崩溃状态信息的接收次数已大于或 等于 3次, 则生成的 dumpid为 0, 即不允许浏览器上传崩溃数据包; 如果相同 dumpkey 的数目小于 3, 则生成的 dumpid大于 0, 即允许浏览器上传崩溃数据包。
随后, 方法 100进入步骤 S103 , 其中反馈崩溃标识信息到浏览器。 云端将崩溃标识 信息反馈给浏览器, 可选地云端反馈给浏览器的信息为 JSON格式的信息。 浏览器接收 到崩溃标识信息后, 如果获知不允许上传崩溃数据包, 那么此次交手结束。 如果获知允 许上传崩溃数据包, 则进入步骤 S104。
在步骤 S104中, 接收浏览器上传的包括崩溃数据包的崩溃信息。在崩溃标识信息表 明允许浏览器上传崩溃数据包的情况下, 云端接收浏览器上传的崩溃数据包。 可选地, 云端使用 Post接口接收浏览器上传的崩溃数据包。
在步骤 S104之后, 方法 100进入步骤 S105, 其中启动崩溃数据包自动分析程序, 对崩溃数据包进行分析。 云端可以通过部署的自动崩溃数据包分析程序, 随时监控浏览 器上传的崩溃数据包, 一旦发现有新的崩溃数据包, 立即进行分析, 并及时返回分析结 果数据, 这样达到了实时分析的目的。 云端也可以调用自动化分析接口对浏览器上传的 崩溃数据包进行分析。
随后, 方法 100进入步骤 S106, 将崩溃数据包的分析结果数据下发到上传崩溃数据 包的浏览器。云端根据崩溃数据包的分析结果数据所对应的浏览器的 MID或 QID将崩溃 数据包的分析结果数据下发到对应的浏览器。
图 2示出了根据本发明另一个实施例的浏览器崩溃信息的处理方法 200的流程图。 如图 2所示, 方法 200始于步骤 S201 , 其中使用 Get接口接收浏览器崩溃时上传的浏览 器崩溃状态信息。 本方法中, 在浏览器产生崩溃时, 浏览器使用云端提供的 Get接口向 其上传浏览器崩溃状态信息。表 1示出了浏览器崩溃状态信息所包含的具体内容。 其中, 浏览器崩溃公共参数信息 (pubkey) 、 浏览器产品名称 (src) 和第一浏览器侧数据校验 信息 (cverifyl ) 是必选内容, 命令行 (cmd) 和自定义信息 (custom) 是可选内容, 这 些信息的类型均为 string类型。
表 1. 浏览器崩溃状态信息的示意表 参 必选 类型及范围 说明
pubkey true string 浏览器公共参数部分, 取值参见表 2 custom false string 自定义信息, 多个值以下划线" _ "分隔
cmd false string 命令行参数, 多个值以下划线" _ "分隔 src true string 浏览器产品名称
第一浏览器侧数据校验信息,用此字段来检验是否为 cverifyl true string
合法数据
进一步的, 表 2示出了 pubkey的具体内容。 pubkey除了包括崩溃模块的相关信息、 具体崩溃偏移、 崩溃堆栈、 浏览器版本号以及操作系统版本号等信息以外, 还包括很多 其它信息。
表 2. 浏览器崩溃公共参数信息的示意表
参 说明
process—type 进程类型
thread—type 线程类型
process_stage 进程阶段
thread_stage 线程阶段
crash 崩溃还是异常
version 主程序版本号
crash—type 崩溃类型
first_crash_name 第一层崩溃模块名称: 包含 unknown
first_crash_version 第一层崩溃模块版本号
first_crash_offset 第一层崩溃偏移
more crash name 具体崩溃模块名称: 去掉 unknown
more_crash_version 具体崩溃模块版本号
more—crash—offset 具体崩溃偏移
my_crash_name 最近的自己崩溃模块名称
my_crash_version 最近的自己崩溃模块版本号
my _cr a s h_o ff s et 最近的自己崩溃偏移
mid mid
pid pid
崩溃堆桟 md5 =MD5 (崩溃模块名称 + 顶层崩溃 stack_md5
模块偏移) system—version 操作系统版本号
ie_version ie版本号
flash—version flash版本号
catch_num 异常次数
m M值
ie8 kernel 是否是 IE8内核
open—death 是否打开防假死
process—model 进程模型
随后, 方法 200进入步骤 S202, 其中通过效验浏览器产品名称 (src)来对浏览器产 品的合法性进行校验。在接收到浏览器上传的浏览器崩溃状态信息之后,提取其中的 src, 根据 src可判断出浏览器产品是否合法, 如合法, 则进入步骤 S203 ; 如不合法, 本方法 结束
在步骤 S203 中, 通过验证第一浏览器侧数据校验信息 (cverifyl ) 是否正确来对崩 溃状态信息的合法性和完整性进行校验。 其中 cverifyl是浏览器根据 pubkey和预设密钥 生成的, 例如: cverifyl=MD5(pubkey+密钥;), 即对 pubkey和预设密钥进行 MD5算法加 密得到 CVerifyl。在接收到浏览器上传的浏览器崩溃状态信息之后, 提取其中的 cverifyl , 判断 cverifyl是否正确, 如正确, 表明崩溃状态信息是合法且完整的, 则进入步骤 S204; 否则, 本方法结束。
在步骤 S204中,对预先定义的时间段内从相同地址的浏览器再次接收的浏览器崩溃 状态信息进行丢弃处理。 为了防止浏览器在短时间内 (比如 2s) 连续提交相同的信息, 通过进行缓存进行提交限制, 在短时间内连续提交的信息视为一次提交, 判断规则可基 于 cverifyl。
随后, 方法 200进入步骤 S205, 其中根据浏览器崩溃状态信息生成指示是否允许浏 览器上传崩溃数据包的崩溃标识信息 (dumpid) 。 具体来说, 云端从 pubkey中提取出崩 溃模块的相关信息、 具体崩溃偏移、 崩溃堆栈、 浏览器版本号、 操作系统版本号等信息, 根据这些信息生成崩溃键值 (dumpkey) , 例如: dumpkey=MD5(崩溃模块 +具体崩溃偏 移 +崩溃堆栈 md5+IE版本号 +操作系统版本号), 即对这些信息进行 MD5算法加密得到 dumpkey。 云端累计对相同的浏览器崩溃状态信息的接收次数, 具体做法就是累计相同 dumpkey的数目, 如果相同 dumpkey的数目大于或等于预设阈值 (比如 3 ) , 表明云端 对相同的浏览器崩溃状态信息的接收次数已大于或等于 3次, 则生成的 dumpid为 0, 即 不允许浏览器上传崩溃数据包; 如果相同 dumpkey的数目小于 3, 则生成的 dumpid大于 0, 如 dumpid=dump_id, dumpjd为大于 0的值, 即允许浏览器上传崩溃数据包。
随后, 方法 200进入步骤 S206, 其中反馈崩溃标识信息到浏览器。 进一步的, 在反 馈崩溃标识信息的同时, 还需反馈第一服务器侧数据校验信息 (sverifyl ) , 以供浏览器 对崩溃标识信息的合法性和完整性进行校验。 该第一服务器侧数据校验信息是云端根据 dumpid和预设密钥生成的, 例如: sverifyl=MD5(dumpid+密钥;), 即对 dumpid和预设密 钥进行 MD5算法加密得到 SVerifyl。 云端将崩溃标识信息和第一服务器侧数据校验信息 封装为回传信息, 反馈给浏览器。 该回传信息可为 JSON格式。 例如, 云端反馈给浏览 器的回传信息如下- { "dumpid" :"0", " sverify 1: " sverify 1 _val " }
或 { "dumpid": "dump—id" , " sverify 1: " sverify 1 _val" }
其中 sverify l_val为 sverify 1的具体取值。
浏览器接收到上述回传信息后, 提取 dumpid, 如果 dumpid为 0, 表明云端不允许浏 览器上传崩溃数据包, 那么此次交手结束。 如果 dumpid为 dump_id, 表明云端允许浏览 器上传崩溃数据包, 则进入步骤 S207。
在步骤 S207中, 使用 Post接口接收浏览器上传的包括崩溃数据包的崩溃信息。 在 崩溃标识信息表明允许浏览器上传崩溃数据包的情况下, 云端接收浏览器上传的包括崩 溃数据包的崩溃信息。 表 3示出了崩溃信息所包含的具体内容, 具体为浏览器产品名称 ( src) , 崩溃标识信息 (dumpid) , 崩溃数据包 (file) 和第二浏览器侧数据校验信息 (cverify2) 。
表 3. 崩溃信息
Figure imgf000008_0001
随后, 方法 200进入步骤 S208, 其中通过效验浏览器产品名称 (src)来对浏览器产 品的合法性进行校验。 在接收到浏览器上传的崩溃信息之后, 提取其中的 src, 根据 src 可判断出浏览器产品是否合法, 如合法, 则进入步骤 S209; 如不合法, 本方法结束。
在步骤 S209 中, 通过验证第二浏览器侧数据校验信息 (cverify2) 是否正确来对崩 溃信息的合法性和完整性进行校验。 其中 cVerify2是浏览器根据崩溃数据包、 崩溃标识 信息和预设密钥生成的, 例如: cverify2=MD5(file内容 +dump_id+密钥), 即对 file内容、 dump_id和预设密钥进行 MD5算法加密得到 CVerify2。 在接收到浏览器上传的崩溃信息 之后, 提取其中的 CVerify2, 判断 CVerify2是否正确, 如正确, 表明崩溃信息是合法且完 整的, 则进入步骤 S210; 否则, 本方法结束。
在步骤 S210中, 将崩溃数据包存入队列中。 云端接收的崩溃数据包来自很多客户端 的浏览器。 一方面, 云端的云崩溃服务器将上传的崩溃数据包保存为临时文件, 移动到 临时目录;另一方面,云崩溃服务器将通过 Post接口上传的崩溃数据包存入到队列中(每 一台服务器都可以有一个队列) , 然后, 给浏览器返回信息, 通知浏览器上传数据是否 成功。 云端给浏览器返回的信息如下:
{ " status" :"0", " sverify2: " sverify2_val" }
或 { " status" :"1", " sverify2: " sverify2_val" }
其中 status为 0表示浏览器上传数据失败, status为 1表示浏览器上传数据成功。 sverify2为第二服务器侧数据校验信息, 它是根据 status, dump_id和预设密钥生成的, 例如: sverify2=MD5(status+dump_id+密钥), 即对 status, dump_id和预设密钥进行 MD5 算法加密得到 sverify2。 sverify2_val为 sverify2的取值。
云崩溃服务器可以将崩溃数据包存储到持久化存储器中, 如 Cassandra数据库。 随后, 方法 200进入步骤 S211 , 其中读取队列, 将来自不同浏览器产品的崩溃数据 包分送给不同的分析设备。 云崩溃服务器读取队列, 将来自不同浏览器产品的崩溃数据 包同步到多台 Windows环境下的 Windows机器目录下。以云崩溃服务器为 Linux操作系 统为例, Linux系统向 Windows同步文件可以采用基于 C/S模式软件的 rsync实现, rsync 是数据镜像备份工具, 可以镜像保存整个目录树和文件系统。 在同步到 Windows机器目 录下后, 在临时目录下的已被同步的崩溃数据包被删除。
随后, 方法 200进入步骤 S212, 其中不同的分析设备启动各自的崩溃数据包自动分 析程序, 对崩溃数据包进行分析。 该分析步骤可以采取以下两种方式: 一种是 Windows 机器上部署了自动崩溃数据包分析程序, 随时监控当前目录下的文件, 一旦发现有新的 崩溃数据包, 立即进行分析, 并及时返回分析结果数据; 另一种是 Windows机器调用另 一云崩溃服务器的自动化分析接口对崩溃数据包进行分析。
随后, 方法 200进入步骤 S213 , 其中将崩溃数据包的分析结果数据下发到上传崩溃 数据包的浏览器。
进一步的, 本方法还可以包括: 按照预设时间间隔, 以增量索引的方式将崩溃数据 包的分析结果数据存储在数据库中。 具体来说, 分析结果数据采用 MYSQL (主 +从) +SPHINX的架构, 所采用的技术为主从数据库分离、 按月分表的技术, 其中 MYSQL为 永久存储引擎, MYSQL的主从之间的数据自动同步。主 MYSQL专门用于分析结果数据 的插入, 如上述云崩溃服务器将分析得到的分析结果数据插入到主 MYSQL 中。 从 MYSQL用于后台管理员管理, 也可作为 SPHINX服务器的索引源头, 使得 SPHINX索 引服务器可以对于不断更新的崩溃数据包的分析结果数据进行增量索引, 实现管理员的 实时数据的检索。 具体来说, SPHINX索引服务器每隔 5分钟利用增量索引、 合并索引 方式达到数据实时更新。 当数据库中已有数据量很大, 又不断有新数据加入到数据库时, 如果全部重新建立索引很消耗资源, 事实上, 在原有数据上需要更新的数据相比较而言 很少, 例如原来的数据有几百万条, 而新增的只是几千条, 这样就可以使用 "主索引 + 增量索引" 的模式来实现近乎实时更新的功能。
本方法还可以包括: 将接收到的崩溃状态信息放入队列, 启动进程将队列中的崩溃 状态信息存入到主 MYSQL中。
一方面, 管理员借助 SPHINX索引服务器对于从 MySQL中收集的崩溃状态信息进 行检索以获取例如哪个 IE版本的崩溃最多、 哪个主程序 (浏览器) 的崩溃最多、 哪种类 型的崩溃最多等信息, 其直接在崩溃状态信息中依据上述列举消息的请求量给出崩溃的 预警信息。 将这些检索得到的数据发送到提交崩溃数据包的浏览器进行显示, 对用户进 行预警哪些浏览器中的崩溃最多。 例如可以显示浏览器的各种版本单独监控结果或版本 间的对比结果, 可以显示每个浏览器版本的各种问题的数据量统计, 或者问题数据量超 过预期阀值也可以直接通过短信方式报警以提醒用户。
另一方面, 存储在 MySQL 的崩溃数据包的分析结果数据可以包含以下信息: 已经 分析出来的崩溃模块或函数名称 (也可以是关键模块的崩溃情况, 即依据收集的崩溃信 息中分析、 统计出来的关键崩溃模块的信息) ; 调用上述崩溃模块或函数之前的行为、 动作 (例如变量名冲突、 内存崩溃等) ; 待依据需求再定的内容 (后续扩展的内容) 。 这样管理者可以进一步检索 MySQL中的分析结果记录, 通过 SPHINX索引服务器获取 指定机器标识 (MID) 的分析结果, 然后依据 MID显示在客户端的浏览器, 对客户端的 浏览器进行提示和预警。 可选地, 除了上述 MID, 还可以进一步在云崩溃服务器侧获取 分析结果的浏览器用户的标识 (QID) , 该 QID为浏览器用户的唯一标识, 在用户登录 时就使用该 QID进行唯一标识, 这样可以实现对于特定用户(对应着 QID)的崩溃分析, 从而实现特定用户的预警提示。
综上, 根据浏览器的登录用户和非登录用户上报的崩溃数据包或崩溃状态信息, 能 够及时的获取到基于崩溃状态信息和 /或该次崩溃分析结果的预警告示, 实现实时化、 个 性化的预警。
根据上述实施例提供的方法, 在接收到浏览器崩溃时上传的浏览器崩溃状态信息之 后, 根据该浏览器崩溃状态信息生成指示是否允许浏览器上传崩溃数据包的崩溃标识信 息, 并反馈给浏览器, 以供浏览器根据崩溃标识信息确定是否得到上传崩溃数据包的允 许。 在得到允许的情况下, 浏览器上传崩溃数据包, 云端启动自动分析程序对崩溃数据 包进行分析, 并将分析结果数据下发给浏览器。 该方法提供了一种云系统级的方案, 能 够有针对性地对浏览器的崩溃信息进行收集、 处理、 分析以及鉴定。
图 3示出了根据本发明一个实施例的浏览器崩溃信息的处理系统的结构框图。如图 3 所示, 该系统包括第一接口 310、 第一云崩溃服务器 320、 第二接口 330、 分析设备 340 和下发设备 350。
其中第一接口 310用于接收浏览器崩溃时上传的浏览器崩溃状态信息。 可选地, 第 一接口 310为 Get接口。 浏览器崩溃状态信息至少包括如下信息中的一种或多种: 浏览 器崩溃公共参数信息、 命令行、 浏览器产品名称以及第一浏览器侧数据校验信息, 其中 第一浏览器侧数据校验信息是浏览器根据浏览器崩溃公共参数信息和预设密钥生成的。 浏览器崩溃公共参数信息至少包括如下信息: 崩溃模块的相关信息、 具体崩溃偏移、 崩 溃堆栈、 浏览器版本号以及操作系统版本号。 浏览器崩溃状态信息的具体内容可以参见 上述方法实施例的描述。
进一步的, 该系统还可包括: 第一校验模块 311和 /或第一验证模块 312。 在图 3中, 第一校验模块 311和第一验证模块 312集成在第一接口 310中, 但本发明不仅限于此。 其中, 第一校验模块 311用于通过验证第一浏览器侧数据校验信息是否正确来对崩溃状 态信息的合法性和完整性进行校验。 第一验证模块 312用于通过效验浏览器产品名称来 对浏览器产品的合法性进行校验。
该系统还可包括:第二缓存服务器 360,用于丢弃在预先定义的时间段内从相同地址 的浏览器再次接收到的浏览器崩溃状态信息。 为了防止浏览器在短时间内 (比如 2s) 连 续提交相同的信息, 通过进行缓存进行提交限制, 在短时间内连续提交的信息视为一次 提交, 判断规则可基于第一浏览器侧数据校验信息。
第一云崩溃服务器 320用于根据浏览器崩溃状态信息生成指示是否允许浏览器上传 崩溃数据包的崩溃标识信息, 通过第一接口 310反馈崩溃标识信息到浏览器。 可选的, 该系统还包括:第一缓存服务器 370,用于按照预设算法对浏览器崩溃公共参数信息进行 处理, 生成崩溃键值; 第一云崩溃服务器 320具体用于根据崩溃键值, 得到指示是否允 许浏览器上传崩溃数据包的崩溃标识信息。 具体来说, 第一缓存服务器 370从浏览器崩 溃公共参数信息中提取出崩溃模块的相关信息、 具体崩溃偏移、 崩溃堆栈、 浏览器版本 号、 操作系统版本号等信息, 根据这些信息生成崩溃键值(dumpkey) , 例如对这些信息 进行 MD5算法加密得到 dumpkey。第一云崩溃服务器 320累计对相同的浏览器崩溃状态 信息的接收次数, 具体做法就是累计相同 dumpkey的数目, 如果相同 dumpkey的数目大 于或等于预设阈值(比如 3 ), 表明云端对相同的浏览器崩溃状态信息的接收次数已大于 或等于 3次,则生成的 dumpid为 0,即不允许浏览器上传崩溃数据包;如果相同 dumpkey 的数目小于 3, 则生成的 dumpid大于 0, 如 dumpid=dump_id, dump id为大于 0的值, 即允许浏览器上传崩溃数据包。
可选的, 第一云崩溃服务器 320还用于根据崩溃标识信息和预设密钥生成第一服务 器侧数据校验信息, 并在反馈崩溃标识信息到浏览器的同时, 反馈第一服务器侧数据校 验信息到浏览器, 以供浏览器通过验证第一服务器侧数据校验信息来对崩溃标识信息的 合法性和完整性进行校验。
浏览器接收到上述回传信息后, 提取 dumpid, 如果 dumpid为 0, 表明云端不允许浏 览器上传崩溃数据包, 那么此次交手结束。 如果 dumpid为 dump_id, 表明云端允许浏览 器上传崩溃数据包。
该系统还包括:数据库 380和数据队列服务器 390。数据队列服务器 390用于将崩溃 状态信息放入队列, 启动进程将队列中的崩溃状态信息存入到数据库 380中。
第二接口 330用于在崩溃标识信息表明允许浏览器上传崩溃数据包的情况下, 接收 浏览器上传的包括崩溃数据包的崩溃信息。 可选地, 第二接口 330为 Post接口。 崩溃信 息可以包含浏览器产品名称, 崩溃标识信息, 崩溃数据包和第二浏览器侧数据校验信息, 其中第二浏览器侧数据校验码是根据崩溃数据包、 崩溃标识信息和预设密钥而生成的。 崩溃信息的具体内容可以参见上述方法实施例的描述。
进一步的, 该系统还可包括: 第二校验模块 331和 /或第二验证模块 332。 在图 3中, 第二校验模块 331和第二验证模块 332集成在第二接口 330中, 但本发明不仅限于此。 第二校验模块 331用于通过验证第二浏览器侧数据校验信息是否正确来对崩溃信息的合 法性和完整性进行校验。 第二验证模块 332用于通过效验浏览器产品名称来对浏览器产 品的合法性进行校验。
该系统还可以包括:第二云崩溃服务器 410和持久化存储器 420。其中第二云崩溃服 务器 410用于从崩溃信息中提取出崩溃数据包, 将崩溃数据包存入队列中; 以及, 读取 队列, 将来自不同浏览器产品的崩溃数据包分送给不同的分析设备; 持久化存储器 420 用于存储崩溃数据包。 第二云崩溃服务器 410接收的崩溃数据包来自很多客户端的浏览 器。 一方面, 第二云崩溃服务器 410将上传的崩溃数据包保存为临时文件, 移动到临时 目录; 另一方面, 第二云崩溃服务器 410将通过 Post接口上传的崩溃数据包存入到队列 中 (每一台服务器都可以有一个队列) , 然后, 给浏览器返回信息, 通知浏览器上传数 据是否成功。 第二云崩溃服务器 410还将崩溃数据包存储到持久化存储器 420中, 持久 化存储器 420可以为 Cassandra数据库。
分析设备 340用于启动崩溃数据包自动分析程序, 对崩溃数据包进行分析。 在本系 统中, 分析设备 340可以为多台 Windows环境下的 Windows机器, 以第二云崩溃服务器 410为 Linux操作系统为例, Linux系统向 Windows同步文件可以采用基于 C/S模式软件 的 rsync实现, rsync是数据镜像备份工具, 可以镜像保存整个目录树和文件系统。 在同 步到 Windows机器目录下后, 在临时目录下的已被同步的崩溃数据包被删除。 分析设备 340进一步用于:通过部署的自动崩溃数据包分析程序, 随时监控浏览器上传的崩溃数据 包, 一旦发现有新的崩溃数据包, 立即进行分析, 并及时返回分析结果数据; 或者, 调 用自动化分析接口对浏览器上传的崩溃数据包进行分析。
下发设备 350用于通过第二接口 330将崩溃数据包的分析结果数据下发到上传崩溃 数据包的浏览器。 下发设备 350进一步用于根据崩溃数据包的分析结果数据所对应的浏 览器的机器标识或浏览器用户的标识, 将崩溃数据包的分析结果数据下发到对应的浏览 器。
本系统还可以包括: 第三云崩溃服务器 430和索引服务器 440。 第三云崩溃服务器 430用于将分析设备 340分析得到的数据传输给索引服务器 440。索引服务器 440用于按 照预设时间间隔, 以增量索引的方式将崩溃数据包的分析结果数据存储在数据库 380中。 具体来说,本系统采用 MYSQL (主 +从) +SPHINX的架构,即数据库 380包括主 MYSQL 和从 MYSQL, 索引服务器 440为 SPHINX索引服务器。 数据库 380所采用的技术为主 从数据库分离、 按月分表的技术, MYSQL为永久存储引擎, MYSQL的主从之间的数据 自动同步。 主 MYSQL专门用于分析结果数据的插入, 如上述第三云崩溃服务器 430向 分析设备 340提供自动化分析接口, 将分析得到的分析结果数据插入到主 MYSQL中。 从 MYSQL用于后台管理员管理, 也可作为 SPHINX服务器的索引源头, 使得 SPHINX 索引服务器可以对于不断更新的崩溃数据包的分析结果数据进行增量索引, 实现管理员 的实时数据的检索。 本系统还可以包括: 预警设备 450, 用于对数据库中存储的数据进行统计, 如果统计 结果超出预设阀值则进行报警。一方面, 管理员借助 SPHINX索引服务器对于从 MySQL 中收集的崩溃状态信息进行检索以获取例如哪个 IE版本的崩溃最多、 哪个主程序 (浏览 器) 的崩溃最多、 哪种类型的崩溃最多等信息, 其直接在崩溃状态信息中依据上述列举 消息的请求量给出崩溃的预警信息。 将这些检索得到的数据发送到提交崩溃数据包的浏 览器进行显示, 对用户进行预警哪些浏览器中的崩溃最多。 例如可以显示浏览器的各种 版本单独监控结果或版本间的对比结果, 可以显示每个浏览器版本的各种问题的数据量 统计, 或者问题数据量超过预期阀值也可以直接通过短信方式报警以提醒用户。 另一方 面, 存储在 MySQL 的崩溃数据包的分析结果数据可以包含以下信息: 已经分析出来的 崩溃模块或函数名称 (也可以是关键模块的崩溃情况, 即依据收集的崩溃信息中分析、 统计出来的关键崩溃模块的信息) ; 调用上述崩溃模块或函数之前的行为、 动作 (例如 变量名冲突、 内存崩溃等) ; 待依据需求再定的内容 (后续扩展的内容) 。 这样管理者 可以进一步检索 MySQL中的分析结果记录, 通过 SPHINX索引服务器获取指定机器标 识 (MID) 的分析结果, 然后依据 MID显示在客户端的浏览器, 对客户端的浏览器进行 提示和预警。 可选地, 除了上述 MID, 还可以进一步在云崩溃服务器侧获取分析结果的 浏览器用户的标识 (QID) , 该 QID为浏览器用户的唯一标识, 在用户登录时就使用该 QID进行唯一标识, 这样可以实现对于特定用户 (对应着 QID) 的崩溃分析, 从而实现 特定用户的预警提示。 综上, 根据浏览器的登录用户和非登录用户上报的崩溃数据包或 崩溃状态信息, 能够及时的获取到基于崩溃状态信息和 /或该次崩溃分析结果的预警告 示, 实现实时化、 个性化的预警。
根据上述实施例提供的系统, 在第一接口接收到浏览器崩溃时上传的浏览器崩溃状 态信息之后, 第一云崩溃服务器根据该浏览器崩溃状态信息生成指示是否允许浏览器上 传崩溃数据包的崩溃标识信息, 并通过第一接口反馈给浏览器, 以供浏览器根据崩溃标 识信息确定是否得到上传崩溃数据包的允许。 在得到允许的情况下, 浏览器上传崩溃数 据包, 云端通过第二接口接收该崩溃数据包, 分析设备启动自动分析程序对崩溃数据包 进行分析, 并由下发设备将分析结果数据下发给浏览器。 该系统提供了一种云系统级的 方案, 能够有针对性地对浏览器的崩溃信息进行收集、 处理、 分析以及鉴定。
在此提供的算法和显示不与任何特定计算机、 虚拟系统或者其它设备固有相关。 各 种通用系统也可以与基于在此的示教一起使用。 根据上面的描述, 构造这类系统所要求 的结构是显而易见的。 此外, 本发明也不针对任何特定编程语言。 应当明白, 可以利用 各种编程语言实现在此描述的本发明的内容, 并且上面对特定语言所做的描述是为了披 露本发明的最佳实施方式。
在此处所提供的说明书中, 说明了大量具体细节。 然而, 能够理解, 本发明的实施 例可以在没有这些具体细节的情况下实践。 在一些实例中, 并未详细示出公知的方法、 结构和技术, 以便不模糊对本说明书的理解。
类似地, 应当理解, 为了精简本公开并帮助理解各个发明方面中的一个或多个, 在 上面对本发明的示例性实施例的描述中, 本发明的各个特征有时被一起分组到单个实施 例、 图、 或者对其的描述中。 然而, 并不应将该公开的方法解释成反映如下意图: 即所 要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说, 如下面的权利要求书所反映的那样, 发明方面在于少于前面公开的单个实施例的所有特 征。 因此, 遵循具体实施方式的权利要求书由此明确地并入该具体实施方式, 其中每个 权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解, 可以对实施例中的设备中的模块进行自适应性地改 变并且把它们设置在与该实施例不同的一个或多个设备中。 可以把实施例中的模块或单 元或组件组合成一个模块或单元或组件, 以及此外可以把它们分成多个子模块或子单元 或子组件。 除了这样的特征和 /或过程或者单元中的至少一些是相互排斥之外, 可以采用 任何组合对本说明书 (包括伴随的权利要求、 摘要和附图) 中公开的所有特征以及如此 公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包 括伴随的权利要求、 摘要和附图) 中公开的每个特征可以由提供相同、 等同或相似目的 的替代特征来代替。
此外, 本领域的技术人员能够理解, 尽管在此所述的一些实施例包括其它实施例中 所包括的某些特征而不是其它特征, 但是不同实施例的特征的组合意味着处于本发明的 范围之内并且形成不同的实施例。 例如, 在下面的权利要求书中, 所要求保护的实施例 的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现, 或者以在一个或者多个处理器上运行的 软件模块实现, 或者以它们的组合实现。 本领域的技术人员应当理解, 可以在实践中使 用微处理器或者数字信号处理器 (DSP) 来实现根据本发明实施例的浏览器崩溃信息的 处理系统中的一些或者全部部件的一些或者全部功能。 本发明还可以实现为用于执行这 里所描述的方法的一部分或者全部的设备或者装置程序 (例如, 计算机程序和计算机程 序产品) 。 这样的实现本发明的程序可以存储在计算机可读介质上, 或者可以具有一个 或者多个信号的形式。 这样的信号可以从因特网网站上下载得到, 或者在载体信号上提 供, 或者以任何其他形式提供。
例如, 图 4示出了可以实现根据本发明的一个实施例的执行本发明所述方法的服务 器, 例如应用服务器。 该服务器传统上包括处理器 410和以存储器 420形式的计算机程 序产品或者计算机可读介质。 存储器 420可以是诸如闪存、 EEPROM (电可擦除可编程 只读存储器) 、 EPROM、 硬盘或者 ROM之类的电子存储器。 存储器 420具有用于执行 上述方法中的任何方法步骤的程序代码 431的存储空间 430。例如,用于程序代码的存储 空间 430可以包括分别用于实现上面的方法中的各种步骤的各个程序代码 431。这些程序 代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序 产品中。 这些计算机程序产品包括诸如硬盘, 紧致盘 (CD) 、 存储卡或者软盘之类的程 序代码载体。这样的计算机程序产品通常为如参考图 5所述的便携式或者固定存储单元。 该存储单元可以具有与图 4的服务器中的存储器 420类似布置的存储段、 存储空间等。 程序代码可以例如以适当形式进行压缩。 通常, 存储单元包括计算机可读代码 431 ', 即 可以由例如诸如 410之类的处理器读取的代码, 这些代码当由服务器运行时, 导致该服 务器执行上面所描述的方法中的各个步骤。
本文中所称的 "一个实施例" 、 "实施例"或者 "一个或者多个实施例"意味着, 结合实施例描述的特定特征、 结构或者特性包括在本发明的至少一个实施例中。 此外, 请注意, 这里 "在一个实施例中" 的词语例子不一定全指同一个实施例。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制, 并且本领域 技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。 在权利要求中, 不应将位于括号之间的任何参考符号构造成对权利要求的限制。 单词 "包含"不排除存 在未列在权利要求中的元件或步骤。 位于元件之前的单词 "一"或 "一个"不排除存在 多个这样的元件。 本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的 计算机来实现。 在列举了若干装置的单元权利要求中, 这些装置中的若干个可以是通过 同一个硬件项来具体体现。 单词第一、 第二、 以及第三等的使用不表示任何顺序。 可将 这些单词解释为名称。
此外, 还应当注意, 本说明书中使用的语言主要是为了可读性和教导的目的而选择 的, 而不是为了解释或者限定本发明的主题而选择的。 因此, 在不偏离所附权利要求书 的范围和精神的情况下, 对于本技术领域的普通技术人员来说许多修改和变更都是显而 易见的。 对于本发明的范围, 对本发明所做的公开是说明性的, 而非限制性的, 本发明 的范围由所附权利要求书限定。

Claims

权 利 要 求
1、 一种浏览器崩溃信息的处理方法, 包括:
接收浏览器崩溃时上传的浏览器崩溃状态信息;
根据所述浏览器崩溃状态信息生成指示是否允许浏览器上传崩溃数据包的崩溃标识 信息;
反馈所述崩溃标识信息到所述浏览器;
在所述崩溃标识信息表明允许浏览器上传崩溃数据包的情况下, 接收所述浏览器上 传的包括崩溃数据包的崩溃信息;
启动崩溃数据包自动分析程序, 对所述崩溃数据包进行分析;
将所述崩溃数据包的分析结果数据下发到所述上传崩溃数据包的浏览器。
2、根据权利要求 1所述的方法, 所述接收浏览器崩溃时上传的浏览器崩溃状态信息 的步骤进一步为: 使用 Get接口接收浏览器崩溃时上传的浏览器崩溃状态信息。
3、根据权利要求 1所述的方法, 所述接收所述浏览器上传的包括崩溃数据包的崩溃 信息的步骤进一步为:使用 Post接口接收所述浏览器上传的包括崩溃数据包的崩溃信息。
4、根据权利要求 1至 3任一项所述的方法, 所述浏览器崩溃状态信息至少包括如下 信息中的一种或多种: 浏览器崩溃公共参数信息、 命令行、 浏览器产品名称以及第一浏 览器侧数据校验信息, 其中所述第一浏览器侧数据校验信息是所述浏览器根据所述浏览 器崩溃公共参数信息和预设密钥生成的。
5、 根据权利要求 4所述的方法, 所述浏览器崩溃公共参数信息至少包括如下信息: 崩溃模块的相关信息、 具体崩溃偏移、 崩溃堆栈、 浏览器版本号以及操作系统版本号。
6、根据权利要求 4或 5所述的方法, 所述根据所述浏览器崩溃状态信息生成指示是 否允许浏览器上传崩溃数据包的崩溃标识信息进一步包括:
按照预设算法对所述浏览器崩溃公共参数信息进行处理, 生成崩溃键值; 根据所述崩溃键值,得到所述指示是否允许浏览器上传崩溃数据包的崩溃标识信息。
7、根据权利要求 6所述的方法, 在所述按照预设算法对所述浏览器崩溃公共参数信 息进行处理, 生成崩溃键值的步骤之前还包括: 通过验证所述第一浏览器侧数据校验信 息是否正确来对所述崩溃状态信息的合法性和完整性进行校验。
8、根据权利要求 6所述的方法, 在所述按照预设算法对所述浏览器崩溃公共参数信 息进行处理, 生成崩溃键值的步骤之前还包括: 通过效验浏览器产品名称来对浏览器产 品的合法性进行校验。
9、根据权利要求 1所述的方法, 所述接收浏览器崩溃时上传的浏览器崩溃状态信息 的步骤之后还包括: 丢弃在预先定义的时间段内从相同地址的浏览器再次接收到的浏览 器崩溃状态信息。
10、 根据权利要求 1所述的方法, 在所述反馈崩溃标识信息到浏览器的同时, 反馈 第一服务器侧数据校验信息到所述浏览器, 以供所述浏览器通过验证所述第一服务器侧 数据校验信息来对崩溃标识信息的合法性和完整性进行校验; 所述第一服务器侧数据校 验信息是根据所述崩溃标识信息和预设密钥而生成的。
11、 根据权利要求 1所述的方法, 在所述接收浏览器上传的包括崩溃数据包的崩溃 信息的步骤之后还包括: 将所述崩溃数据包存入队列中; 读取所述队列, 将来自不同浏 览器产品的崩溃数据包分送给不同的分析设备;
所述启动崩溃数据包自动分析程序, 对所述崩溃数据包进行分析具体为: 不同的分 析设备启动各自的崩溃数据包自动分析程序, 对所述崩溃数据包进行分析。
12、根据权利要求 11所述的方法,所述崩溃信息还包括第二浏览器侧数据校验信息; 所述第二浏览器侧数据校验码是根据所述崩溃数据包、 崩溃标识信息和预设密钥而生成 的;
在所述将崩溃数据包存入队列中的步骤之前还包括: 通过验证所述第二浏览器侧数 据校验信息是否正确来对所述崩溃信息的合法性和完整性进行校验。
13、 根据权利要求 11所述的方法, 所述崩溃信息还包括: 浏览器产品名称; 在所述 将崩溃数据包存入队列中的步骤之前还包括: 通过效验浏览器产品名称来对浏览器产品 的合法性进行校验。
14、 根据权利要求 1所述的方法, 所述启动崩溃数据包自动分析程序, 对所述崩溃 数据包进行分析的步骤进一步包括:
通过部署的自动崩溃数据包分析程序, 随时监控浏览器上传的崩溃数据包, 一旦发 现有新的崩溃数据包, 立即进行分析, 并及时返回分析结果数据;
或者, 调用自动化分析接口对浏览器上传的崩溃数据包进行分析。
15、 根据权利要求 1所述的方法, 还包括: 按照预设时间间隔, 以增量索引的方式 将所述崩溃数据包的分析结果数据存储在数据库中。
16、 根据权利要求 15所述的方法, 还包括: 对所述数据库中存储的数据进行统计, 如果统计结果超出预设阀值则进行报警。
17、 根据权利要求 1所述的方法, 所述将崩溃数据包的分析结果数据下发到所述上 传崩溃数据包的浏览器的步骤进一步包括: 根据所述崩溃数据包的分析结果数据所对应 的浏览器的机器标识或浏览器用户的标识, 将所述崩溃数据包的分析结果数据下发到对 应的浏览器。
18、 一种浏览器崩溃信息的处理系统, 包括:
第一接口, 用于接收浏览器崩溃时上传的浏览器崩溃状态信息;
第一云崩溃服务器, 用于根据所述浏览器崩溃状态信息生成指示是否允许浏览器上 传崩溃数据包的崩溃标识信息,通过所述第一接口反馈所述崩溃标识信息到所述浏览器; 第二接口, 用于在所述崩溃标识信息表明允许浏览器上传崩溃数据包的情况下, 接 收所述浏览器上传的包括崩溃数据包的崩溃信息;
分析设备, 用于启动崩溃数据包自动分析程序, 对所述崩溃数据包进行分析; 下发设备, 用于通过所述第二接口将所述崩溃数据包的分析结果数据下发到所述上 传崩溃数据包的浏览器。
19、 根据权利要求 18所述的系统, 所述第一接口为 Get接口。
20、 根据权利要求 18所述的系统, 所述第二接口为 Post接口。
21、 根据权利要求 18至 20任一项所述的系统, 所述浏览器崩溃状态信息至少包括 如下信息中的一种或多种: 浏览器崩溃公共参数信息、 命令行、 浏览器产品名称以及第 一浏览器侧数据校验信息, 其中所述第一浏览器侧数据校验信息是所述浏览器根据所述 浏览器崩溃公共参数信息和预设密钥生成的。
22、根据权利要求 21所述的系统,所述浏览器崩溃公共参数信息至少包括如下信息: 崩溃模块的相关信息、 具体崩溃偏移、 崩溃堆栈、 浏览器版本号以及操作系统版本号。
23、 根据权利要求 21或 22所述的系统, 还包括: 第一缓存服务器, 用于按照预设 算法对所述浏览器崩溃公共参数信息进行处理, 生成崩溃键值;
所述第一云崩溃服务器具体用于根据所述崩溃键值, 得到所述指示是否允许浏览器 上传崩溃数据包的崩溃标识信息。
24、 根据权利要求 23所述的系统, 还包括: 第一校验模块, 用于通过验证所述第一 浏览器侧数据校验信息是否正确来对所述崩溃状态信息的合法性和完整性进行校验。
25、 根据权利要求 23所述的系统, 还包括: 第一验证模块, 用于通过效验浏览器产 品名称来对浏览器产品的合法性进行校验。
26、 根据权利要求 18所述的系统, 还包括: 第二缓存服务器, 用于丢弃在预先定义 的时间段内从相同地址的浏览器再次接收到的浏览器崩溃状态信息。
27、根据权利要求 18所述的系统, 所述第一云崩溃服务器还用于根据所述崩溃标识 信息和预设密钥生成第一服务器侧数据校验信息, 并在反馈崩溃标识信息到浏览器的同 时, 反馈第一服务器侧数据校验信息到所述浏览器, 以供所述浏览器通过验证所述第一 服务器侧数据校验信息来对崩溃标识信息的合法性和完整性进行校验。
28、 根据权利要求 18所述的系统, 还包括:
数据库;
数据队列服务器, 用于将崩溃状态信息放入队列, 启动进程将队列中的崩溃状态信 息存入到所述数据库中。
29、 根据权利要求 18所述的系统, 还包括:
第二云崩溃服务器, 用于从崩溃信息中提取出崩溃数据包, 将所述崩溃数据包存入 队列中; 以及, 读取所述队列, 将来自不同浏览器产品的崩溃数据包分送给不同的所述 分析设备;
持久化存储器, 用于存储所述崩溃数据包。
30、根据权利要求 29所述的系统,所述崩溃信息还包括第二浏览器侧数据校验信息; 所述第二浏览器侧数据校验码是根据所述崩溃数据包、 崩溃标识信息和预设密钥而生成 的;
所述系统还包括: 第二校验模块, 用于通过验证所述第二浏览器侧数据校验信息是 否正确来对所述崩溃信息的合法性和完整性进行校验。
31、 根据权利要求 29所述的系统, 所述崩溃信息还包括浏览器产品名称; 所述系统还包括: 第二验证模块, 用于通过效验浏览器产品名称来对浏览器产品的 合法性进行校验。
32、 根据权利要求 18所述的系统, 所述分析设备进一步用于:
通过部署的自动崩溃数据包分析程序, 随时监控浏览器上传的崩溃数据包, 一旦发 现有新的崩溃数据包, 立即进行分析, 并及时返回分析结果数据;
或者, 调用自动化分析接口对浏览器上传的崩溃数据包进行分析。
33、 根据权利要求 18所述的系统, 还包括:
数据库;
第三云崩溃服务器, 用于将分析设备分析得到的数据传输给索引服务器; 索引服务器, 用于按照预设时间间隔, 以增量索引的方式将所述崩溃数据包的分析 结果数据存储在数据库中。
34、 根据权利要求 33所述的系统, 还包括: 预警设备, 用于对所述数据库中存储的 数据进行统计, 如果统计结果超出预设阀值则进行报警。
35、根据权利要求 18所述的系统, 所述下发设备进一步用于根据所述崩溃数据包的 分析结果数据所对应的浏览器的机器标识或浏览器用户的标识, 将所述崩溃数据包的分 析结果数据下发到对应的浏览器。
36、 一种计算机程序, 包括计算机可读代码, 当所述计算机可读代码在服务器上运 行时, 导致所述服务器执行根据权利要求 1-17中的任一个所述的浏览器崩溃信息的处理 方法。
37、 一种计算机可读介质, 其中存储了如权利要求 36所述的计算机程序。
PCT/CN2014/070185 2013-01-07 2014-01-06 浏览器崩溃信息的处理方法及系统 Ceased WO2014106489A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/759,617 US9876696B2 (en) 2013-01-07 2014-01-06 Method and system for processing browser crash information

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310004497X 2013-01-07
CN201310004497.XA CN103019879B (zh) 2013-01-07 2013-01-07 浏览器崩溃信息的处理方法及系统

Publications (1)

Publication Number Publication Date
WO2014106489A1 true WO2014106489A1 (zh) 2014-07-10

Family

ID=47968509

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/070185 Ceased WO2014106489A1 (zh) 2013-01-07 2014-01-06 浏览器崩溃信息的处理方法及系统

Country Status (3)

Country Link
US (1) US9876696B2 (zh)
CN (1) CN103019879B (zh)
WO (1) WO2014106489A1 (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9442825B2 (en) 2013-04-15 2016-09-13 Tencent Technology (Shenzhen) Company Limited Method and device for signing program crash
CN106095660A (zh) * 2016-06-14 2016-11-09 百度在线网络技术(北京)有限公司 应用的质量监控方法及装置
CN112527558A (zh) * 2020-12-08 2021-03-19 广东小天才科技有限公司 一种分析子系统死机的方法、系统和终端设备
CN113110951A (zh) * 2021-04-08 2021-07-13 北京沃东天骏信息技术有限公司 一种崩溃信息处理方法和装置
CN113127242A (zh) * 2020-01-10 2021-07-16 北京新氧科技有限公司 一种应用程序崩溃处理方法及处理装置
CN113190237A (zh) * 2021-05-10 2021-07-30 北京百度网讯科技有限公司 数据处理方法、系统和装置
CN114416560A (zh) * 2022-01-19 2022-04-29 上海哔哩哔哩科技有限公司 程序崩溃分析聚合方法和系统
CN115495359A (zh) * 2022-09-22 2022-12-20 中国建设银行股份有限公司 崩溃信息的采集方法和相关设备

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103019879B (zh) * 2013-01-07 2015-12-09 北京奇虎科技有限公司 浏览器崩溃信息的处理方法及系统
CN103164322B (zh) * 2013-04-15 2016-02-17 腾讯科技(深圳)有限公司 一种程序崩溃的签名方法和装置
CN103455547B (zh) * 2013-07-05 2017-03-01 百度在线网络技术(北京)有限公司 一种用于网页加载的方法及装置
US9614900B1 (en) * 2014-06-19 2017-04-04 Amazon Technologies, Inc. Multi-process architecture for a split browser
GB2531770A (en) * 2014-10-30 2016-05-04 Ibm Confidential Extracting System Internal Data
CN104765798B (zh) * 2015-03-26 2018-08-07 深圳一科互联有限公司 Mysql异地同步增强容错性的实现系统及实现方法
US10140165B2 (en) 2017-02-02 2018-11-27 Microsoft Technology Licensing, Llc Shell action browser extensions
US10341847B2 (en) 2017-02-10 2019-07-02 International Business Machines Corporation Reactionary data transfer to cold storage
CN108052431A (zh) * 2017-12-08 2018-05-18 北京奇虎科技有限公司 终端程序异常关闭信息处理方法、装置、终端
US10684035B2 (en) 2018-01-08 2020-06-16 Trane International Inc. HVAC system that collects customer feedback in connection with failure triage
CN110445632B (zh) * 2018-05-04 2023-09-01 北京京东尚科信息技术有限公司 一种预防客户端崩溃的方法和装置
CN112559277B (zh) * 2019-09-25 2024-11-26 北京百度网讯科技有限公司 崩溃信息的处理方法、系统、车载设备、服务器、电子设备及存储介质
CN120429273B (zh) * 2024-12-25 2026-04-10 荣耀终端股份有限公司 文件命名方法和电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120060065A1 (en) * 2007-06-20 2012-03-08 Microsoft Corporation Web page error reporting
CN102510538A (zh) * 2011-11-03 2012-06-20 深圳创维-Rgb电子有限公司 一种异常状态处理方法、装置及电视机
CN103019879A (zh) * 2013-01-07 2013-04-03 北京奇虎科技有限公司 浏览器崩溃信息的处理方法及系统
CN103078945A (zh) * 2013-01-07 2013-05-01 北京奇虎科技有限公司 对浏览器崩溃数据进行处理的方法与系统
CN103152381A (zh) * 2013-01-07 2013-06-12 北京奇虎科技有限公司 一种对浏览器崩溃数据进行处理的方法和服务器系统
CN103167016A (zh) * 2013-01-07 2013-06-19 北京奇虎科技有限公司 一种浏览器崩溃数据上传和处理的方法和装置

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6044407A (en) * 1992-11-13 2000-03-28 British Telecommunications Public Limited Company Interface for translating an information message from one protocol to another
US6324673B1 (en) * 1999-01-14 2001-11-27 Princeton University Method and apparatus for edge-endpoint-based VLSI design rule checking
US6662310B2 (en) * 1999-11-10 2003-12-09 Symantec Corporation Methods for automatically locating url-containing or other data-containing windows in frozen browser or other application program, saving contents, and relaunching application program with link to saved data
US7028056B1 (en) * 2000-04-14 2006-04-11 Microsoft Corporation Method and arrangements for generating debugging information following software failures
US6629267B1 (en) * 2000-05-15 2003-09-30 Microsoft Corporation Method and system for reporting a program failure
US7363235B2 (en) * 2001-02-16 2008-04-22 Fujifilm Corporation Image storing apparatus and image storing program
US7237232B2 (en) * 2001-05-24 2007-06-26 Microsoft Corporation Method and system for recording program information in the event of a failure
US7089246B1 (en) * 2002-02-28 2006-08-08 America Online, Inc. Overriding content ratings and restricting access to requested resources
US20040111394A1 (en) * 2002-12-06 2004-06-10 International Business Machines Corporation Hidden fields for containing debug information
US7289988B2 (en) * 2003-07-08 2007-10-30 Hewlett-Packard Development Company, L.P. Method and system for managing events
US20050177597A1 (en) * 2004-02-04 2005-08-11 Steve Elmer System and method of exercising a browser
US7398433B2 (en) * 2004-03-31 2008-07-08 Microsoft Corporation System and method of preventing a web browser plug-in module from generating a failure
US20050229104A1 (en) * 2004-04-09 2005-10-13 Microsoft Corporation Add-on management
US8751624B1 (en) * 2004-12-10 2014-06-10 Packet Design, Llc System and method for identifying issues related to messages in a communication network
US7882072B1 (en) * 2005-12-30 2011-02-01 Google Inc. Autosave functionality for web browser
US20080005281A1 (en) * 2006-06-29 2008-01-03 Microsoft Corporation Error capture and reporting in a distributed computing environment
US9021140B2 (en) * 2007-03-12 2015-04-28 Citrix Systems, Inc. Systems and methods for error detection
US7617074B2 (en) * 2007-07-06 2009-11-10 Microsoft Corporation Suppressing repeated events and storing diagnostic information
US7478330B1 (en) * 2008-04-30 2009-01-13 International Business Machines Corporation Systems and methods involving improved web browsing
US8819560B2 (en) * 2008-08-04 2014-08-26 International Business Machines Corporation Dispatching events to multiple browser windows/tabs using a single connection
US8234367B2 (en) * 2008-09-25 2012-07-31 Teradata Us, Inc. Techniques for hierarchical report tool session management
US8347386B2 (en) * 2008-10-21 2013-01-01 Lookout, Inc. System and method for server-coupled malware prevention
US8745202B2 (en) * 2009-04-03 2014-06-03 Google Inc. Tracking remote browser crashes via cookies
US8776028B1 (en) * 2009-04-04 2014-07-08 Parallels IP Holdings GmbH Virtual execution environment for software delivery and feedback
WO2011056101A1 (en) * 2009-11-04 2011-05-12 Saab Ab Centralized supervision of network traffic
US8863001B2 (en) * 2010-06-11 2014-10-14 Microsoft Corporation Web application home button
WO2012125696A2 (en) * 2011-03-14 2012-09-20 Browsium, Inc. Methods and systems for one browser version to use a rendering engine of another browser version for displaying information
US8386604B1 (en) * 2011-09-30 2013-02-26 Google Inc. Assigning blame to web browser extensions and applications
US9456061B2 (en) * 2012-08-15 2016-09-27 International Business Machines Corporation Custom error page enabled via networked computing service
US9444899B2 (en) * 2012-12-26 2016-09-13 Microsoft Technology Licensing, Llc Use of internet information services logging to collect user information in an asynchronous manner

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120060065A1 (en) * 2007-06-20 2012-03-08 Microsoft Corporation Web page error reporting
CN102510538A (zh) * 2011-11-03 2012-06-20 深圳创维-Rgb电子有限公司 一种异常状态处理方法、装置及电视机
CN103019879A (zh) * 2013-01-07 2013-04-03 北京奇虎科技有限公司 浏览器崩溃信息的处理方法及系统
CN103078945A (zh) * 2013-01-07 2013-05-01 北京奇虎科技有限公司 对浏览器崩溃数据进行处理的方法与系统
CN103152381A (zh) * 2013-01-07 2013-06-12 北京奇虎科技有限公司 一种对浏览器崩溃数据进行处理的方法和服务器系统
CN103167016A (zh) * 2013-01-07 2013-06-19 北京奇虎科技有限公司 一种浏览器崩溃数据上传和处理的方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WU, FANG;: "Strategy of Microsoft. NET: the browser - from different perspectives", ELECTRONIC COMPUTER AND EXTERNAL EQUIPMENT, vol. 6, 30 June 2001 (2001-06-30), pages 108 - 111 *

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9442825B2 (en) 2013-04-15 2016-09-13 Tencent Technology (Shenzhen) Company Limited Method and device for signing program crash
CN106095660A (zh) * 2016-06-14 2016-11-09 百度在线网络技术(北京)有限公司 应用的质量监控方法及装置
CN106095660B (zh) * 2016-06-14 2019-03-08 百度在线网络技术(北京)有限公司 应用的质量监控方法及装置
CN113127242A (zh) * 2020-01-10 2021-07-16 北京新氧科技有限公司 一种应用程序崩溃处理方法及处理装置
CN112527558A (zh) * 2020-12-08 2021-03-19 广东小天才科技有限公司 一种分析子系统死机的方法、系统和终端设备
CN113110951A (zh) * 2021-04-08 2021-07-13 北京沃东天骏信息技术有限公司 一种崩溃信息处理方法和装置
CN113190237A (zh) * 2021-05-10 2021-07-30 北京百度网讯科技有限公司 数据处理方法、系统和装置
CN113190237B (zh) * 2021-05-10 2024-01-19 北京百度网讯科技有限公司 数据处理方法、系统和装置
CN114416560A (zh) * 2022-01-19 2022-04-29 上海哔哩哔哩科技有限公司 程序崩溃分析聚合方法和系统
CN115495359A (zh) * 2022-09-22 2022-12-20 中国建设银行股份有限公司 崩溃信息的采集方法和相关设备

Also Published As

Publication number Publication date
CN103019879B (zh) 2015-12-09
US20150350045A1 (en) 2015-12-03
US9876696B2 (en) 2018-01-23
CN103019879A (zh) 2013-04-03

Similar Documents

Publication Publication Date Title
CN103019879B (zh) 浏览器崩溃信息的处理方法及系统
US10079842B1 (en) Transparent volume based intrusion detection
US11563560B2 (en) Blockchain-based data evidence storage method and apparatus
CN102819713B (zh) 一种检测弹窗安全性的方法和系统
CN103077108B (zh) 一种对浏览器崩溃进行预警的方法和系统
CN103745158A (zh) 修复系统漏洞的方法和装置
CN111698126B (zh) 信息监控方法、系统及计算机可读存储介质
CN112313629B (zh) 备份和恢复验证
CN110347571A (zh) 一种崩溃日志采集方法、分析方法及相关装置
CN114465741B (zh) 一种异常检测方法、装置、计算机设备及存储介质
CN103078945A (zh) 对浏览器崩溃数据进行处理的方法与系统
WO2017107961A1 (zh) 一种备份系统及方法
CN110362993A (zh) 恶意进程识别方法、终端、服务器、系统及存储介质
CN112714351A (zh) 一种取证方法、取证装置及服务器
CN112395602B (zh) 静态安全特征数据库的处理方法、装置及系统
CN115694699B (zh) 时延参数采集方法、装置、电子设备及存储介质
CN111338889A (zh) 支持多种操作系统的取证方法、装置、设备及存储介质
CN103167016B (zh) 一种浏览器崩溃数据上传和处理的方法和装置
WO2017215650A1 (zh) 微端的自动登录方法、装置、程序及介质
CN106203179A (zh) 一种对文件的完整性校验系统及方法
CN103152381B (zh) 一种对浏览器崩溃数据进行处理的方法和服务器系统
CN104484198A (zh) 一种安装应用程序的方法和装置
CN110213055B (zh) 情报更新方法、装置、计算机设备及计算机可读存储介质
RU2018140564A (ru) Компьютерная система для формирования подтвержденных данных
CN111460436A (zh) 一种基于区块链的非结构化数据操作方法和系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14735100

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 14759617

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 14735100

Country of ref document: EP

Kind code of ref document: A1