CN118119926A - 基于候选运行手册的结果与事件的补救的相关性推荐候选运行手册 - Google Patents

基于候选运行手册的结果与事件的补救的相关性推荐候选运行手册 Download PDF

Info

Publication number
CN118119926A
CN118119926A CN202280068607.6A CN202280068607A CN118119926A CN 118119926 A CN118119926 A CN 118119926A CN 202280068607 A CN202280068607 A CN 202280068607A CN 118119926 A CN118119926 A CN 118119926A
Authority
CN
China
Prior art keywords
event
candidate
manual
topology
results
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.)
Pending
Application number
CN202280068607.6A
Other languages
English (en)
Inventor
R·H·R·帕蒂
C·A·罗伊
A·M·H·麦卡洛姆
M·古斯瓦米
J·K·科尔科
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.)
Oracle International Corp
Original Assignee
Oracle International Corp
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 Oracle International Corp filed Critical Oracle International Corp
Priority claimed from PCT/US2022/039635 external-priority patent/WO2023027885A1/en
Publication of CN118119926A publication Critical patent/CN118119926A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0637Strategic management or analysis, e.g. setting a goal or target of an organisation; Planning actions based on goals; Analysis or evaluation of effectiveness of goals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR 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/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2257Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using expert systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2294Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by remote test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3048Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the topology of the computing system or computing system component explicitly influences the monitoring activity, e.g. serial, hierarchical systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3065Monitoring arrangements determined by the means or processing involved in reporting the monitored data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/321Display for diagnostics, e.g. diagnostic result display, self-test user interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/366Software debugging using diagnostics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/20Administration of product repair or maintenance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • H04L41/122Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/142Network analysis or design using statistical or mathematical methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3006Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0866Checking the configuration
    • H04L41/0869Validating the configuration within one network element
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/16Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
    • 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/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • 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/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0882Utilisation of link capacity
    • 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/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0888Throughput
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Computer Hardware Design (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Educational Administration (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Probability & Statistics with Applications (AREA)
  • Pure & Applied Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

公开了用于选择运行手册作为诊断或补救事件的推荐的技术。一种系统识别事件,诸如被监视的度量值中的异常。该系统识别与事件相关联的运行手册。系统分析运行手册以确定推荐哪些运行手册来补救事件。分析包括预览与运行手册的步骤相关联的操作的结果,以识别令人感兴趣的结果。系统在推荐用于诊断或补救事件的运行手册之前执行运行手册操作。基于操作的结果,系统确定运行手册与检测到的事件的诊断或补救的相关性。系统基于一组结果与事件的诊断或补救的相关性来推荐用于诊断或补救事件的运行手册。

Description

基于候选运行手册的结果与事件的补救的相关性推荐候选运 行手册
技术领域
本公开涉及在运行手册选择过程期间推荐相关运行手册。具体而言,本公开涉及用于补救事件的事件感知的、拓扑感知的运行手册选择。
背景技术
现代信息技术系统包括大量不同类型的组件。例如,可能存在数据库系统、网络系统、计算机应用等。每个这样的系统可以由专门的信息技术(IT)专业人员来管理和/或监视。
在正常操作期间,计算机系统可能产生或遇到监视该系统的操作者未预料或期望的行为或结果。此类行为或结果可以生成事件记录(例如,过程运行缓慢或过程停止)。在遇到事件日志或事故消息时,用户可能希望通过执行一项或多项补救任务来解决问题。用户可以执行由运行手册定义的补救任务。运行手册是用户可以遵循以执行一系列任务来实现期望结果的指南,诸如系统中的意外的或不期望的结果的补救。
本节中描述的方法是可以采用的方法,但不一定是先前已经设想或追求的方法。因此,除非另有说明,否则不应仅由于将本节中所述的任何方法包括在本节中而将其视为有资格作为现有技术。
附图说明
在附图的各图中,通过示例而非限制的方式例示了实施例。应当注意的是,在本公开中对“实施例”或“一个实施例”的引用不一定是指同一个实施例,并且它们意味着至少一个。在附图中:
图1A例示了根据一个或多个实施例的系统;
图1B例示了根据一个或多个实施例的示例系统拓扑;
图2例示了根据一个或多个实施例的用于基于系统拓扑来推荐要为补救事件而执行的运行手册的示例操作集;
图3例示了根据一个或多个实施例的用于基于与运行手册相关联的拓扑数据来推荐要为诊断和/或补救事件而执行的运行手册的示例操作集;
图4例示了根据一个或多个实施例的用于基于事件属性来推荐诊断和/或补救事件的运行手册的示例操作集;
图5例示了根据一个或多个实施例的用于预览运行手册操作以推荐用于诊断/补救事件的运行手册的示例操作集;
图6例示了推荐诊断/补救事件的运行手册的示例实施例;
图7例示了推荐诊断/补救事件的运行手册的另一个示例实施例;
图8A和8B例示了图形用户界面(GUI)的示例实施例;
图9示出了图示根据一个或多个实施例的计算机系统的框图。
具体实施方式
在下面的描述中,出于解释的目的,阐述了许多具体细节以便提供透彻的理解。一个或多个实施例可以在没有这些具体细节的情况下实践。一个实施例中描述的特征可以与另一个实施例中描述的特征组合。在一些示例中,参考框图形式描述了众所周知的结构和设备,以避免不必要地混淆本发明。
1.总体概述
2.系统架构
3.示例系统拓扑
4.用于事件诊断和补救的运行手册的基于拓扑的推荐
5.用于事件诊断和补救的运行手册的基于事件的推荐
6.预览运行手册操作以推荐候选运行手册
7.示例实施例
8.计算机网络和云网络
9.其它事项;扩展
10.硬件概述
1.总体概述
运行手册定义了可独立执行的操作的集合,用户可以执行这些操作来诊断和补救系统中出现的问题。例如,基于检测到与数据通信设备的通信已被中断,信息技术(IT)技术人员可以打开特定的运行手册以来诊断数据通信故障的原因。该运行手册还可以包括恢复对数据通信设备的访问的步骤。复杂的系统可以具有数百或数千个运行手册来帮助技术人员诊断事件原因并补救事件。因而,技术人员可能难以识别针对特定检测到的事件应当执行的特定运行手册。
一个或多个实施例预览一个或多个运行手册操作,而无需用户发起运行手册操作,以识别令人感兴趣的运行手册操作结果。系统在用户不发起运行手册操作的情况下执行与运行手册操作相关联的一个或多个操作。系统可以执行运行手册操作本身,或者不是运行手册操作但提供对运行手册操作的洞察的操作。系统分析操作结果以确定操作是否生成令人感兴趣的结果。例如,系统可以确定操作结果是否与检测到的事件相关。系统基于与候选运行手册相关联的操作结果和事件的诊断和/或补救的相关性来推荐候选运行手册。系统基于(a)结果本身或(b)与结果相关联的信息来确定结果与事件的诊断和/或补救的相关性。结果可以包括通过执行运行手册的可独立执行的操作中的一个或多个而生成的数据。与结果相关联的信息可以包括例如用于计算结果的数据、结果中包括的数据的类型、结果的来源、结果中包括的细节的水平、结果中包括的软件/硬件组件信息。关于结果的信息可以指示由结果识别出的问题的类型是否是在受事件影响的目标软件/硬件组件或环境中检测到的问题。
系统可以通过分析在用户选择用于补救事件的运行手册之前执行候选运行手册的(一个或多个)操作所生成的结果来生成关于结果的信息。替代地或附加地,系统可以通过执行从数据库返回信息的查询来获得关于结果的信息(而不通过执行候选运行手册的(一个或多个)操作来获得结果本身)。
例如,系统可以识别事件“与路由器的通信丢失”。系统可以识别与事件“与路由器的通信丢失”相关联的候选运行手册。系统可以通过(a)执行运行手册的步骤中指定的操作,或者(b)执行运行手册的任何步骤中未指定的操作(该操作提供关于在运行手册中指定的操作的信息)来预览一个或多个运行手册操作。如果运行手册步骤指定“检查到网络路由器的电力连接”的操作,那么系统可以在用户执行操作之前通过检查到网络路由器的电力来预览该操作。可替代地,系统可以通过执行提供关于到网络路由器的电力连接的信息的操作来预览操作,诸如向路由器传输状态检查信号。如果路由器返回状态响应,那么系统可以确定路由器已通电。系统可以确定,由于路由器已通电,因此路由器的电力不太可能对检测到的事件有贡献,并且因此该操作在事件的上下文中不是“令人感兴趣的”。因而,系统可以降低运行手册的相关性分数。
根据另一个示例,如果步骤指定“检查状态屏幕中的网络路由器状态”的操作,那么系统可以通过分析路由器与网络中的相邻组件之间的数据传输日志来预览运行手册操作。如果路由器正在传输预期数量的数据,那么系统可以确定步骤“检查状态屏幕中的网络路由器状态”不太可能有助于补救事件,因此不是“令人感兴趣的”。因此,系统可以降低相关联的运行手册的相关性分数。
作为另一个示例,系统可以识别被标记为“数据丢失超过阈值”的事件。系统可以识别与事件类型“数据丢失超过阈值”相关联的一组候选运行手册。在推荐任何运行手册来补救事件之前,系统通过执行与候选运行手册相关联的一个或多个操作来预览运行手册。例如,系统可以执行运行手册中指定的步骤来“检查针对服务器A的数据传输队列日志”。系统可以在推荐运行手册之前将与数据传输队列日志相关联的数据与阈值数据进行比较。例如,系统可以确定数据传输队列是否已满。基于所执行操作的结果,系统确定特定运行手册是否包括具有与检测到的事件相关的“令人感兴趣的”结果的操作。系统基于特定运行手册是否包括具有与检测到的事件相关的“令人感兴趣的”结果的操作来确定是否推荐运行手册来补救事件。如果系统确定所执行的操作的结果很可能导致补救识别出的事件(例如,“数据丢失超过阈值”),那么系统增加相关联的运行手册的相关性分数。系统可以对多个运行手册进行排名。系统可以推荐具有最高相关性分数的一个或多个运行手册来补救事件。
在一个或多个实施例中,系统呈现运行手册选择界面以允许用户选择用户想要执行运行手册的事件。当用户在运行手册选择界面中选择与事件相关联的界面元素时,系统可以执行与和该事件相关联的一个或多个候选运行手册的步骤相关联的操作。
一个或多个实施例基于与检测到的事件相关联的系统拓扑数据和/或事件属性选择特定运行手册来推荐用于系统中检测到的事件的原因诊断和补救。系统获得与事件相关联的系统拓扑。系统拓扑指定系统中的组件以及系统中的组件之间的关系。系统识别和识别出的系统拓扑相似的另一个拓扑。可以从所存储的拓扑集合中选择另一个拓扑。如果所存储的拓扑和系统拓扑足够相似,那么系统推荐与所存储的拓扑相关联的运行手册来补救检测到的事件。例如,运行手册可以是先前用所存储的拓扑执行以成功补救检测到的事件的运行手册。
例如,系统可以检测服务器中的通信故障。该系统识别与在其中检测到故障的服务器通信的附加组件,包括另一个服务器、数据库和网关。该系统识别所存储的拓扑,其包括相似拓扑,包括与另一个服务器和网关通信的服务器。系统基于确定所存储的拓扑相似于与服务器故障相关联的拓扑来选择与所存储的拓扑相关联的运行手册以推荐用于补救服务器故障。系统可以基于两个拓扑之间共有的组件的数量来确定所存储的拓扑是否和在其中检测到事件的系统拓扑相似。
一个或多个实施例呈现允许用户选择事件的运行手册选择界面。系统收集与所选择的事件相关联的元数据。元数据可以包括事件数据,诸如事件的时间、发生事件的设备、事件发生时运行的程序以及受事件影响的用户。元数据还可以包括拓扑数据,包括发生事件的系统中的系统组件的拓扑关系。基于拓扑属性和事件属性,系统在运行手册选择界面中呈现运行手册以供执行从而补救所选择的事件。
一个或多个实施例基于与事件相关联的目标组件和与运行手册的操作相关联的一个或多个其它组件之间的关系推荐运行手册以补救检测到的事件。例如,系统可以识别运行手册中要求用户与四个系统组件交互的操作。系统可以基于系统拓扑来确定这四个组件和与事件相关联的目标组件密切相关。基于确定与运行手册相关联的组件和与事件相关联的目标组件密切相关,系统推荐运行手册来补救该事件。
一个或多个实施例基于检测到的事件和与运行手册相关联的事件之间的相似性来推荐运行手册以诊断事件的原因和/或补救检测到的事件。系统识别与事件相关联的属性,诸如事件的时间、发生事件的设备、事件发生时运行的程序以及受事件影响的用户。系统识别与所存储的事件相关联的属性。如果所存储的事件和检测到的事件具有预定义的相似性,那么系统推荐用于补救所存储的事件的运行手册来补救检测到的事件。
示例实施例检测为了补救事件对一个运行手册的用户选择。系统分析与检测到的事件、与和所选择的运行手册相关联的第二事件以及与和第三运行手册相关联的第三事件相关联的事件属性。基于确定第三事件比第二事件和检测到的事件更相似,系统推荐第三运行手册作为所选择的运行手册的替代方案来补救检测到的事件。
一个或多个实施例允许系统管理员将特定运行手册与特定事件相关联。例如,系统管理员可以经由运行手册选择界面指定当特定目标系统组件离线时或当满足特定操作阈值时应当呈现特定运行手册。此外,或作为替代,系统管理员可以生成与运行手册相关联的一组标签或标记来描述与该运行手册相关联的拓扑。系统可以将与运行手册相关联的拓扑和与检测到的事件相关联的拓扑进行比较,以选择补救检测到的事件的运行手册。系统管理员还可以促进运行手册在另一个事件管理系统中的显示,该另一个事件管理系统在检测到事件时执行特定动作。例如,事件管理系统可以检测到特定服务器意外离线。事件管理系统可以响应于服务器停机而执行一组动作,包括生成给管理员的通知、将数据请求重新路由到备份服务器以及呈现补救事件的特定运行手册。系统可以推荐管理员指定的运行手册和一个或多个附加的运行手册来补救事件。系统可以基于与检测到的事件相关联的拓扑和与附加的运行手册相关联的拓扑的相似性来识别附加的运行手册。
一个或多个实施例响应于呈现运行手册推荐而接收用户反馈。用户可以与GUI的用户界面元素交互以指示(a)推荐有助于诊断原因和补救事件,或者(b)推荐对诊断原因和补救事件没有帮助。例如,系统可以基于检测到的事件推荐两个运行手册。一个运行手册可以包括与在被监视的系统中运行的应用相关联的操作。另一个运行手册可以包括与不在系统中运行的应用相关联的操作。用户可以选择表示正面反馈的图标来指示前一个运行手册有助于补救事件。用户可以选择表示负面反馈的另一个图标来指示后一个运行手册对补救事件没有帮助,因为它针对不在系统中运行的应用。系统可以基于用户反馈更新运行手册评级。下次相同的事件发生时,系统可以基于与运行手册相关联的降低的评级而避免推荐后一个运行手册来补救事件。
本说明书中描述的和/或权利要求中记载的一个或多个实施例可以不包括在本总体概述章节中。
2.系统架构
图1A例示了根据一个或多个实施例的系统100。如图1A中所示,系统100包括被监视的系统110、事件补救平台120和数据储存库130。在一个或多个实施例中,系统100可以包括比图1A中所示的组件更多或更少的组件。图1中所示的组件可以相对于彼此位于本地或远处。图1中所示的组件可以用软件和/或硬件来实现。每个组件可以分布在多个应用和/或机器上。多个组件可以组合到一个应用和/或机器中。相对于一个组件描述的操作可以改由另一个组件执行。
下面在标题为“计算机网络和云网络”的第6节中描述与计算机网络相关的附加实施例和/或示例。
在一个或多个实施例中,数据储存库130是用于存储数据的任何类型的存储单元和/或设备(例如,文件系统、数据库、表的集合或任何其它存储机构)。另外,数据储存库130可以包括多个不同的存储单元和/或设备。多个不同的存储单元和/或设备可以是或可以不是相同类型或位于相同的物理站点。另外,数据储存库130可以在与事件补救平台120相同的计算系统上实现或执行。可替代地或附加地,数据储存库130可以在与事件补救平台120分离的计算系统上实现或执行。数据储存库130可以经由直接连接或经由网络通信地耦合到事件补救平台120。
描述系统拓扑131、系统数据132、运行手册133、历史系统拓扑134和历史系统事件135的信息可以跨系统100内的任何组件来实现。但是,为了清楚和解释的目的,这个信息被示为在数据储存库104内。
在一个或多个实施例中,事件补救平台120是指被配置为执行本文描述的用于推荐诊断检测到的事件的原因并补救检测到的事件的运行手册的操作的硬件和/或软件。下面参考图2至图4描述用于推荐诊断检测到的事件的原因并补救检测到的事件的运行手册的操作示例。下面参考图5描述用于预览运行手册的操作以识别用于推荐诊断和/或补救事件的令人感兴趣的运行手册操作的示例。
在实施例中,事件补救平台120在一个或多个数字设备上实现。术语“数字设备”是指包括处理器的任何硬件设备。数字设备可以指执行应用的物理设备或虚拟机。数字设备的示例包括计算机、平板电脑、膝上型计算机、台式机、上网本、服务器、web服务器、网络策略服务器、代理服务器、通用机器、特定于功能的硬件设备、硬件路由器、硬件交换机、硬件防火墙、硬件防火墙、硬件网络地址翻译器(NAT)、硬件负载平衡器、大型机、电视、内容接收器、机顶盒、打印机、移动电话、智能电话、个人数字助理(“PDA”)、无线接收器和/或发送器、基站、通信管理设备、路由器、交换机、控制器、接入点和/或客户端设备。
事件补救平台120包括数据收集引擎121。数据收集引擎121从被监视的系统110收集数据,诸如日志数据、传感器数据、模拟和数字设备状态数据以及程序状态数据。数据收集引擎121还可以从数据储存库130获得系统数据132。系统数据132可以包括日志数据、传感器数据和由被监视的系统110生成的系统性能度量的度量值。
事件检测引擎122监视由数据收集引擎121获得的数据以检测系统110中的事件。例如,事件检测系统122可以监视由在系统110中运行的一个或多个应用生成的活动日志以及基于系统110中的设备的特性生成输出值的传感器数据,以检测系统110中的一个或多个组件的故障。事件的示例可以包括:计算设备发生故障或在定义的阈值以下操作、应用发生故障或在定义的阈值以下操作、未经授权的实体对设备或应用的访问、数据传输速率低于定义的阈值、沿着通信信道的数据时延高于定义的阈值、沿着通信信道的数据丢失高于定义的阈值以及监视系统组件的传感器水平超过或未能满足定义的阈值。
拓扑识别引擎123识别被监视的系统110的拓扑。拓扑包括物理组件以及物理组件之间的互连。构成系统拓扑的物理组件的示例包括计算设备、连接计算设备的通信信道、电力供应、电力通道、设备存储固定装置、冷却组件和系统监视组件。拓扑还包括物理组件上运行的应用、物理组件上的子组件和软件的配置以及由物理组件存储的数据。例如,拓扑识别引擎123可以将存储与两个不同租户相关联的数据类型A和数据类型B的数据库、连接到数据库以允许访问数据库的服务器、在由服务器托管的虚拟机上运行以执行对数据库的查询的应用、服务器与数据库之间的通信信道以及从电力供应到服务器和数据库的电力通道识别为系统110拓扑的一部分。拓扑识别引擎123基于经由用户界面125的用户输入和在没有用户输入的情况下检测系统组件的属性中的一者或两者来识别系统拓扑131的组件。例如,在基于云的系统中,用户可以选择要包括在计算环境中的组件。拓扑识别引擎123可以识别用户选择以及与用户选择相关联的云维护的物理设备(例如,由云环境管理实体维护的远程设备)。例如,系统可以检测何时经由通信协议将新设备添加到云环境,而不接收执行新设备的检测的用户输入。例如,云环境管理实体可以将防火墙设备连接到与用户选择相关联的服务器。拓扑识别实体123可以在没有用户提示的情况下识别防火墙设备的特性,诸如端口信息、在防火墙设备上运行的应用、连接到防火墙设备的云设备等。根据一个实施例,拓扑识别引擎123将新检测到的设备、设备上运行的应用以及其它检测到的硬件添加到系统拓扑131。
根据一个或多个实施例,拓扑识别引擎123包括用户界面元素,诸如显示在用户界面125上的显示元素,以允许管理员指定被监视的系统110的拓扑元素。例如,管理员可以提供诸如“主服务器”、“备份服务器”、“客户端A服务器”、“客户端B服务器”、“数据库-客户端A和客户端B”等组件的描述。拓扑识别引擎123可以将管理员提供的拓扑数据存储在系统拓扑131中。
运行手册选择引擎124执行操作来选择用于诊断检测到的事件的原因和/或补救检测到的事件的运行手册。例如,运行手册选择引擎124可以将与检测到的事件相关联的系统拓扑131与同一系统110或其它系统的历史系统拓扑134进行比较,以识别与和系统拓扑131具有特定相似性的历史系统拓扑134相关联的其它运行手册。运行手册选择引擎124可以基于系统拓扑131和历史系统拓扑134之间的相似性来推荐与检测到的事件相关联的一个或多个运行手册以供执行。根据另一个示例,运行手册选择引擎124可以识别系统拓扑131和与不同运行手册133的特定步骤相关联的系统拓扑组件之间的相似性。运行手册选择引擎124可以识别与运行手册133的步骤相关联的系统组件。运行手册选择引擎124可以基于运行手册133的系统组件和系统拓扑131的系统组件之间的相似性来推荐一个或多个运行手册133以供执行。
运行手册选择引擎124执行操作来选择用于诊断和/或补救检测到的事件的运行手册。运行手册选择引擎124从存储的运行手册133当中识别与检测到的事件相关联的候选运行手册。例如,如果事件包括描述“应用崩溃”,那么运行手册选择引擎124可以识别包括描述“应用崩溃”的十个不同的运行手册133。运行手册选择引擎124分析与十个不同候选运行手册133相关联的属性以选择一个或多个运行手册来推荐用于诊断和/或补救应用崩溃。
根据一个或多个实施例,运行手册选择引擎124将与检测到的事件相关联的系统拓扑131和同一系统110或其它系统的历史系统拓扑134进行比较,以识别与和系统拓扑131具有特定相似性的历史系统拓扑134相关联的其它运行手册。运行手册选择引擎124可以基于系统拓扑131和历史系统拓扑134之间的相似性来推荐与检测到的事件相关联的一个或多个运行手册以供执行。根据另一个示例,运行手册选择引擎124可以识别系统拓扑131和与不同运行手册133的特定步骤相关联的系统拓扑组件之间的相似性。运行手册选择引擎124可以识别与运行手册133的步骤相关联的系统组件。运行手册选择引擎124可以基于运行手册133的系统组件和系统拓扑131的系统组件之间的相似性来推荐一个或多个运行手册133以供执行。
根据另一个示例,系统可以基于检测到的事件和一个或多个历史系统事件135之间的相似性来推荐运行手册用于执行。例如,运行手册选择引擎124可以识别与检测到的事件相关联的属性。属性可以包括例如日志值、传感器值和拓扑特性。运行手册选择引擎124可以识别检测到的事件的属性和一个或多个历史系统事件135的属性之间的相似性。运行手册选择引擎124可以识别被应用于历史系统事件135的运行手册。运行手册选择引擎124可以基于历史系统事件135和当前检测到的事件的属性之间的相似性来选择被应用于历史系统事件135的一个或多个运行手册以应用于当前检测到的事件。
根据另一个示例,运行手册选择引擎124预览候选运行手册的一个或多个运行手册操作以识别令人感兴趣的运行手册操作结果。运行手册选择引擎124基于操作是否生成了令人感兴趣的结果来将相关性分数应用于候选运行手册。具体而言,运行手册选择引擎124执行与候选运行手册相关联的一个或多个操作以确定要推荐候选运行手册中的哪一个以供执行从而补救事件。运行手册选择引擎124可以执行构成运行手册的一个或多个可独立执行的操作中的一个或多个以获得操作结果。可替代地,运行手册选择引擎124可以执行未在任何可独立执行的操作中明确指定的操作,但是该操作提供关于该操作与检测到的事件的补救的相关性的信息。
例如,候选运行手册可以包括可独立执行的操作的集合当中的“检查端口配置”的操作。根据一个实施例,运行手册选择引擎124可以在将候选运行手册呈现为补救事件的推荐之前执行检查端口配置的操作。具体而言,运行手册选择引擎124可以将存储在存储器中并描述端口配置的数据与预期端口配置进行比较。运行手册选择引擎124关于检测到的事件分析操作的结果以确定结果是否令人感兴趣。基于该分析,运行手册选择引擎124可以指派或调整候选运行手册的相关性分数。如果运行手册选择引擎124确定操作的结果没有提供令人感兴趣的结果,那么运行手册选择引擎124可以降低候选运行手册的相关性分数。例如,如果端口配置与预期配置一致,那么运行手册选择引擎124可以确定检查端口配置不太可能补救检测到的事件,因此结果关于检测到的事件不是令人感兴趣的。系统可以相应地降低相关联的候选运行手册的相关性分数。另一方面,如果运行手册选择引擎124确定端口配置值与预期配置不一致,那么运行手册选择引擎124可以确定结果关于事件是令人感兴趣的。运行手册选择引擎124可以增加候选运行手册的相关性分数,指示检查端口配置的操作很可能补救检测到的事件。
根据另一个实施例,运行手册选择引擎124可以在用户选择候选运行手册之前执行与候选运行手册相关联的操作,但是该操作不是由候选运行手册定义的特定的可独立执行的操作之一。例如,如果候选运行手册包括“检查端口配置”的操作,那么运行手册选择引擎124可以执行检查与目标组件的端口相关联的传输日志的操作。如果运行手册选择引擎124确定操作的结果关于检测到的事件不是令人感兴趣的,那么运行手册选择引擎124可以降低候选运行手册的相关性分数。例如,如果运行手册选择引擎124确定传输日志指示当检测到的事件发生时来往于数据端口的正常数据传输,那么运行手册选择引擎124可以确定结果关于检测到的事件不是令人感兴趣的。运行手册选择引擎124向候选运行手册指派低相关性分数。相反,如果运行手册选择引擎124确定传输日志指示来往于数据端口的数据传输中断,那么运行手册选择引擎124可以增加指派给候选运行手册的相关性分数,指示候选运行手册检查端口配置的操作可以很可能补救检测到的事件。
根据又一个示例,系统可以考虑准则的组合来调整候选运行手册的相关性分数。该准则可以包括例如:(a)运行手册的操作是否生成令人感兴趣的结果,(b)检测到的事件的属性是否和与候选运行手册相关联的事件的属性相似,以及(c)与检测到的事件相关联的拓扑是否和与候选运行手册相关联的拓扑相似。运行手册选择引擎124可以基于检测到的事件和一个或多个历史系统事件135之间的相似性来调整候选运行手册的相关性分数。例如,运行手册选择引擎124可以识别检测到的事件的属性和一个或多个历史系统事件135的属性之间的相似性。运行手册选择引擎124可以识别被应用于历史系统事件135的运行手册。运行手册选择引擎124可以基于与候选运行手册相关联的历史系统事件135和当前检测到的事件的属性之间的相似性来增加一个或多个候选运行手册的相关性分数。
根据一个或多个实施例,运行手册选择引擎124基于与检测到的事件相关联的事件数据和与检测到的事件相关联的拓扑数据中的一者或两者从候选运行手册的可独立执行的操作当中选择一个或多个操作来执行。例如,如果检测到的事件被指派名称“与服务器的通信丢失”,那么系统可以分析事件数据以识别事件的时间、与其通信丢失的服务器的ID以及标识在服务器上运行的应用的日志数据。系统可以分析系统拓扑131以识别被监视的系统110中与服务器通信的组件。系统可以识别与事件类型“与服务器的通信丢失”相关联的一组候选运行手册。基于事件数据和拓扑数据,运行手册选择引擎124可以关于候选运行手册中的一个或多个而选择一组预览操作来执行。例如,运行手册选择引擎124可以基于获得的事件数据来执行与候选运行手册的可独立执行的操作相关联的操作以“检查服务器上的应用登录”。根据另一个示例,运行手册选择引擎124可以基于获得的系统拓扑数据来执行与另一个候选运行手册的的可独立执行的操作相关联的操作以“检查与服务器通信的网关的状态”。运行手册选择引擎124基于(a)运行手册的操作是否生成令人感兴趣的结果、(b)检测到的事件的属性是否和与候选运行手册相关联的事件的属性相似以及(c)与检测到的事件相关联的拓扑是否和与候选运行手册相关联的拓扑相似来选择候选运行手册中的一个或多个以推荐用于诊断和/或补救事件“与服务器的通信丢失”。
根据一个或多个实施例,运行手册选择引擎124包括图形用户界面(GUI)生成器以在用户界面125上显示GUI。GUI可以包括运行手册选择界面。运行手册选择界面可以显示事件和用于补救该事件的一个或多个推荐的运行手册。GUI可以显示界面元素以允许用户提供关于推荐的运行手册的反馈。
事件补救平台120可以经由用户界面125显示一个或多个运行手册以供用户选择。此外,用户可以经由用户界面125执行所选择的运行手册的步骤。在一个或多个实施例中,接口125是指被配置为促进用户与事件补救平台120之间的通信的硬件和/或软件。界面125渲染用户界面元素并经由用户界面元素接收输入。界面的示例包括图形用户界面(GUI)、命令行界面(CLI)、触觉界面和语音命令界面。用户界面元素的示例包括复选框、单选按钮、下拉列表、列表框、按钮、切换开关、文本字段、日期和时间选择器、命令行、滑块、页面和表单。
在实施例中,界面125的不同组件以不同语言指定。用户界面元素的行为以动态编程语言(诸如JavaScript)指定。用户界面元素的内容以标记语言(诸如超文本标记语言(HTML)或XML用户界面语言(XUL))指定。用户界面元素的布局以样式表语言(诸如层叠样式表(CSS))指定。可替代地,界面125可以用一种或多种其它语言(诸如Java、C或C++)指定。
3.示例系统拓扑
图1B例示了根据一个或多个实施例的系统拓扑131的示例。“系统拓扑”是指被监视的系统110中的总体架构、布置、资源的类型、资源的依赖性和/或使用。
根据一个或多个实施例,系统使用拓扑元数据生成系统拓扑131。拓扑元数据包括描述应用的执行中部署和涉及的目标组件的类型的信息。示例目标类型可以包括但不限于云服务、聚合服务以及其它类型的软件服务、集群、组、主机、Java虚拟机(JVM)、JVM池、应用、服务器、数据库实例、OS服务、中央处理单元(CPU)、网络端口、存储器池以及软件或硬件资源的任何其它分类。
在一个或多个实施例中,拓扑元数据包括描述目标之间的依赖性和/或其它关系的信息。例如,拓扑图可以示出一个节点(与目标资源对应)连接到另一个节点(与不同的目标资源对应),指示这两个节点/对应的目标资源彼此具有关系。如果一个目标资源在拓扑图中“连接到”另一个目标资源,那么这两个资源被确定为在功能上彼此关联。在各种实施例中,关系可以不仅仅指示两个节点之间的连接,诸如与该连接相关联的功能性和/或方向。例如,功能性以“A在B上运行”或“A存储在B上”或“A使用B作为负载平衡器”的关系存在。方向可以以“A使用B”或“B使用A”或甚至“B使用A且A使用B”的关系存在。可以遍历拓扑图以确定哪些资源在功能上依赖于其它资源和/或其它关系信息。例如,在应用服务器的上下文中,拓扑图可以具有与连接到几个应用的应用服务器对应的节点,指示该服务器“连接”到每个应用。拓扑图还可以指示每个应用在功能上依赖于应用服务器。
复杂的软件应用常常包括多个层级(tier)或层(layer)。多层级应用的每个“层级”或“层”表示负责不同功能集的不同逻辑和/或物理元素。多层级架构内的层级的数量和配置可以根据特定的实现方式而变化。例如,三层级系统可以包括:表示层级,包括用于显示和/或接收信息的逻辑;应用层级,包括用于实现特定于应用的功能的逻辑;以及数据层级,包括用于存储和检索数据的逻辑。在其它示例中,作为先前列出的层级的附加或者替代,多层级架构可以包括包括用于处理web请求的逻辑的web层级和/或包括用于连接架构内的其它层级的逻辑的中间件层级,和/或包括一个或多个软件和/或一个或多个硬件组件的任何其它层级。拓扑元数据可以描述同一层级和不同层级中的目标资源之间的关系,包括部署在每个层级的目标的类型。
在聚类的环境中,拓扑元数据可以捕获跨多个物理和/或虚拟主机部署哪些软件组件。例如,拓扑元数据可以指示应用的第一实例正在第一服务器/主机上执行,应用的第二实例正在第二服务器/主机上执行,等等。在本示例中,应用的第一实例在功能上依赖于它在其上被执行的服务器和主机,但不依赖于集群中其它节点中的服务器和主机。但是,如果另一个集群中的节点之一变得无法运行,那么会导致第一节点上的流量增加。
系统拓扑131可以包括物理拓扑和虚拟拓扑。例如,物理拓扑可以包括通用计算机器141、142、143和144。通用计算机器可以是例如服务器。物理拓扑可以包括硬件路由器145和硬件防火墙设备146。系统拓扑131的物理拓扑可以包括比图1B中所示的数字设备更多或更少的数字设备。每个数字设备被表示为一个盒子。每个数字设备可以连接到物理拓扑内任何数量的一个或多个其它数字设备。数字设备可以位于单个地理位置或分布在各个地理位置。物理设备可以包括物理端口147和148。物理端口147和148可以经由电线连接物理设备。此外,或作为替代,设备141-146中的一个或多个可以无线地通信。
在实施例中,系统拓扑131可以与云网络对应。系统拓扑131中所示的数字设备可以在多个客户端设备和/或租户之间共享。特定数字设备可以针对不同的客户端设备和/或租户执行相同的功能。特定数字设备可以针对不同的客户端设备和/或租户执行不同的功能。
根据一个或多个实施例,物理拓扑包括在物理拓扑上实例化的虚拟拓扑。参考图1B,虚拟拓扑的元件包括节点149和150、虚拟机151和152、防火墙155以及虚拟路由器156。在本发明的一个实施例中,节点是被管理的实体或应用类型的表示。节点可以表示硬件(诸如被管理的主机)或软件(诸如,应用)。在图1B中所示的示例中,节点149包括应用153并且节点150包括应用154。在本发明的一个实施例中,对于应用视图类型,还生成与应用类型对应的节点。根据一个实施例,当系统实例化节点时,系统用来自被管理的实体表和动态状态表的数据填充该节点。系统可以基于节点表示的实体的类型来设置节点的层级。在本发明的一个实施例中,被管理的实体可以基于实体的类型被组织成三个层级之一:web层级、中间件层级和数据库层级。
可以有多种方式在物理拓扑上实例化由同一虚拟拓扑规范描述的虚拟拓扑。虚拟拓扑在物理拓扑上的实例化包括将虚拟拓扑规范中描述的虚拟拓扑实体(VTE)映射到物理拓扑的数字设备。
每个VTE与一个或多个功能相关联。功能的示例包括数据路由、数据过滤、数据检查、数据存储和/或任何其它类型的数据处理功能。
虚拟拓扑是基于虚拟拓扑规范在物理拓扑上被实例化的。在实例化期间,虚拟拓扑规范的VTE被映射到物理拓扑的数字设备。VTE可以与数字设备本身对应或者是在数字设备上执行的虚拟组件。单个VTE可以映射到多个数字设备。相反,多个VTE可以映射到单个数字设备。映射到特定VTE的特定数字设备实现与特定VTE对应的功能。虚拟拓扑规范可以但不一定包括对其中的物理拓扑或数字设备的任何引用。虚拟拓扑规范可以但不一定指定物理拓扑的哪些数字设备执行哪些VTE的哪些功能。
根据相应虚拟拓扑实现的多个计算机网络可以在单个物理拓扑上被实例化。作为示例,多个租户可以共享根据物理拓扑布置的数字设备的集合。每个租户可以具有VTE的不同期望布置。VTE的每种布置与不同的虚拟拓扑对应。相应租户的每种虚拟拓扑可以在物理拓扑上被实例化。
虚拟拓扑中的VTE可以在覆盖网络中执行。覆盖网络是在与物理拓扑对应的底层网络之上实现的。每个VTE与两个地址相关联:(a)与VTE对应的覆盖地址和(b)与在其上实例化VTE的数字设备对应的底层地址。地址可以是固定的(例如,由网络管理员录入)。附加地或替代地,可以动态地指派地址(例如,通过动态主机配置协议(DHCP)和/或另一个应用)。数据通过底层网络的隧道化在虚拟拓扑中的VTE之间传输。
系统拓扑131指定数据应该如何穿过VTE。数据应该根据链接VTE的连接穿过VTE。例如,数据可以通过穿过防火墙155和路由器156而从节点149传输到虚拟机151。在防火墙155处,可以处理数据以执行与防火墙155相关联的防火墙功能性。基于防火墙功能性,可以检查数据以确定是否允许数据通过。此外,在路由器156处,可以处理数据以执行路由器156的路由功能性。基于路由功能性,数据的下一跳可以被识别为虚拟机151。路由器156可以将数据转发到虚拟机151。
4.用于事件诊断和补救的运行手册的基于拓扑的推荐
图2例示了根据一个或多个实施例的用于基于系统拓扑来推荐用于诊断和/或补救事件的运行手册的示例操作集。图2中所示的一个或多个操作可以被修改、重新布置或完全省略。因而,图2中所示的特定操作顺序不应被解释为限制一个或多个实施例的范围。
系统可以包括一个或多个监视设备和监视应用。系统通过监视设备和/或应用检测与被监视的系统相关联的事件(操作202)。例如,系统可以识别与监视应用相关联的事件日志中的值或事件。事件日志可以识别:传感器值、数据吞吐量值、数据存储值、应用状态(例如,“OK”和“无响应”)以及访问事件,诸如识别来自实体的访问应用或设备的请求。根据一个示例实施例,系统识别在正确操作状态的阈值之外的异常传感器值或异常应用状态。根据另一个示例实施例,系统检测来自未被授权访问系统组件的实体的访问系统组件的访问请求。在一个示例实施例中,系统可以检测未被授权或未被识别的实体的成功访问尝试。
根据一个或多个实施例,检测事件包括分析由监视传感器数据和其它系统数据的机器学习模型生成的预测。根据一个或多个替代实施例,检测事件包括分析用户生成的事件条目,诸如由一个用户生成的向一个或多个附加用户(诸如为维护系统而训练的技术人员)通知异常的“工单(ticket)”。工单可以基于用户投诉(例如,“计算机不工作”)。可替代地,工单可以基于系统检测到的数据(例如,监视组件的传感器指示该组件正在值的阈值范围之外操作)。根据一个或多个实施例,检测事件包括将日志条目与已知或预测的异常进行比较。例如,可以基于由应用或设备生成的日志条目来检测登录到应用或设备的失败。系统可以分析日志条目,基于日志条目识别事件(例如,登录失败),并且收集与该事件相关联的系统元数据。系统元数据可以包括相关的日志条目(例如,源自同一设备的先前登录失败)、用户信息、应用信息、设备信息、通信协议和安全协议。
系统获得被监视的系统的系统拓扑(操作204)。系统拓扑识别物理系统组件,诸如计算设备、连接计算设备的通信信道、向计算设备供电的电力通道、在计算设备上运行的应用以及存储在计算设备中的数据。拓扑还可以识别对于特定系统组件的访问授权,诸如哪些实体具有访问不同系统硬件和软件的授权。系统拓扑可以存储在数据储存库中。可以基于系统拓扑的改变来更新所存储的系统拓扑。根据替代实施例,当在被监视的系统中检测到事件时,系统可以实时或按需检测系统拓扑。
根据示例实施例,系统可以检测事件,诸如设备中的登录失败。系统可以识别与设备相关联的拓扑,包括:用户尝试登录的应用、设备上运行的其它应用、设备上存储的数据的类型、设备与一个或多个附加设备之间的通信信道、促进设备与一个或多个附加设备之间的通信的硬件和软件、设备与从其发起登录尝试的另一个设备之间的通信路径(例如,通信信道、设备和通信层程序)、连接到目标设备的附加设备、在附加设备上运行的程序以及存储在附加设备中的数据。例如,系统可以确定用户尝试从云计算环境外部的终端登录在云计算环境的计算节点上运行的应用。系统可以识别云计算环境的拓扑,包括附加的计算节点、中间层级节点、数据库和安全硬件(诸如防火墙设备)。系统还可以识别在附加设备上运行的应用。
系统识别候选系统拓扑(操作206)。系统可以存储多种不同的系统拓扑。系统拓扑可以基于实际系统拓扑。例如,系统拓扑可以与被监视的系统在过去特定时间点的配置对应。可替代地,系统拓扑可以与不同系统的拓扑对应。不同的系统拓扑可以按照系统组件和系统功能来分类。例如,如果被监视的系统包括数据库和运行虚拟机的一个或多个服务器,那么系统可以选择与包括数据库的系统或已经运行虚拟机的系统相关联的候选拓扑。候选拓扑的分类的示例包括被监视的系统的特性,诸如:服务器之间的负载分布、系统上运行的特定应用、云环境中计算节点的特定数量以及云环境中附加类型的节点(例如,弹性节点、中间层级节点)的存在。候选拓扑可以与和同一企业(诸如大公司的不同部门)相关联的另一个实体相关联。可替代地,候选拓扑可以与不同企业的相同类型的部门相关联,诸如与两个不同的制造公司或两个不同的软件类型公司相关联的两个云计算环境。候选拓扑可以是不基于实际组织的历史拓扑的拓扑模板。例如,候选拓扑的集合可以包括与较低数据安全性级别相关联的拓扑模板和与较高数据安全性级别相关联的另一个拓扑模板。
根据一个或多个实施例,候选拓扑包括用户定义的拓扑元素。例如,用户可以生成运行手册以补救事件。在生成运行手册的过程中,用户可以生成指定与运行手册相关联的事件特性和拓扑元素的一组标签或标记。标记可以包括事件的名称、与运行手册操作相关联的系统组件、与运行手册操作相关联的系统应用以及组件之间的关系。系统可以识别由与用户生成的运行手册相关联的用户生成的标记定义的候选拓扑。此外,用户可以生成标记来指定与现有运行手册相关联的事件特性和拓扑元素。例如,如果系统中的网关设备被更新到更新的型号,那么系统管理员可以删除或修改与网关设备的先前型号相关联的运行手册的标记,以确保系统呈现用于补救与该网关设备的更新型号相关联的事件的运行手册。
根据一个或多个实施例,系统可以将用户生成的标记与系统生成的标记或数据组合。例如,用户可以生成与一对系统组件相关联的一对标记。系统可以识别组件之间的关系。系统可以识别组件之间的关系,而无需接收用户输入来指导系统识别该关系。系统可以基于识别出的关系生成新标记。例如,用户可以生成标记“服务器A”和“数据库A”。系统可以将数据库识别为由服务器生成的查询的对象。系统生成标记来指定数据库正在与服务器通信。系统可以生成另一个标记来指定数据库存储来自服务器的查询所访问的数据。系统可以基于用户生成的标记和系统生成的标记的组合来识别候选拓扑。
系统将被监视的系统的系统拓扑与候选拓扑进行比较以确定是否满足相似性准则(操作208)。相似性准则可以包括例如确定系统拓扑与候选拓扑之间拓扑元素的阈值百分比相同。系统可以对预定数量的候选拓扑执行比较,以识别与系统拓扑具有最高相似性的候选拓扑。例如,系统可以在一组数百个候选拓扑当中识别满足与系统拓扑的阈值相似性准则的三个不同的候选拓扑。系统可以在三个候选拓扑当中识别与系统拓扑具有最高相似性的候选拓扑。
基于确定候选拓扑满足与系统拓扑的相似性准则,系统识别与候选拓扑相关联的运行手册(操作210)。例如,系统可以确定运行手册先前在具有与系统拓扑相似的拓扑的系统中执行。系统还可以确定运行手册在与和被监视的系统中检测到的事件类型相同的事件相关联的候选系统中执行。
系统呈现运行手册以诊断事件的原因和/或补救在被监视的系统中检测到的事件(操作212)。例如,系统可以在图形用户界面上提供用户界面元素以允许用户选择运行手册。选择运行手册可以导致显示与和运行手册的步骤对应的可独立执行的操作相关联的一个或多个用户界面元素。根据一个或多个实施例,系统可以识别满足相似性准则的多个拓扑。系统可以呈现与和系统拓扑具有最高相似性的候选拓扑相关联的运行手册。系统可以基于候选拓扑和系统拓扑的相似程度来对与多个候选拓扑相关联的多个运行手册进行排名。系统可以经由GUI呈现预定义数量的补救事件的候选运行手册。系统可以基于候选拓扑和系统拓扑的相似程度对候选运行手册进行排名。例如,系统可以将与具有最高相似性排名的拓扑相关联的候选运行手册显示在与具有次高相似性排名的拓扑相关联的候选运行手册之上。
根据一个或多个实施例,呈现用于诊断事件的原因和/或补救事件的运行手册可以包括显示关于为什么候选运行手册满足相似性准则的信息。例如,系统可以显示关于候选拓扑的信息,诸如“候选拓扑包括连接到设备X的节点A、B和C”。系统可以经由文本或经由视觉元素(无文本)显示表示系统拓扑的组件和/或候选拓扑的组件。
根据一个或多个实施例,除了确定候选拓扑和系统拓扑之间是否满足相似性准则之外,系统还可以包括附加准则以确定是否呈现用于诊断事件的原因和/或补救事件的特定运行手册。例如,系统可以确定检测到的事件和与特定运行手册相关联的事件之间是否满足相似性准则。换句话说,系统可以基于(a)检测到的事件和与运行手册相关联的事件的相似性以及(b)与检测到的事件相关联的拓扑和与运行手册相关联的拓扑的相似性两者来选择要呈现用于补救事件的运行手册。根据一个或多个实施例,系统通过收集与检测到的事件相关联的元数据来识别拓扑和基于事件的关系。元数据包括例如用户ID、时间、设备ID、应用ID、应用类型、与事件相关联的端口号、与设备相关联的电源、通信信道类型、通信协议、加密类型、数据类型和数据内容(例如,与事件相关联的数据是否与操作系统(OS)或在OS上运行的应用相关联、与事件相关联的数据是否与基于云的环境的特定租户相关联等)。
图3例示了根据一个或多个实施例的用于基于系统拓扑中的目标组件与系统拓扑中的一个或多个附加组件之间的关系来推荐用于诊断事件的原因和/或补救事件的运行手册的另一个示例操作集。图3中所示的一个或多个操作可以被修改、重新布置或完全省略。因而,图3中所示的特定操作顺序不应当被解释为限制一个或多个实施例的范围。
系统可以包括一个或多个监视设备和监视应用。系统通过监视设备和/或应用检测与被监视的系统中的目标组件相关联的事件(操作302)。例如,系统可以识别与正被监视应用监视的组件相关联的事件日志中的值或事件。事件日志可以识别:传感器值、数据吞吐量值、数据存储值、应用状态和访问事件(诸如识别来自实体的访问应用或设备的请求)。根据一个示例实施例,系统识别在目标组件的正确操作状态的阈值之外的异常传感器值或异常应用状态。根据另一个示例实施例,系统检测来自未被授权访问系统组件的实体的访问系统组件的访问请求。在一个示例实施例中,系统可以检测未被授权或未被识别的实体的成功访问尝试。
系统识别系统拓扑中目标组件与一个或多个其它组件之间的拓扑关系(操作304)。系统拓扑描述物理系统组件,诸如计算设备、连接计算设备的通信信道、向计算设备供电的电力通道、在计算设备上运行的应用以及存储在计算设备中的数据。系统拓扑描述不同组件之间的关系,诸如组件如何通过通信信道连接、哪些组件直接彼此连接以及哪些组件沿着相同的通信路径间接连接、哪些组件依赖其它组件发挥作用,以及哪些软件类型组件可以在硬件类型组件上运行。
识别系统拓扑中的目标组件与一个或多个其它组件之间的拓扑关系可以包括识别组件的类型、组件的功能以及组件与系统中的其它组件的通信连接。例如,系统可以识别数据库应用与在其上运行该数据库应用的硬件之间的拓扑关系。作为另一个示例,系统可以识别连接到不同客户端终端并运行来自同一服务器的不同应用的两个虚拟机之间的拓扑关系。该拓扑还可以识别针对特定系统组件的访问授权,诸如哪些实体具有访问不同系统硬件和软件的授权。系统拓扑可以存储在数据储存库中。可以基于系统拓扑的改变来更新所存储的系统拓扑。根据替代实施例,当在被的监视系统中检测到事件时,系统可以实时或按需检测系统拓扑。
系统选择与系统拓扑中的一个或多个组件相关联的候选运行手册(操作306)。候选运行手册可以从一组存储的运行手册中选择。例如,系统可以维护与和系统中的事件相关联的不同例程进程相关联的数十、数百或数千个运行手册。
根据一个或多个实施例,系统收集与事件相关联的元数据以识别系统拓扑中的目标组件和一个或多个附加组件。系统可以基于收集的元数据选择候选运行手册。例如,由系统收集的元数据可以包括与目标组件相关联的用户的用户ID、与一个或多个组件相关联的组织名称或租户、与目标组件相关联的一个或多个设备的设备ID、应用信息(诸如应用名称)、应用运行状态(诸如应用是否正确执行、停止或无响应)、事件发生时由应用执行的进程、应用类型、与事件相关联的端口号、与事件相关联的电源、与事件相关联的通信信道的通信信道类型、通信协议、加密类型、数据类型和数据内容(例如,与事件相关联的数据是否与和事件相关联的操作系统(OS)或在OS上运行的应用相关联)。
系统基于目标组件和与候选运行手册相关联的一个或多个组件之间的拓扑关系来确定所选择的候选运行手册是否满足相关性阈值水平(操作308)。根据一个实施例,系统可以确定一个或多个组件与目标组件通信的紧密程度。例如,如果系统检测到事件“服务器崩溃”,那么系统拓扑可以识别与服务器通信的第一系统组件集合以及独立于服务器操作并且不受服务器崩溃影响的第二系统组件集合。识别目标组件与一个或多个其它组件之间的拓扑关系包括确定与候选运行手册相关联的一个或多个组件属于第一系统组件集合(与服务器通信)还是第二系统组件集合(不与服务器通信)。如果一个或多个组件属于第一系统组件集合,那么系统可以确定候选运行手册满足与目标组件的阈值相关性级别。相反,如果一个或多个组件属于第二系统组件集合,那么系统可以确定候选运行手册未能满足阈值相关性级别。
根据一个或多个实施例,系统可以基于目标组件和与候选运行手册相关联的一个或多个其它组件之间的通信程度来确定候选运行手册是否满足阈值相关性级别。例如,在上面的示例中,其中系统检测到事件“服务器崩溃”,系统可以确定与候选运行手册中的运行手册操作相关联的组件是否在与服务器直接通信的第一组件集合当中(第一通信程度)、在与第一组件集合中的一个组件直接通信的第二组件集合当中(第二通信程度)、或者在与第二组件集合中的一个组件直接通信的第三组件集合当中(第三通信程度)等等。系统可以向与第一组件集合相关联的候选运行手册指派最高相关性分数,向与第二组件集合相关联的候选运行手册指派次高相关性分数,以及向与组件的第三集合相关联的候选运行手册指派最低相关性分数。
基于确定候选运行手册满足相关性阈值水平,系统呈现用于诊断事件的原因和/或补救在被监视的系统中检测到的事件的运行手册(操作310)。例如,系统可以在图形用户界面上提供用户界面元素以允许用户选择运行手册。选择运行手册可以导致显示与和运行手册的步骤对应的可独立执行的操作相关联的一个或多个用户界面元素。
根据一个或多个实施例,系统可以识别满足与事件的阈值相关性的多个候选运行手册。系统可以基于目标组件和与候选运行手册的操作相关联的一个或多个组件之间的拓扑关系来呈现具有最高相关性分数的候选运行手册。系统可以基于候选运行手册的相关性分数对多个候选运行手册进行排名。系统可以经由GUI呈现预定义数量的补救事件的候选运行手册。系统可以基于候选运行手册的排名来显示排名的候选运行手册。例如,系统可以将具有最高相关性分数的候选运行手册显示在具有次高相关性分数的候选运行手册上方。
根据一个或多个实施例,呈现补救事件的候选运行手册可以包括显示关于目标组件和与对相关性分数作出贡献的运行手册的操作相关联的一个或多个组件之间的关系的信息。系统可以经由文本或经由表示系统拓扑的组件的视觉元素(无文本)显示“系统拓扑中存在与候选运行手册的操作相关联的X个组件”。可替代地,系统可以经由文本或经由表示系统拓扑的组件的视觉元素(有或没有文本)显示“与候选运行手册的操作相关联的X个组件和与事件相关联的目标组件具有Y程度的通信”。
5.用于事件诊断和补救的运行手册的基于事件的推荐
图4例示了根据一个或多个实施例的用于基于与另一个事件相关联的运行手册来推荐用于诊断事件的原因和/或补救事件的运行手册的示例操作集。图4中所示的一个或多个操作可以被修改、重新布置或完全省略。因而,图4中所示的特定操作顺序不应当被解释为限制一个或多个实施例的范围。
系统可以包括一个或多个监视设备和监视应用。系统通过监视设备和/或应用检测与被监视的系统相关联的事件(操作402)。例如,系统可以识别与监视应用相关联的事件日志中的值或事件。事件日志可以识别:传感器值、数据吞吐量值、数据存储值、应用状态和访问事件(诸如识别来自实体的访问应用或设备的请求)。根据一个示例实施例,系统识别在正确操作状态的阈值之外的异常传感器值或异常应用状态。根据另一个示例实施例,系统检测来自未被授权访问系统组件的实体的访问系统组件的访问请求。在一个示例实施例中,系统可以检测未被授权或未被识别的实体的成功访问尝试。
系统识别与事件相关联的事件属性(操作404)。识别事件属性可以包括收集和分析与事件相关联的元数据。例如,在当用户生成描述系统中的特定组件的工单时检测到事件的实施例中,系统可以审查与该组件相关联的日志数据。日志数据可以识别在预定义的时间段内与组件相关联的用户、应用和状态。根据系统通过监视传感器数据或系统组件的状态数据来检测事件的另一个示例实施例,识别事件属性可以包括识别最近的历史传感器数据或状态数据、识别与目标组件相关联的应用以及识别与目标组件相关联的用户。
根据示例实施例,由系统收集的元数据可以包括与事件相关联的用户的用户ID、与事件相关联的组织名称或租户、时间戳、与事件相关联的一个或多个设备的设备ID、应用信息(诸如应用名称)、应用运行状态(诸如应用是否正确执行、停止或无响应)、事件发生时由应用执行的进程、应用类型、与事件相关联的端口号、与事件相关联的电源、与事件相关联的通信信道的通信信道类型、通信协议、加密类型、数据类型和数据内容(例如,与事件相关联的数据是否和与事件相关联的操作系统(OS)或在OS上运行的应用相关联)。
系统识别候选历史事件以及与候选历史事件相关联的候选运行手册(操作406)。候选历史事件可以从存储的一组历史事件当中选择。例如,每次用户创建报告事件的工单时,系统可以存储该事件和与该事件相关联的元数据。类似地,每次系统基于传感器数据检测到事件时,系统可以存储该事件和与该事件相关联的元数据。根据另一个示例实施例,每次系统检测到特定组件状态(诸如无响应的应用或在阈值操作范围之外操作的组件)时,系统可以存储与检测到的事件相关联的元数据。此外,每次运行手册被应用于事件时,系统可以存储与事件或事件类型相关联的运行手册。根据一个示例实施例,系统可以从运行手册的用户获得反馈以确定运行手册是否成功解决了事件。如果运行手册成功解决了事件,那么系统可以将运行手册与该事件相关联地存储。如果运行手册没有成功解决事件,那么系统可以避免将运行手册与该事件相关联地存储。根据替代实施例,系统可以将多个运行手册与事件相关联地存储。系统可以基于(a)被选择来补救事件的运行手册和/或(b)成功补救事件的运行手册来增加多个运行手册之一的排名。系统可以基于(a)运行手册没有被选择来补救事件和/或(b)运行手册被选择但是在补救事件方面不成功来降低多个运行手册之一的排名。
系统确定候选历史事件是否满足与检测到的事件的相似性准则(操作408)。例如,系统可以将与检测到的事件相关联的元数据和与候选事件相关联的元数据进行比较。
相似性准则可以包括例如确定元数据元素的阈值百分比在检测到的事件与候选事件之间是相同的。系统可以对预定数量的候选事件执行比较,以识别与检测到的事件具有最高相似性的候选事件。例如,系统可以在一组数百个候选拓扑当中识别与检测到的事件满足阈值相似性准则的三个不同的候选事件。系统可以在三个候选事件当中识别与检测到的事件具有最高相似性的候选事件。
例如,系统可以检测与名称“与服务器的通信丢失”相关联的事件。系统可以识别满足相似性准则的三个候选事件。第一事件可以涉及特定服务器断电。第二事件可以涉及由服务器上运行的应用造成的被错误编程的通信端口。第三事件可以涉及沿着服务器与用户终端之间的通信信道的设备的通信故障。系统可以分析与检测到的事件相关联的元数据,包括:服务器的电力水平、在服务器上运行的应用以及沿着服务器与用户终端之间的通信信道的设备的存在和/或状态。系统可以基于从与事件相关联的元数据确定相同的应用曾在与检测到的事件相关联的目标服务器以及与候选事件相关联的服务器上运行来选择与检测到的事件具有最高相似性的第二候选事件。
基于确定候选事件满足与检测到的事件的相似性准则,系统呈现与候选事件相关联的诊断事件的原因和/或补救检测到的事件的候选运行手册(操作410)。例如,系统可以在图形用户界面上提供用户界面元素以允许用户选择运行手册。选择运行手册可以导致显示与和运行手册的步骤对应的可独立执行的操作相关联的一个或多个用户界面元素。
虽然图2至图4例示了用于基于系统拓扑和检测到的事件的属性来选择要呈现以补救检测到的事件的运行手册的示例操作,但是一个或多个实施例组合图2至图4的元素来选择要呈现以补救检测到的事件的运行手册。例如,一个或多个实施例包括基于以下的任何组合来选择要呈现以补救事件的运行手册:(a)与和检测到的事件相关联的系统相关联的拓扑和候选拓扑的相似性、(b)与候选运行手册的操作相关联的拓扑组件和与检测到的事件相关联的拓扑的相似性,以及(c)检测到的事件的相似性和与特定运行手册相关联的事件的相似性。
6.预览运行手册操作以推荐候选运行手册
图5例示了根据一个或多个实施例的用于基于运行手册操作的结果与事件的补救的相关性来推荐候选运行手册的示例操作集。图2中所示的一个或多个操作可以被修改、重新布置或完全省略。因而,图5中所示的特定操作顺序不应当被解释为限制一个或多个实施例的范围。
系统可以包括一个或多个监视设备和监视应用。系统通过监视设备和/或应用检测与被监视的系统相关联的事件(操作502)。例如,系统可以识别与监视应用相关联的事件日志中的值或事件。事件日志可以识别:传感器值、数据吞吐量值、数据存储值、应用状态(例如,“OK”和“无响应”)以及访问事件,诸如识别来自实体的访问应用或设备的请求。根据一个示例实施例,系统识别在正确操作状态的阈值之外的异常传感器值或异常应用状态。根据另一个示例实施例,系统检测来自未被授权访问系统组件的实体的访问系统组件的访问请求。在一个示例实施例中,系统可以检测未被授权或未被识别的实体的成功访问尝试。
根据一个或多个实施例,检测事件包括分析由监视传感器数据和其它系统数据的机器学习模型生成的预测。根据一个或多个替代实施例,检测事件包括分析用户生成的事件条目,诸如由一个用户生成以向一个或多个附加用户(诸如为维护系统而训练的技术人员)通知异常的“工单”。工单可以基于用户投诉(例如,“计算机不工作”)。可替代地,工单可以基于系统检测到的数据(例如,监视组件的传感器指示该组件正在值的阈值范围之外操作)。根据一个或多个实施例,检测事件包括将日志条目与已知或预测的异常进行比较。例如,可以基于由应用或设备生成的日志条目来检测到应用或设备的登录失败。系统可以分析日志条目,基于日志条目识别事件(例如,登录失败),并且收集与该事件相关联的系统元数据。系统元数据可以包括相关的日志条目(例如,源自同一设备的先前登录失败)、用户信息、应用信息、设备信息、通信协议和安全协议。
系统识别候选运行手册(操作504)。候选运行手册可以从一组存储的运行手册当中选择。例如,系统可以维护与和系统中的事件相关联的不同例程进程相关联的数十、数百或数千个运行手册。根据一个实施例,系统识别与事件或系统拓扑相关联的属性以识别运行手册。例如,系统可以识别与事件相关联的名称,诸如操作者录入的用于报告事件的名称。可替代地,系统可以识别系统拓扑中与事件相关联的系统组件。例如,如果事件包括组件的特定状态,那么候选运行手册可以与该组件或系统拓扑中的另一个组件相关联。
根据一个或多个实施例,系统收集与事件相关联的元数据。系统可以基于收集的元数据来识别候选运行手册。例如,由系统收集的元数据可以包括与事件关联的用户的用户ID、与事件相关联的组织名称或租户、时间戳、与事件相关联的一个或多个设备的设备ID、应用信息(诸如应用名称)、应用运行状态(诸如应用是否正确执行、停止或无响应)、事件发生时由应用执行的进程、应用类型、与事件相关联的端口号、与事件相关联的电源、与事件相关联的通信信道的通信信道类型、通信协议、加密类型、数据类型和数据内容(例如,与事件相关联的数据是否与和事件相关联的操作系统(OS)或在OS上运行的应用相关联)。
在呈现诊断和/或补救事件的候选运行手册之前,系统预览候选运行手册的一个或多个操作。系统执行与候选运行手册的步骤相关联的一个或多个操作以获得一组结果(操作506)。一个或多个操作可以是(a)在候选运行手册的步骤中指定的操作,或者(b)在候选运行手册的任何步骤中未指定但提供与候选运行手册的步骤相关联的结果的操作。
例如,候选运行手册可以包括描述“检查数据传输日志”的操作的步骤。系统可以在呈现候选运行手册作为补救事件的推荐之前执行运行手册中指定的操作以检查数据传输日志。系统可以比较数据传输日志中描述的值与预期的值以获得与操作相关联的结果。作为附加或者替代,系统可以执行与候选运行手册的步骤之一相关但是未在候选运行手册的任何步骤中指定的操作。例如,如果候选运行手册包括“检查服务器的数据传输日志”的操作,那么系统可以执行检查服务器与用户终端之间的数据路由设备的状态的操作。系统可以获得检查服务器与用户终端之间的数据路由设备的状态的结果,诸如在检测到的事件期间设备是否正在传输数据或者在检测到的事件期间数据传输是否被中断。
根据一个或多个实施例,基于与检测到的事件相关联的事件数据和与检测到的事件相关联的拓扑数据中的一者或两者,系统从候选运行手册的可独立执行的操作中选择一个或多个操作来执行。例如,如果检测到的事件被指派名称“登录尝试失败”,那么系统可以分析事件数据以识别事件的时间、运行作出登录尝试的应用的服务器的ID以及在服务器上运行的应用。系统可以分析系统拓扑以识别被监视的系统中与运行作出登录尝试的应用的服务器通信的组件。系统可以识别与事件类型“登录尝试失败”相关联的一组候选运行手册。系统可以基于事件数据和拓扑数据来选择要关于候选运行手册中的一个或多个执行的操作。例如,系统可以基于所获得的事件数据来执行与候选运行手册的可独立执行的操作相关联的操作以“检查应用所需的授权级别”。根据另一个示例,系统可以基于所获得的系统拓扑数据来执行与另一个候选运行手册的可独立执行的操作相关联的操作以“检查与服务器通信的网关的状态”。
根据一个或多个实施例,系统基于分析元数据来识别要预览的候选操作。例如,系统可以存储运行手册的每个操作的元数据,该元数据指示特定操作是否有资格被执行以预览操作结果。系统可以基于以下将操作指定为有资格执行以预览运行手册结果:(a)操作本身可以被执行,或者(b)与运行手册操作不同的另一个操作可以被执行以提供对运行手册操作的洞察。可以被执行以预览操作结果的操作的示例是可以由计算机执行而无需用户输入的操作。相比之下,可能没资格预览操作结果的操作的示例是要求用户输入来执行的操作。与运行手册操作相关联的元数据还可以识别可以被执行以预览运行手册操作的一个或多个相关操作。例如,如果操作指导用户检查到服务器的电力连接,那么元数据可以指定计算机可以通过确定该服务器是否正在与另一个服务器主动通信来预览该操作。
根据另一个示例实施例,系统可以基于改变系统的状态的操作的执行来将操作指定为没资格为了预览运行手册操作结果而执行。例如,运行手册操作可以指导用户发起数据备份、恢复备份数据、向服务器发起一系列请求或重置虚拟防火墙。执行预览结果的操作会导致系统状态发生改变。因而,为了获得操作结果的预览的目的,系统可以存储与运行手册操作相关联的元数据,该元数据指示操作没资格执行。
基于所执行的操作的结果,系统确定所执行的操作是否生成令人感兴趣的结果(操作508)。系统使用相关性分数来表示特定操作结果是否令人感兴趣。系统确定候选运行手册的操作与诊断和/或补救检测到的事件的相关性,并向该操作指派对应的相关性分数。根据一个或多个实施例,系统分析与和运行手册相关联的一组一个或多个操作的结果相关联的信息,以计算运行手册的相关性分数。系统可以分析以生成相关性分数的信息的示例包括:被用于执行运行手册中指定的操作的数据集、结果集中包括的数据的类型、操作结果的来源、在操作结果中被分析的软件和/或硬件组件,以及由操作结果识别出的问题的类型是否是在受事件影响的目标组件或环境中检测到的问题的指示。
例如,候选运行手册可以包括描述“检查数据传输日志”的操作的步骤。系统通过将实际值与预期值进行比较来对数据传输日志进行分析,从而获得一组结果。基于比较的结果,系统为候选运行手册指派相关性分数或调整候选运行手册的相关性分数。如果系统确定操作的结果没有提供用于补救检测到的事件的有用结果,那么系统可以降低候选运行手册的相关性分数。例如,如果数据传输日志示出阈值范围内的连续数据传输,那么系统可以确定检查数据传输日志不太可能补救检测到的事件。因而,系统降低相关联的候选运行手册的相关性分数。另一方面,如果系统确定数据传输日志值不在值的预期阈值范围内,那么系统可以增加候选运行手册的相关性分数,指示检查数据传输日志的操作很可能可以补救检测到的事件。系统可以基于与和候选运行手册的步骤相关联的多个操作相关联的多个相关性分数来确定候选运行手册的相关性分数。例如,如果与候选运行手册的步骤相关联的三个操作被确定为与补救事件相关,并且如果与候选运行手册的步骤相关联的一个操作被确定为与补救事件不相关,那么系统可以生成相关性分数0.75(范围从0到1)。
根据另一个示例,如果候选运行手册包括“检查服务器的数据传输日志”的操作,那么系统可以执行检查服务器与用户终端之间的数据路由设备的状态的操作。系统可以获得检查服务器与用户终端之间的数据路由设备的状态的结果,诸如在检测到的事件期间设备是否正在传输数据或者在检测到的事件期间数据传输是否被中断。如果系统确定数据路由设备正在根据预期数据传输速率发送和接收数据,那么系统可以降低候选运行手册的相关性分数,指示检查服务器的数据传输日志不太可能有助于补救检测到的事件。相反,如果系统确定数据路由设备没有根据预期数据传输速率向服务器发送数据和从服务器接收数据,那么系统可以增加候选运行手册的相关性分数,指示检查服务器的数据传输日志很可能可以有助于补救检测到的事件。
系统可以获得预期结果,以与基于先前收集的系统数据、发布的规范、先前执行的运行手册结果和用户提供的预期值的当前生成的结果进行比较。例如,云计算系统可以包括用于监视系统属性的监视平台。监视系统可以识别与预期操作状态对应的操作参数,诸如数据传送速率、带宽利用率、存储器利用率和运行的应用。例如,监视系统可以确定两个服务器之间小于特定值的数据传送速率与预期数据传送范围对应。超过该特定值的数据传送速率可以与异常值对应。根据一个示例实施例,监视平台包括被训练为接收系统度量并生成指示系统度量是在预期范围内还是异常的一个或多个预测的机器学习模型。可替代地,用户可以向特定值或值集合指派标记或标签,指示这些值是异常还是在预期范围内。作为附加或替代,系统可以检测用户先前已经基于检测到异常值的特定集合执行了运行手册以诊断和/或补救事件。
系统可以基于一个操作或多个操作的结果来设置候选运行手册的相关性分数。例如,如果系统执行与候选运行手册的步骤相关联的一个操作,那么系统基于这一个操作的结果设置候选运行手册的相关性分数。可替代地,系统可以组合与候选运行手册的步骤相关联的多个操作的多个相关性分数,以确定整个候选运行手册的综合相关性分数。系统可以为每个操作指派0到1之间的相关性分数。系统可以对与多个操作相关联的相关性分数求平均以确定候选运行手册的相关性分数。可替代地,系统可以向与运行手册步骤相关联的操作的不同相关性分数指派不同的权重,以确定候选运行手册的综合相关性分数。
系统可以基于(a)结果是否不同于预期范围以及(b)结果和与运行手册推荐相关联的目标之间的关系来生成与操作结果相关联的相关性分数。相比于与运行手册推荐的目标不密切相关的操作,系统可以向与推荐运行手册的目标更密切相关的操作指派更高的相关性分数。例如,系统可以识别其中发生检测到的事件的目标组件。系统可以将诊断目标组件中检测到的事件识别为推荐运行手册的目标。换句话说,推荐运行手册的目的是向用户提供很可能诊断和/或补救检测到的事件的运行手册。系统可以分析两个运行手册操作。一个运行手册操作可以针对分析存储在目标组件中的数据。另一个操作可以针对分析存储在系统中未连接到目标组件的另一个组件中的数据。系统可以基于与两个运行手册操作相关联的拓扑数据来确定第一操作比第二操作与运行手册的目标更密切相关。系统可以向与第一操作相关联的结果指派比与第二操作相关联的结果更高的相关性分数。
根据一个或多个实施例,系统基于与检测到的事件相关联的(a)事件数据和(b)拓扑数据中的一者或两者来识别运行手册操作结果与运行手册推荐的目标相关联的密切程度。例如,如果系统确定运行手册推荐的目标是诊断应用崩溃的原因,那么系统可以确定分析与应用崩溃时应用的状态相关的数据的运行手册操作比在距崩溃时间更远的时间分析应用状态的运行手册操作更令人感兴趣。与生成与事件数据更不相关的数据的运行手册操作相比,系统向生成与事件数据更密切相关的数据的运行手册操作指派更高的相关性分数。同样,与分析系统拓扑中远离目标组件的组件的运行手册操作相比,系统向分析在其中发生事件的目标组件的运行手册操作指派更高的相关性分数。
例如,如果系统执行与候选运行手册的步骤相关联的两个操作,那么系统可以基于确定以下各项向第一运行手册操作指派相对低的相关性分数:(a)第一运行手册操作的结果在预期范围内(与低相关性分数对应),并且第一操作与系统拓扑中与目标组件关系不密切的组件相关联(与低相关性分数对应),以及(b)第二操作的结果超出了预期范围(与高相关性分数对应),并且第二操作与系统拓扑中与目标组件密切相关的组件相关联(与高相关性分数对应)。
根据一个或多个实施例,系统可以基于由系统执行的与候选运行手册的一个或多个步骤相关联的操作结果以及以下中的一项或多项来生成相关性分数:(a)检测到的事件和与候选运行手册相关联的事件的相似性,以及(b)与检测到的事件相关联的拓扑和与候选运行手册相关联的拓扑的相似性。根据一个或多个实施例,系统通过收集与检测到的事件相关联的元数据来识别拓扑关系和基于事件的关系。元数据包括例如用户ID、时间、设备ID、应用ID、应用类型、与事件相关联的端口号、与设备相关联的电源、通信信道类型、通信协议、加密类型、数据类型和数据内容(例如,与事件相关联的数据是否与操作系统(OS)或在OS上运行的应用相关联、与事件相关联的数据是否与基于云的环境的特定租户相关联等)。
系统确定与候选运行手册相关联的相关性分数是否超过阈值(操作510)。例如,系统可以将阈值相关性分数设置为0.6,范围从0到1。如果候选运行手册的相关性分数是0.6或更大,那么系统可以确定候选运行手册满足阈值相关性分数。虽然通过示例的方式提供了相关性分数的0到1之间的值范围,但是实施例涵盖任何值范围,诸如1-10之间、0-100之间、A-E之间或任何其它值范围。可替代地,相关性分数可以是二元的,要么0要么1,而不是值范围。
根据一个或多个实施例,系统针对一组候选运行手册中的每个运行手册重复操作504-510。例如,如果检测到的事件被指派标签“终端断电”,并且如果十个所存储的运行手册与标签“终端断电”相关联,那么系统可以针对这十个存储的运行手册中的每一个重复操作504-510。系统将相关性分数指派给相应的候选运行手册。
基于确定候选运行手册满足相关性阈值,系统呈现用于补救检测到的事件的候选运行手册(操作512)。例如,系统可以在图形用户界面上提供用户界面元素以允许用户选择运行手册。选择运行手册可以导致显示与和运行手册的步骤对应的可独立执行的操作相关联的一个或多个用户界面元素。
根据一个或多个实施例,系统可以识别满足相关性准则的多个候选运行手册。系统可以呈现相关性分数最高的候选运行手册。系统可以基于候选运行手册的相应相关性分数对多个候选运行手册进行排名。系统可以经由GUI呈现预定义数量的候选运行手册以诊断和/或补救事件。系统可以基于候选运行手册的排名来显示排名的候选运行手册。例如,系统可以在显示器上将具有最高相关性分数的候选运行手册显示在具有次高相关性分数的候选运行手册上方的位置处。如果候选运行手册不在预定数量的最高排名候选运行手册当中,那么系统可以避免显示满足阈值相关性的候选运行手册。例如,如果系统确定五个候选运行手册满足阈值相关性,那么系统可以显示具有最高相关性分数的三个候选运行手册作为用于补救事件的推荐。系统可以避免显示其它两个候选运行手册。
根据一个或多个实施例,呈现用于补救事件的候选运行手册可以包括显示关于为什么候选运行手册满足相关性阈值的信息。例如,如上所述,系统可以根据系统执行的与候选运行手册的步骤相关联的操作指示很可能提供与补救检测到的事件相关的信息的结果的程度来显示多个候选运行手册。系统可以经由文本或经由表示候选运行手册的步骤的视觉元素(无文本)来显示候选运行手册中定义的一个或多个步骤很可能提供与补救检测到的事件相关的信息。
7.示例实施例
为了清楚起见,下面描述详细的示例。下面描述的组件和/或操作应当被理解为可能不适用于某些实施例的一个具体示例。因而,下面描述的组件和/或操作不应当被解释为限制任何权利要求的范围。
图6例示了由事件补救平台610监视的被监视的系统601。被监视的系统601包括节点602-506和数据库607。用户终端608和609经由网络访问节点602-606和数据库607。事件补救平台610监视系统601以识别与系统601相关联的事件。
在图6中所示的示例实施例中,事件补救平台610检测登录失败和与服务器的通信丢失的错误。例如,用户可以与用户终端608交互以访问在节点604上运行的应用。节点604可以经由节点602与用户终端608通信。节点602和604可以包括硬件服务器。用户可以尝试登到录节点604上的应用。系统可以检测预定义数量的登录失败,诸如来自用户终端608的三次连续登录失败,并且生成事件通知612。系统在显示屏611上显示检测到的事件613以及所推荐的用于补救事件614和615的运行手册。表示运行手册的用户界面元素614和615可以是用户可选择的元素。选择元素614或615可以使系统修改所显示的数据以包括相应运行手册614或615的步骤。
此外,在图6中所示的示例实施例中,操作者可以生成指示与由节点606表示的服务器的通信丢失的工单。例如,尝试经由节点606访问数据库607的操作者可以确定请求没有被应答。基于操作者生成工单,系统生成事件通知616。系统在显示屏611上显示检测到的事件617以及所推荐的用于补救事件618和619的运行手册。表示运行手册的用户界面元素618和619可以是用户可选择的元素。选择元素618或619可以使系统修改所显示的数据以包括相应运行手册618或619的步骤。
系统基于确定事件和/或与该事件相关联的拓扑中的一者或两者满足与候选历史事件和/或候选拓扑中的一者或两者的阈值相似性来识别要显示的运行手册614、615、618和619。例如,系统可以识别用户尝试在节点604中访问的操作系统和应用的类型。系统可以基于确定运行手册与包括相同OS和相同应用以及与节点602相似的中间节点的拓扑相关联来推荐运行手册614。基于确定与运行手册615相关联的拓扑包括相同的OS和应用,但是与节点602的类型不同类型的中间节点,系统可以推荐具有较低相似性值(即,90%)的运行手册615。
系统可以识别与事件617相关联的属性,包括事件发生的时间、提供给节点606的电力的电源规范、节点606的通信端口配置以及通信信道协议。系统可以基于确定运行手册618与包括与节点606相同的端口配置、通信信道协议和电力配置的另一个事件相关联来推荐运行手册618。基于确定事件包括与节点606相同的端口配置和通信信道协议但不同的电力配置,系统可以推荐具有较低相似性值(即,85%)的运行手册619。
在示例实施例中,系统可以存储与数十个不同事件相关联的数百个运行手册。基于检测和显示事件617“与服务器的通信丢失”,系统可以从数百个存储的运行手册中识别与事件类型“与服务器的通信丢失”相关联的十个候选运行手册。
系统可以分析与候选运行手册相关联的事件属性和/或拓扑特性,以识别要推荐哪些运行手册用于诊断和/或补救当前显示的事件。例如,系统可以确定其中四个候选事件的特征在于服务器运行与当前检测到的事件相关联的服务器不同的通信协议。系统还可以确定剩余候选运行手册中的两个涉及不存在于与当前检测到的事件相关联的拓扑中的系统组件。在剩余的四个候选运行手册当中,系统可以确定其中三个候选运行手册满足当前检测到的事件的相似性阈值。系统可以基于跟踪运行手册的成功率的历史数据来将候选运行手册之一识别为在成功补救事件方面具有高有效性评级。因而,系统可以推荐满足相似性阈值并且对于补救当前检测到的事件具有高有效性评级的特定运行手册。
图7例示了由事件补救平台710监视的被监视的系统701。被监视的系统701包括节点702-706和数据库707。用户终端708和709经由网络访问节点702-706和数据库707。事件补救平台710监视系统701以识别与系统701相关联的事件。
在图7中所示的示例实施例中,事件补救平台710检测到服务器的通信丢失的错误。例如,操作者可以生成指示与由节点706表示的服务器的通信丢失的工单。例如,尝试经由节点706访问数据库707的操作者可以确定请求没有被应答。基于操作者生成工单,系统识别与事件类型“与服务器的通信丢失”相关联的候选运行手册714和716。系统可以基于将事件数据和/或拓扑数据和与先前应用运行手册的事件相关联的事件数据和与前应用运行手册先的事件相关联的拓扑中的一者或两者进行比较来识别候选运行手册714和716。例如,系统可以分析与事件类型“与服务器的通信丢失”相关联的事件数据以将服务器识别为运行虚拟机的服务器。系统可以从与事件类型“与服务器的通信丢失”相关联的一组候选运行手册当中识别运行手册714和716,这些运行手册714和716已被应用于其中先前与运行虚拟机的服务器的通信丢失的事件。
运行手册714包括以下步骤,每个步骤与一个或多个可独立执行的操作相关联:步骤A:检查到服务器的电力(715a),步骤B:检查物理端口连接(715b),步骤C:确认状态灯(715c),直到步骤n(715n)。运行手册716包括以下步骤,每个步骤与一个或多个可独立执行的操作相关联:步骤A:检查到服务器的电力(717a),步骤B:检查状态屏幕上的端口状态(717b),步骤C:检查应用许可(717c),直到步骤p(717p)。
在运行手册推荐引擎713生成图形用户界面以推荐用于补救检测到的事件的运行手册714或运行手册716之前,操作执行引擎712执行与步骤715a-315n和717a-717p中的一个或多个步骤相关联的操作。操作执行引擎712执行与运行手册714的步骤715b相关联的操作。操作执行引擎712执行与步骤715b中所指示的检查物理端口连接不同的操作。代替地,操作执行引擎712执行指示步骤715b是否很可能有助于解决识别出的事件的操作。具体而言,操作执行引擎712分析从目标服务器到与目标服务器通信的网关的数据连接。基于确定目标服务器与网关之间的数据传输在阈值范围内,事件补救平台710降低运行手册714的相关性分数(诸如从60/100到50/100),指示步骤715b中检查物理端口连接不太可能有助于解决与服务器的通信故障。
操作执行引擎712还执行由运行手册716的步骤717b指示的操作。操作执行引擎712检查目标服务器的数据端口的端口配置。基于确定端口配置与预期端口配置不匹配,事件补救平台710增加运行手册716的相关性分数(诸如从60/100到75/100),指示在步骤717b中指定的检查状态屏幕上的端口状态可以有助于解决与服务器的通信故障。操作执行引擎712还执行由运行手册716的步骤717c指示的操作。操作执行引擎712检查在目标服务器上运行的应用的应用许可。基于确定应用许可可能限制与外部设备的通信,事件补救平台710增加运行手册716的相关性分数(诸如从75/100到85/100),指示在717c中指定的检查应用许可可以有助于解决与服务器的通信故障。
运行手册推荐引擎713呈现一个或多个运行手册作为补救检测到的事件的推荐。在图7中所示的示例中,运行手册推荐引擎713基于确定相关性分数(85/100)超过阈值相关性分数(60/100)来呈现运行手册716作为补救服务器通信故障的推荐。运行手册推荐引擎713还基于确定相关性分数(85/100)高于任何其它候选运行手册的相关性分数来呈现运行手册716作为补救服务器通信故障的推荐。基于确定运行手册714的相关性分数(60/100)不满足阈值相关性分数(60/100),运行手册推荐引擎713避免将运行手册714呈现为补救服务器通信故障的推荐。
在示例实施例中,系统可以存储与数十个不同事件相关联的数百个运行手册。基于检测到事件“与服务器的通信丢失”,系统可以从数百个存储的运行手册中识别与事件类型“与服务器的通信丢失”相关联的十个候选运行手册。系统可以分析与候选运行手册相关联的事件属性和/或拓扑特性,以识别操作执行引擎712可以为其执行一个或多个操作的候选运行手册的子集。系统分析由操作执行引擎712执行的一个或多个操作生成的结果,以识别运行手册的子集当中哪些运行手册要显示在运行手册选择界面上作为补救检测到的事件的推荐。
图8A和8B例示了用于呈现一个或多个运行手册作为用于补救事件的推荐的图形用户界面(GUI)的详细示例。下面描述的组件和/或操作应当被理解为可能不适用于某些实施例的一个具体示例。因而,下面描述的组件和/或操作不应当被解释为限制任何权利要求的范围。
在图8A中所示的示例实施例中,事件补救平台810包括显示事件817“与服务器的通信丢失”的图形用户界面(GUI)811。可以基于从系统监视平台检测到在度量值的阈值范围之外的度量值来显示事件。可替代地,可以基于用户生成“工单”来显示事件。例如,用户可能经历与服务器的通信丢失的情况,并且可以生成工单来报告该事件。虽然图8A中例示了一个事件817,但是GUI可以显示任何数量的检测到的事件。
基于用户对与事件817相关联的用户界面元素的选择,事件补救引擎发起选择一个或多个运行手册来推荐用于补救事件的过程。特别地,事件补救引擎810识别一组候选运行手册。事件补救引擎810执行与候选运行手册的一个或多个步骤相关联的一个或多个子操作。基于结果,事件补救引擎810确定是否推荐候选运行手册来补救事件。
如图8B中所示,基于将运行手册A 818和运行手册B 819识别为具有满足相关性准则的相关性分数,事件补救平台810将界面元素818和819显示为用于执行以补救识别出的事件的推荐。用户可以选择界面元素818来显示用于补救识别出的事件的一组步骤。
8.计算机网络和云网络
在一个或多个实施例中,计算机网络提供一组节点之间的连接性。节点可以是在彼此本地的和/或彼此远离。节点通过一组链路连接。链路的示例包括同轴电缆、非屏蔽双绞线、铜缆、光纤和虚拟链路。
节点子集实现计算机网络。这样的节点的示例包括交换机、路由器、防火墙和网络地址转换器(NAT)。另一个节点子集使用计算机网络。这样的节点(也称为“主机”)可以执行客户端进程和/或服务器进程。客户端进程做出对计算服务(诸如,特定应用的执行和/或特定量的数据的存储)的请求。服务器进程通过执行所请求的服务和/或返回对应的数据来响应。
计算机网络可以是物理网络,包括通过物理链路连接的物理节点。物理节点是任何数字设备。物理节点可以是特定于功能的硬件设备,诸如硬件交换机、硬件路由器、硬件防火墙和硬件NAT。附加地或替代地,物理节点可以是被配置为执行各种虚拟机和/或执行相应功能的应用的通用机器。物理链路是连接两个或更多个物理节点的物理介质。链路的示例包括同轴电缆、非屏蔽绞合电缆、铜缆和光纤。
计算机网络可以是覆盖网络。覆盖网络是在另一个网络(诸如,物理网络)之上实现的逻辑网络。覆盖网络中的每个节点对应于底层网络中的相应节点。因此,覆盖网络中的每个节点与覆盖地址(寻址到覆盖节点)和底层地址(寻址实现覆盖节点的底层节点)两者相关联。覆盖节点可以是数字设备和/或软件进程(诸如虚拟机、应用实例或线程)。连接覆盖节点的链路被实现为通过底层网络的隧道。隧道任一端处的覆盖节点将它们之间的底层多跳路径视为单个逻辑链路。隧道化通过封装和解封装来执行。
在实施例中,客户端可以位于计算机网络的本地和/或远离计算机网络。客户端可以通过其它计算机网络(诸如专用网络或互联网)访问计算机网络。客户端可以使用通信协议(诸如超文本传输协议(HTTP))将请求传送到计算机网络。通过诸如客户端接口(诸如web浏览器)、程序接口或应用编程接口(API)之类的接口来传送请求。
在实施例中,计算机网络提供客户端和网络资源之间的连接。网络资源包括被配置为执行服务器进程的硬件和/或软件。网络资源的示例包括处理器、数据存储装置、虚拟机、容器和/或软件应用。网络资源在多个客户端之间共享。客户端彼此独立地从计算机网络请求计算服务。网络资源按需动态分配给请求和/或客户端。分配给每个请求和/或客户端的网络资源可以基于例如(a)由特定客户端请求的计算服务、(b)由特定租户请求的聚合计算服务和/或(c)计算机网络的所请求的聚合计算服务来扩大或缩小。这种计算机网络可以被称为“云网络”。
在实施例中,服务提供商向一个或多个最终用户提供云网络。云网络可以实现各种服务模型,包括但不限于软件即服务(SaaS)、平台即服务(PaaS)和基础设施即服务(IaaS)。在SaaS中,服务提供商向最终用户提供使用服务提供商的正在网络资源上执行的应用的能力。在PaaS中,服务提供商向最终用户提供将定制应用部署到网络资源上的能力。可以使用由服务提供商支持的编程语言、库、服务和工具来创建定制应用。在IaaS中,服务提供商向最终用户提供供应由网络资源提供的处理、存储、网络和其它基本计算资源的能力。可以在网络资源上部署任何任意应用,包括操作系统。
在实施例中,计算机网络可以实现各种部署模型,包括但不限于私有云、公共云和混合云。在私有云中,网络资源被供应给一个或多个实体的特定组独占使用(如本文所使用的术语“实体”是指企业、组织、个人或其它实体)。网络资源可以在特定实体组的处所本地和/或远离特定实体组的处所。在公共云中,云资源被供应给彼此独立的多个实体(也称为“租户”或“客户”)。计算机网络及其网络资源由与不同租户对应的客户端访问。这样的计算机网络可以被称为“多租户计算机网络”。几个租户可以在不同时间和/或相同时间使用相同的特定网络资源。网络资源可以在租户的处所本地和/或远离租户的处所。在混合云中,计算机网络包括私有云和公共云。私有云和公共云之间的接口允许数据和应用的可移植性。存储在私有云处的数据和存储在公共云处的数据可以通过接口交换。在私有云处实现的应用和在公共云处实现的应用可能具有彼此依赖性。可以通过接口执行从私有云处的应用到公共云处的应用(反之亦然)的调用。
在实施例中,多租户计算机网络的租户彼此独立。例如,一个租户的业务或操作可以与另一个租户的业务或操作分离。不同的租户可能对计算机网络具有不同的网络要求。网络要求的示例包括处理速度、数据存储量、安全要求、性能要求、吞吐量要求、时延要求、弹性要求、服务质量(QoS)要求、租户隔离和/或一致性。相同计算机网络可能需要实现由不同租户所要求的不同网络要求。
在一个或多个实施例中,在多租户计算机网络中,实现租户隔离以确保不同租户的应用和/或数据彼此不共享。可以使用各种租户隔离方法。
在实施例中,每个租户与租户ID相关联。多租户计算机网络的每个网络资源用租户ID标记。仅当租户和特定网络资源与相同租户ID相关联时,才允许该租户访问特定网络资源。
在实施例中,每个租户与租户ID相关联。由计算机网络实现的每个应用用租户ID标记。附加地或替代地,由计算机网络存储的每个数据结构和/或数据集用租户ID标记。仅当租户和特定应用、数据结构和/或数据集与相同租户ID相关联时,才允许租户访问特定应用、数据结构和/或数据集。
作为示例,由多租户计算机网络实现的每个数据库可以用租户ID标记。只有与对应租户ID相关联的租户才可以访问特定数据库的数据。作为另一个示例,由多租户计算机网络实现的数据库中的每个条目可以用租户ID标记。只有与对应租户ID相关联的租户才可以访问特定条目的数据。但是,多个租户可以共享数据库。
在实施例中,订阅列表指示哪些租户有权访问哪些应用。对于每个应用,存储被授权访问该应用的租户的租户ID列表。仅当租户的租户ID被包含在与特定应用对应的订阅列表中时,才允许该租户访问特定应用。
在实施例中,与不同租户对应的网络资源(诸如数字设备、虚拟机、应用实例和线程)被隔离到由多租户计算机网络维护的特定于租户的覆盖网络。作为示例,来自租户覆盖网络中的任何源设备的数据包可以仅被发送到相同租户覆盖网络内的其它设备。封装隧道用于禁止从租户覆盖网络上的源设备到其它租户覆盖网络中的设备的任何传输。具体而言,从源设备接收的数据包被封装在外部数据包内。外部数据包从第一封装隧道端点(与租户覆盖网络中的源设备通信)发送到第二封装隧道端点(与租户覆盖网络中的目的地设备通信)。第二封装隧道端点对外部数据包进行解封装,以获得由源设备发送的原始数据包。原始数据包从第二封装隧道端点发送到相同特定覆盖网络中的目的地设备。
9.各种各样的;扩展
实施例针对具有一个或多个设备的系统,这一个或多个设备包括硬件处理器并且被配置为执行本文描述的和/或以下权利要求中任一项所述的任何操作。
在实施例中,非暂态计算机可读存储介质包括指令,所述指令当由一个或多个硬件处理器执行时使得执行本文描述的和/或权利要求中任一项所述的任何操作。
根据一个或多个实施例,可以使用本文描述的特征和功能的任何组合。在前面的说明书中,已经参考因实现而异的许多具体细节描述了实施例。因此,说明书和附图应当被认为是说明性的而不是限制性的。本发明的范围的唯一且排他的指标以及申请人预期作为本发明的范围的内容是从本申请中发出的权利要求集合的字面和等同范围,以这种权利要求发出的具体形式,包括任何后续的更正。
10.硬件概述
根据一个实施例,本文描述的技术由一个或多个专用计算设备来实现。专用计算设备可以是硬连线的以执行本技术,或者可以包括被永久性地编程以执行本技术的数字电子设备,诸如一个或多个专用集成电路(ASIC)、现场可编程门阵列(FPGA)或网络处理单元(NPU),或者可以包括被编程为根据固件、存储器、其它存储装置或组合中的程序指令执行本技术的一个或多个通用硬件处理器。这种专用计算设备还可以将定制的硬连线逻辑、ASIC、FPGA或NPU与定制的编程组合来实现本技术。专用计算设备可以是台式计算机系统、便携式计算机系统、手持式设备、联网设备或结合硬连线和/或程序逻辑来实现技术的任何其它设备。
例如,图9是图示可以在其上实现本发明的实施例的计算机系统900的框图。计算机系统900包括总线902或用于传送信息的其它通信机制以及与总线902耦合用于处理信息的硬件处理器904。硬件处理器904可以是例如通用微处理器。
计算机系统900还包括耦合到总线902用于存储信息和要由处理器904执行的指令的主存储器906,诸如随机存取存储器(RAM)或其它动态存储设备。主存储器906也可以用于存储在要由处理器904执行的指令的执行期间的临时变量或其它中间信息。当这种指令被存储在处理器904可访问的非暂态存储介质中时,这种指令使计算机系统900成为被定制用于执行指令中指定的操作的专用机器。
计算机系统900还包括耦合到总线902用于存储静态信息和处理器904的指令的只读存储器(ROM)908或其它静态存储设备。诸如磁盘或光盘之类的存储设备910被提供并且被耦合到总线902,以用于存储信息和指令。
计算机系统900可以经由总线902耦合到用于向计算机用户显示信息的显示器912,诸如阴极射线管(CRT)。包括字母数字键和其它键的输入设备914耦合到总线902,用于将信息和命令选择传送到处理器904。另一种类型的用户输入设备是光标控件916,诸如鼠标、轨迹球或光标方向键,用于向处理器904传送方向信息和命令选择并且用于控制显示器912上的光标移动。这种输入设备典型地具有两个轴(第一轴(例如,x)和第二轴(例如,y))上的两个自由度,以允许设备在平面中指定位置。
计算机系统900可以使用定制的硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑来实现本文描述的技术,所述定制的硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑与计算机系统结合使计算机系统900成为专用机器或将计算机系统900编程为专用机器。根据一个实施例,本文的技术由计算机系统900响应于处理器904执行主存储器906中包含的一条或多条指令的一个或多个序列而执行。这些指令可以从另一个存储介质(诸如存储设备910)读取到主存储器906中。在主存储器906中包含的指令序列的执行使处理器904执行本文描述的处理步骤。在替代实施例中,可以使用硬连线电路系统代替软件指令或与软件指令组合使用。
如本文使用的术语“存储介质”是指存储有使机器以特定方式操作的数据和/或指令的任何非暂态介质。这种存储介质可以包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘或磁盘,诸如存储设备910。易失性介质包括动态存储器,诸如主存储器906。存储介质的常见形式包括例如软盘、柔性盘、硬盘、固态驱动器、磁带或任何其它磁性数据存储介质、CD-ROM、任何其它光学数据存储介质、具有孔模式的任何物理介质、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其它存储器芯片或盒式磁带、内容可寻址存储器(CAM)和三态内容可寻址存储器(TCAM)。
存储介质与传输介质不同但可以与传输介质结合使用。传输介质参与在存储介质之间传递信息。例如,传输介质包括同轴电缆、铜线和光纤,包括包含有总线902的电线。传输介质还可以采取声波或光波的形式,诸如在无线电波和红外线数据通信期间生成的那些。
各种形式的介质可以涉及将一条或多条指令的一个或多个序列携带到处理器904以供执行。例如,指令最初可以在远程计算机的磁盘或固态驱动器上携带。远程计算机可以将指令加载到其动态存储器中,并使用调制解调器通过电话线发送指令。计算机系统900本地的调制解调器可以在电话线上接收数据并使用红外线发射器将数据转换为红外线信号。红外线检测器可以接收红外线信号中携带的数据,并且适当的电路系统可以将数据放置在总线902上。总线902将数据携带到主存储器906,处理器904从主存储器906中检索并执行指令。由主存储器906接收的指令可以可选地在由处理器904执行之前或之后存储在存储设备910上。
计算机系统900还包括耦合到总线902的通信接口918。通信接口918提供耦合到网络链路920的双向数据通信,其中网络链路920连接到本地网络922。例如,通信接口918可以是综合业务数字网络(ISDN)卡、电缆调制解调器、卫星调制解调器、或向对应类型的电话线提供数据通信连接的调制解调器。作为另一个示例,通信接口918可以是提供到兼容的局域网(LAN)的数据通信连接的LAN卡。也可以实现无线链路。在任何这种实现中,通信接口918发送和接收携带表示各种类型信息的数字数据流的电信号、电磁信号或光信号。
网络链路920通常通过一个或多个网络向其它数据设备提供数据通信。例如,网络链路920可以通过本地网络922提供到主计算机924或到由互联网服务提供商(ISP)926操作的数据设备的连接。ISP 926又通过现在通常称为“互联网”928的全球分组数据通信网络提供数据通信服务。本地网络922和互联网928都使用携带数字数据流的电信号、电磁信号或光信号。通过各种网络的信号以及在网络链路920上并且通过通信接口918的信号是传输介质的示例形式,这些信号将数字数据携带到计算机系统900或携带来自计算机系统900的数字数据。
计算机系统900可以通过(一个或多个)网络、网络链路920和通信接口918发送消息和接收数据,包括程序代码。在互联网示例中,服务器930可以通过互联网928、ISP 926、本地网络922和通信接口918传输对于应用程序的所请求代码。
接收到的代码可以在被接收时由处理器904执行,和/或存储在存储设备910或其它非易失性存储装置中以供以后执行。
在前述说明书中,已经参考可以随实现方式而异的许多具体细节描述了本发明的实施例。因而,说明书和附图应当被认为是说明性的而不是限制性的。本发明的范围的唯一且排他的指标以及申请人预期作为本发明的范围的内容是从本申请中发出的权利要求集合的字面和等同范围,以这种权利要求发出的具体形式,包括任何后续的更正。

Claims (14)

1.一种包括指令的非暂态计算机可读介质,所述指令在由一个或多个硬件处理器执行时使得执行包括以下的操作:
识别要补救的事件;
识别用于补救事件的第一候选运行手册,其中第一候选运行手册定义多个可独立执行的操作;
生成与(a)第一候选运行手册的所述多个可独立执行的操作中的一个或多个操作的第一组结果和(b)事件的补救的相关性对应的第一相关性分数;以及
响应于确定第一相关性分数满足阈值准则:呈现第一候选运行手册作为用于补救事件而执行的推荐。
2.如权利要求1所述的非暂态计算机可读介质,其中生成第一相关性分数包括:
获得与第一组结果相关联的信息;以及
基于与第一组结果相关联的信息,确定与(a)第一组结果和(b)事件的补救之间的关系相关联的第一相关性分数。
3.如权利要求2所述的非暂态计算机可读介质,其中与所述多个可独立执行的操作中的一个或多个操作的第一组结果相关联的信息包括以下中的一个或多个:
用于计算第一组结果的第一数据集;
第一组结果中包括的数据的类型;
第一组结果的来源;
第一组结果中包括的细节水平;
在第一组结果中分析的软件和/或硬件组件;以及
由第一组结果识别的问题的类型是否是在受事件影响的目标组件或环境中检测到的问题的指示。
4.如权利要求1所述的非暂态计算机可读介质,其中所述操作还包括:
呈现运行手册选择界面,该运行手册选择界面包括用于选择多个运行手册中的至少一个运行手册以供执行的功能性,
其中响应于在运行手册选择界面上选择表示事件的界面元素而执行识别要补救的事件和识别第一候选运行手册。
5.如权利要求1所述的非暂态计算机可读介质,其中所述操作还包括:
识别用于补救事件的第二候选运行手册;
生成与(a)第二候选运行手册的多个可独立执行的操作中的一个或多个操作的第二组结果和(b)事件的补救的相关性对应的第二相关性分数,
其中响应于确定第一相关性分数大于第二相关性分数,第一候选运行手册被呈现为用于补救事件而执行的推荐,
其中所述操作还包括:
避免呈现第二候选运行手册作为用于补救事件而执行的推荐。
6.如权利要求1所述的非暂态计算机可读介质,其中第一相关性分数是基于以下计算的:
确定第一组结果包括统计显著的度量;以及
确定该统计显著的度量与事件相关。
7.如权利要求1所述的非暂态计算机可读介质,其中所述操作还包括:
收集指定与事件相关联的度量的元数据;
其中生成第一相关性分数包括:
将与事件相关联的度量与第一组结果进行比较;以及
确定第一组结果与度量之间的对应性满足对应性阈值水平。
8.如权利要求1所述的非暂态计算机可读介质,其中所述操作还包括:
识别用于补救事件的多个候选运行手册;
执行分别与所述多个候选运行手册相关联的多个操作以生成相应的多个结果;
分别基于所述多个结果与事件之间的对应性,分别为所述多个候选运行手册生成多个相关性分数;
基于第一相关性分数与相应的所述多个相关性分数的值,对第一候选运行手册和所述多个候选运行手册进行排名;以及
响应于确定第一相关性分数高于相应的所述多个相关性分数,选择第一候选运行手册作为用于补救事件而执行的推荐。
9.如权利要求1所述的非暂态计算机可读介质,其中识别补救事件的第一候选运行手册包括:
将第一候选运行手册的特点与以下至少一个进行比较:(a)与事件相关联的属性,以及(b)与事件相关联的拓扑;以及
响应于确定第一候选运行手册的特点满足与(a)与事件相关联的属性和(b)与事件相关联的拓扑中的至少一个的相似性的阈值水平,选择第一候选运行手册以生成第一相关性分数。
10.如权利要求1所述的非暂态计算机可读介质,其中所述操作还包括:
执行所述多个可独立执行的操作中的所述一个或多个操作以获得第一组结果。
11.如权利要求1所述的非暂态计算机可读介质,其中所述操作还包括:
执行不在所述多个可独立执行的操作中的所述一个或多个操作当中的操作以获得第一组结果。
12.一种方法,包括如权利要求1-11中的任一项所述的操作。
13.一种系统,包括硬件处理器并且被配置为执行如权利要求1-11中的任一项所述的操作。
14.一种系统,包括用于执行如权利要求1-11中的任一项所述的操作的部件。
CN202280068607.6A 2021-08-24 2022-08-05 基于候选运行手册的结果与事件的补救的相关性推荐候选运行手册 Pending CN118119926A (zh)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
US202163236561P 2021-08-24 2021-08-24
US202163236565P 2021-08-24 2021-08-24
US202163236557P 2021-08-24 2021-08-24
US202163236563P 2021-08-24 2021-08-24
US63/236,563 2021-08-24
US63/236,561 2021-08-24
US63/236,557 2021-08-24
US63/236,565 2021-08-24
US202163261832P 2021-09-29 2021-09-29
US63/261,832 2021-09-29
US17/725,122 2022-04-20
US17/725,122 US20230062588A1 (en) 2021-08-24 2022-04-20 Recommending a candidate runbook based on a relevance of the results of the candidate runbook to remediation of an event
PCT/US2022/039635 WO2023027885A1 (en) 2021-08-24 2022-08-05 Recommending a candidate runbook based on a relevance of the results of the candidate runbook to remediation of an event

Publications (1)

Publication Number Publication Date
CN118119926A true CN118119926A (zh) 2024-05-31

Family

ID=85286242

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202280068607.6A Pending CN118119926A (zh) 2021-08-24 2022-08-05 基于候选运行手册的结果与事件的补救的相关性推荐候选运行手册
CN202280068721.9A Pending CN118119928A (zh) 2021-08-24 2022-08-05 协作运行手册执行

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202280068721.9A Pending CN118119928A (zh) 2021-08-24 2022-08-05 协作运行手册执行

Country Status (3)

Country Link
US (5) US11960378B2 (zh)
EP (3) EP4392863A1 (zh)
CN (2) CN118119926A (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11960378B2 (en) 2021-08-24 2024-04-16 Oracle International Corporation Automated runbook operation recommendations
US11960929B2 (en) 2021-08-24 2024-04-16 Oracle International Corporation Automated runbook operation recommendations
US20230261933A1 (en) * 2022-02-14 2023-08-17 Capital One Services, Llc Systems and method for informing incident resolution decision making

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1167760A (en) * 1914-07-23 1916-01-11 Sherman Jones Lineman's tool.
US7284155B2 (en) * 2004-03-29 2007-10-16 Hewlett-Packard Development Company, L.P. Remote software support agent system with electronic documents for troubleshooting
US8713436B2 (en) * 2007-12-28 2014-04-29 International Business Machines Corporation Reusing data in user run book automation
US8533608B1 (en) * 2009-06-29 2013-09-10 Generation E Consulting Run-book automation platform with actionable document
US9361628B2 (en) 2010-04-13 2016-06-07 Dean Stark Interactive video shelving system
US9891971B1 (en) * 2010-06-30 2018-02-13 EMC IP Holding Company LLC Automating the production of runbook workflows
US8756301B2 (en) 2011-05-26 2014-06-17 Monolith Technology Services, Inc. Systems and methods for organic knowledge base runbook automation
US9594597B2 (en) * 2011-10-24 2017-03-14 Plumchoice, Inc. Systems and methods for automated server side brokering of a connection to a remote device
US9164965B2 (en) 2012-09-28 2015-10-20 Oracle International Corporation Interactive topological views of combined hardware and software systems
IN2013MU03242A (zh) * 2013-11-15 2015-07-31 Tata Consultancy Services Ltd
WO2015065356A1 (en) 2013-10-30 2015-05-07 Hewlett-Packard Development Company, L.P. Topology remediation
US9819547B2 (en) 2013-12-31 2017-11-14 Bmc Software, Inc. Server provisioning based on job history analysis
US10120552B2 (en) * 2015-09-25 2018-11-06 International Business Machines Corporation Annotating collaborative content to facilitate mining key content as a runbook
US10379990B2 (en) * 2016-06-29 2019-08-13 Oracle International Corporation Multi-dimensional selective tracing
US10678610B2 (en) * 2018-04-11 2020-06-09 Oracle International Corporation Using and updating topological relationships amongst a set of nodes in event clustering
US10970632B2 (en) * 2018-06-25 2021-04-06 Hcl Technologies Ltd Generating a score for a runbook or a script
US10769043B2 (en) * 2018-06-25 2020-09-08 Hcl Technologies Ltd. System and method for assisting user to resolve a hardware issue and a software issue
US11080121B2 (en) 2018-06-27 2021-08-03 International Business Machines Corporation Generating runbooks for problem events
US10922493B1 (en) * 2018-09-28 2021-02-16 Splunk Inc. Determining a relationship recommendation for a natural language request
US10652109B1 (en) * 2018-10-29 2020-05-12 Dell Products L. P. Providing machine learning assistance for technical support
US10824528B2 (en) * 2018-11-27 2020-11-03 Capital One Services, Llc Techniques and system for optimization driven by dynamic resilience
AU2019275633B2 (en) * 2018-12-06 2022-08-04 Infosys Limited System and method of automated fault correction in a network environment
US11550652B1 (en) * 2019-11-14 2023-01-10 Amazon Technologies, Inc. Integrated remediation system for network-based services
US10866872B1 (en) * 2019-11-18 2020-12-15 Capital One Services, Llc Auto-recovery for software systems
US11550628B2 (en) * 2019-12-18 2023-01-10 Mastercard International Incorporated Performing runbook operations for an application based on a runbook definition
US11561877B2 (en) * 2020-02-25 2023-01-24 Transposit Corporation Interactive electronic documentation for operational activities
US11644951B2 (en) * 2020-04-28 2023-05-09 EMC IP Holding Company LLC Dynamic dashboard of user interface displaying primary object and related objects
US11074512B1 (en) * 2020-05-07 2021-07-27 Dflabs S.P.A. Cybersecurity incident response and security operation system employing playbook generation and parent matching through custom machine learning
US11494718B2 (en) * 2020-09-01 2022-11-08 International Business Machines Corporation Runbook deployment based on confidence evaluation
US11561881B2 (en) * 2021-04-22 2023-01-24 International Business Machines Corporation Out-of-date runbook detection
US20220414571A1 (en) * 2021-06-25 2022-12-29 International Business Machines Corporation Incident management in information technology systems
US20230034173A1 (en) * 2021-07-29 2023-02-02 International Business Machines Corporation Incident resolution
US11960378B2 (en) 2021-08-24 2024-04-16 Oracle International Corporation Automated runbook operation recommendations

Also Published As

Publication number Publication date
US11960378B2 (en) 2024-04-16
US20230062439A1 (en) 2023-03-02
EP4392865A1 (en) 2024-07-03
US20230064625A1 (en) 2023-03-02
EP4392863A1 (en) 2024-07-03
US20230061007A1 (en) 2023-03-02
US20230062588A1 (en) 2023-03-02
US20230065845A1 (en) 2023-03-02
EP4392864A1 (en) 2024-07-03
US11934296B2 (en) 2024-03-19
CN118119928A (zh) 2024-05-31

Similar Documents

Publication Publication Date Title
US10855548B2 (en) Systems and methods for automatically detecting, summarizing, and responding to anomalies
US20210286611A1 (en) Artificial intelligence driven configuration management
US20230075486A1 (en) Systems and methods for multivariate anomaly detection in software monitoring
KR102649215B1 (ko) 예측적 시스템 시정
US10826757B2 (en) Operational analytics in managed networks
EP3451587B1 (en) Creating searchable and global database of user visible process traces
CN118119926A (zh) 基于候选运行手册的结果与事件的补救的相关性推荐候选运行手册
US20240039781A1 (en) Techniques and interfaces for troubleshooting datacenter networks
US11922155B2 (en) Post-upgrade debugging in a remote network management platform
US11635953B2 (en) Proactive notifications for robotic process automation
US20180004623A1 (en) Multi-dimensional selective tracing
US11316756B2 (en) Self-tuning networks using distributed analytics
US20200073781A1 (en) Systems and methods of injecting fault tree analysis data into distributed tracing visualizations
EP3961987A1 (en) Intent-based telemetry collection service
US20220237509A1 (en) Machine learning traceback-enabled decision rationales as models for explainability
US11960929B2 (en) Automated runbook operation recommendations
US20230325294A1 (en) Models for detecting and managing excessive log patterns
CN118119927A (zh) 用于针对检测到的事件推荐运行手册的方法和系统
WO2023027885A1 (en) Recommending a candidate runbook based on a relevance of the results of the candidate runbook to remediation of an event
WO2023027884A1 (en) Method and system for recommending runbooks for detected events
US20230244561A1 (en) Localization of telemetry issues based on logical data flows
US12039355B2 (en) Intent-based telemetry collection service with supported telemetry protocol in a virtualized computing infrastructure
US20240070002A1 (en) Hang detection models and management for heterogenous applications in distributed environments
US20240126677A1 (en) Multi-stage anomaly detection and remediation
WO2023150106A1 (en) Localization of telemetry issues based on logical data flows

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication