CN116755961A - 监控方法、装置、设备和存储介质 - Google Patents
监控方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN116755961A CN116755961A CN202310600589.8A CN202310600589A CN116755961A CN 116755961 A CN116755961 A CN 116755961A CN 202310600589 A CN202310600589 A CN 202310600589A CN 116755961 A CN116755961 A CN 116755961A
- Authority
- CN
- China
- Prior art keywords
- pcie expansion
- expansion device
- pcie
- monitoring
- scanning
- 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
Links
- 238000012544 monitoring process Methods 0.000 title claims abstract description 166
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000009434 installation Methods 0.000 claims abstract description 31
- 238000012806 monitoring device Methods 0.000 claims abstract description 6
- 230000002159 abnormal effect Effects 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 24
- 230000000694 effects Effects 0.000 abstract description 5
- CQIZBIFTOGBKDB-UHFFFAOYSA-N 4-cyclohexyl-1-methyl-3,6-dihydro-2h-pyridine Chemical compound C1N(C)CCC(C2CCCCC2)=C1 CQIZBIFTOGBKDB-UHFFFAOYSA-N 0.000 description 12
- 101100076239 Drosophila melanogaster Mctp gene Proteins 0.000 description 12
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 3
- 241000700605 Viruses Species 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3051—Monitoring 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3089—Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请涉及一种监控方法、装置、设备和存储介质。主要技术方案包括:根据预设周期对多个PCIe扩展设备进行轮询监控;调用扫描函数对各PCIe扩展设备进行扫描操作,得到扫描信息;扫描信息包括PCIe扩展设备扫描数量;将PCIe扩展设备扫描数量与基板管理控制器中PCIe扩展设备安装数量进行比对;在扫描数量等于安装数量时,获取各PCIe扩展设备的监控数据,以及根据监控数据确定各PCIe扩展设备的工作状态。本申请基于得到的扫描信息,获取各PCIe扩展设备的监控数据,以确保BMC能够稳定安全的访问PCIe扩展设备,且不与PCIe扩展设备内部发生冲突,达到提高服务器的整体运行稳定性的效果。
Description
技术领域
本申请涉及数据监控技术领域,特别是涉及一种监控方法、装置、设备和存储介质。
背景技术
随着经济社会的高速发展,我国即将迎来互联网+时代,互联网+时代的来临伴随着服务器产业的迅速崛起,海量数据正以前所未有的增长趋势冲击着各个行业,服务器凭借其优良的性能广泛应用于云计算、大数据处理、网络平台等领域,受到市场的青睐。而BMC(BaseboardManagementController,基板管理控制器)属于独立于服务器系统的一个用于管理和控制的子系统,可以对服务器内各设备进行监控,即可实现对故障状态下PCIeSwtich(PCIe扩展设备)内相关寄存器的监控、故障分析、故障定位以及故障上报等功能。
PCIeSwtich可以提供扩展或聚合能力,允许更多的其他设备通过PCIe总线连接到一个PCIe端口。PCIe(PCI-Express,总线)是一种通用的总线规格,它由Intel所提倡和推广,其目的是取代现有电脑系统内部的总线传输接口,不仅包括显示接口,还囊括了CPU、PCI、HDD、Network等多种应用接口。
目前,在基于BMC实现对PCIeSwtich中寄存器的监控时,主要是通过i2c(Inter-IntegratedCircuit,串行通信总线)直接和PCIeSwtich连接,使得BMC可以直接访问PCIeSwtich中的寄存器,以根据寄存器的内容读取监控数据。
然而,由于PCIeSwtich自身一直处于工作状态,在工作过程中会对寄存器进行控制,而BMC在监控过程中读取寄存器的数据时也会对寄存器进行操作,从而导致对寄存器的访问存在冲突,使得PCIeSwtich工作不稳定,进而影响服务器的整体工作运行状态。
发明内容
基于此,本申请提供了一种监控方法、装置、设备和存储介质,以确保BMC能够稳定安全的访问PCIe扩展设备,且不与PCIe扩展设备内部发生冲突,进而达到提高服务器的整体运行稳定性的效果。
第一方面,提供一种监控方法,该方法包括:
根据预设周期对多个PCIe扩展设备进行轮询监控;
调用扫描函数对各PCIe扩展设备进行扫描操作,得到扫描信息;扫描信息包括PCIe扩展设备扫描数量;
将PCIe扩展设备扫描数量与基板管理控制器中PCIe扩展设备安装数量进行比对;
在扫描数量等于安装数量时,获取各PCIe扩展设备的监控数据,以及根据监控数据确定各PCIe扩展设备的工作状态。
根据本申请实施例中一种可实现的方式,扫描信息还包括各PCIe扩展设备的物理地址;在扫描数量等于安装数量时,获取各PCIe扩展设备的监控数据,包括:
在扫描数量等于安装数量时,将各PCIe扩展设备的物理地址与基板管理控制器中各PCIe扩展设备的硬件地址进行比对;
在各PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址均对应相同时,获取各PCIe扩展设备的监控数据。
根据本申请实施例中一种可实现的方式,该方法还包括:
在其中任意一个或多个PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址均不同时,退出对与各PCIe扩展设备的硬件地址均不同的PCIe扩展设备的监控操作。
根据本申请实施例中一种可实现的方式,该方法还包括:
在扫描数量小于安装数量时,将扫描到的各PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址进行比对,得到比对结果;
根据比对结果确定未被扫描到的PCIe扩展设备,将未被扫描到的PCIe扩展设备的监控数据设置为异常值,以及获取被扫描到的PCIe扩展设备的监控数据。
根据本申请实施例中一种可实现的方式,获取各PCIe扩展设备的监控数据,以及根据监控数据确定各PCIe扩展设备的工作状态,包括:
在各PCIe扩展设备的监控数据均获取成功时,将各监控数据进行记录,并根据记录的监控数据确定各PCIe扩展设备的工作状态;
在其中任意一个或多个PCIe扩展设备的监控数据获取失败时,将获取失败的PCIe扩展设备的监控数据设置为异常值。
根据本申请实施例中一种可实现的方式,调用扫描函数对各PCIe扩展设备进行扫描操作的步骤之前,还包括:
确定当前监控服务器是否处于上电状态;
若处于上电状态,则调用扫描函数对各述PCIe扩展设备进行扫描操作;
若处于未上电状态,则退出当前监控操作,以及将各PCIe扩展设备的监控数据均设置为异常值。
根据本申请实施例中一种可实现的方式,监控数据包括温度数据、版本号数据、端口数数据、各端口链路状态数据、各端口类型数据、各端口速率数据、各端口宽度数据、各端口异常状态数据以及PCIe扩展设备异常计数数据中的任意一个或多个。
第二方面,提供了一种监控装置,该装置包括:
监控模块,用于根据预设周期对多个PCIe扩展设备进行轮询监控;
扫描模块,用于调用扫描函数对各PCIe扩展设备进行扫描操作,得到扫描信息;扫描信息包括PCIe扩展设备扫描数量;
比对模块,用于将PCIe扩展设备扫描数量与基板管理控制器中PCIe扩展设备安装数量进行比对;
确定模块,用于在扫描数量等于安装数量时,获取各PCIe扩展设备的监控数据,以及根据监控数据确定各PCIe扩展设备的工作状态。
第三方面,提供了一种计算机设备,包括:
至少一个处理器;以及
与至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的计算机指令,计算机指令被至少一个处理器执行,以使至少一个处理器能够执行上述第一方面中涉及的方法。
第四方面,提供了一种计算机可读存储介质,其上存储有计算机指令,其特征在于,计算机指令用于使计算机执行上述第一方面中涉及的方法。
根据本申请实施例所提供的技术内容,根据预设周期对多个PCIe扩展设备进行轮询监控;调用扫描函数对各PCIe扩展设备进行扫描操作,得到扫描信息;扫描信息包括PCIe扩展设备扫描数量;将PCIe扩展设备扫描数量与基板管理控制器中PCIe扩展设备安装数量进行比对;在扫描数量等于安装数量时,获取各PCIe扩展设备的监控数据,以及根据监控数据确定各PCIe扩展设备的工作状态。上述操作,基于得到的扫描信息,获取各PCIe扩展设备的监控数据,以确保BMC能够稳定安全的访问PCIe扩展设备,且不与PCIe扩展设备内部发生冲突,进而达到提高服务器的整体运行稳定性的效果。
附图说明
图1为一个实施例中一种监控方法的系统架构图;
图2为一个实施例中一种监控方法的流程示意图;
图3为一个实施例中一种监控方法的优选流程示意图;
图4为一个实施例中一种监控装置的结构框图;
图5为一个实施例中计算机设备的示意性结构图。
具体实施方式
以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
为了方便理解,首先对本申请所适用的系统架构进行描述。本申请提供的一种监控方法,可以应用于如图1所示的系统架构中。该系统架构包括:基板管理控制器-PCIe扩展设备。其中,基板管理控制器可以是BMC(BaseboardManagementController);PCIe扩展设备可以是PCIeSwtich芯片。该系统架构是基于AMI(AdvancedMetering Infrastructure,高级架构)X86的BMC架构平台,在AMI的IPMIMain(IntelligentPlatformManagementInterfaceMain,智能平台管理主接口)进程中开展监控。这里,BMC在IPMIMain进程中进行监控时,可以创建PCIeSwtich芯片监控线程,在该线程中对PCIeSwtich芯片进行监控。
该系统架构中还需要调用提前封装好的监控库(Scrutiny)、连接库(SHIM)以及底层驱动库(MCTP)。Scrutiny库主要用于BMC调用,其提供了PCIeSwtich芯片内部用于监控的接口和方法,在PCIeSwtich芯片监控线程中,可以调用该库接口,用于监控数据的获取;SHIM库可以用于Scrutiny库调用,同时,也可以调用MCTP库,实现与MCTP库的数据通信,由于Scrutiny库在实现中不包含对底层MCTP库驱动,因此,需要利用SHIM库将Scrutiny库和MCTP库连接起来,以实现整体监控数据的通信;MCTP库用于提供硬件接口,可以支持I2c接口和PCI接口两种硬件接口,具体由供应商基于需求确定。需要说明的是,该系统架构通过对多个库进行封装,实现通过PCIeSwtich芯片监控线程向Scrutiny库发送读取监控数据的信息,Scrutiny库将读取监控数据的信息传递至SHIM库,SHIM库再将读取监控数据的信息传递至MCTP库,由MCTP库去调用PCIeSwtich芯片的监控数据,再按原路返回至BMC,实现对PCIeSwtich芯片的监控,以解决PCIeSwtich芯片监控线程直接去读取PCIeSwtich芯片的监控数据对PCIeSwtich芯片造成的干扰的问题。
这里,由于PCI接口需要和PCIe总线连接,因此,对PCIe总线进行简单的介绍,PCIe总线与大多数总线一样,也包括电气属性和协议组成两部分。PCIe总线对于设备的设计采用分层的结构,具体由事务层、数据链路层和物理层组成,各层又都分为发送和接收两大功能块。在发送端,应用程序(A设备)在事务层形成事务层包(TLP——TransactionLayerPackage),储存在发送缓冲器里,等待推向数据链路层。在数据链路层,在TLP包上再串接一些附加信息,形成数据链路层包(DLLP——DataLink LayerPackage)发送至物理层;其中,附加信息是对方接收TLP包时进行错误检查需要用到的;在物理层,对DLLP包进行编码,占用链路中的可用通道,从发送器发送出去。在接收端,实际上是发送端的“逆”过程。如果说发送端是在不断组包,那么,接收端就是不断的拆包,最后提取出有用的数据信息供B设备的应用程序使用,以实现A设备和B设备之间的数据通信。
图2为本申请实施例提供的一种监控方法的流程图,该方法可以由如图1所示系统中的基板管理控制器执行。如图2所示,该方法可以包括以下步骤:
步骤201:根据预设周期对多个PCIe扩展设备进行轮询监控。
这里,预设周期可以设置为1s;PCIe扩展设备可以包括PCIeSwtich芯片,PCIeSwtich芯片可以提供扩展或聚合能力,允许较多的设备连接到一个PCIe端口。且它们可以充当包路由器,可以根据地址或其他路由信息识别给定包需要走哪条路径,是一种PCIe转PCIe的桥。具体地,BMC按照1s周期对PCIeSwtich芯片进行轮询监控。其中,PCIeSwtich芯片可以采用PEX89144和PEX89104这两款。
步骤203:调用扫描函数对各PCIe扩展设备进行扫描操作,得到扫描信息。
其中,扫描函数可以是MCTP协议函数,扫描信息包括PCIeSwtich芯片扫描数量。
这里,调用MCTP协议函数对各PCIeSwtich芯片进行扫描操作,由于MCTP协议自身有一个设备扫描机制,若扫描到PCIeSwtich芯片,就会分配对应的标识符,由于标识符和PCIeSwtich芯片相对应,因此,生成几个标识符就对应有几个PCIeSwtich芯片,进而得到PCIeSwtich芯片扫描数量。
步骤205:将PCIe扩展设备扫描数量与基板管理控制器中PCIe扩展设备安装数量进行比对。
这里,由于基板管理控制器中PCIeSwtich芯片安装数量的信息是提前预置于基板管理控制器中的,因此,可以直接将PCIeSwtich芯片扫描数量与基板管理控制器中PCIeSwtich芯片安装数量进行比对。其中,基板管理控制器中PCIeSwtich芯片安装数量一般设置为4个。
步骤207:在扫描数量等于安装数量时,获取各PCIe扩展设备的监控数据,以及根据监控数据确定各PCIe扩展设备的工作状态。
其中,监控数据按照调用接口包括但不限于PCIeSwtich芯片的温度数据、版本号数据、端口数数据、各端口链路状态数据、各端口类型数据、各端口速率数据、各端口宽度数据、各端口异常状态数据以及PCIeSwtich芯片异常计数数据等。
这里,在PCIeSwtich芯片扫描数量等于基板管理控制器中PCIeSwtich芯片安装数量时,说明当前PCIeSwtich芯片均被扫描到,则可以获取各PCIeSwtich芯片的监控数据,以及根据监控数据确定各PCIeSwtich芯片的工作状态。
可以看出,本申请实施例通过根据预设周期对多个PCIe扩展设备进行轮询监控;调用扫描函数对各PCIe扩展设备进行扫描操作,得到扫描信息;扫描信息包括PCIe扩展设备扫描数量;将PCIe扩展设备扫描数量与基板管理控制器中PCIe扩展设备安装数量进行比对;在扫描数量等于安装数量时,获取各PCIe扩展设备的监控数据,以及根据监控数据确定各PCIe扩展设备的工作状态。上述操作,基于得到的扫描信息,获取各PCIe扩展设备的监控数据,以确保BMC能够稳定安全的访问PCIe扩展设备,且不与PCIe扩展设备内部发生冲突,进而达到提高服务器的整体运行稳定性的效果。
在一种可实现的方式中,在扫描数量等于安装数量时,获取各PCIe扩展设备的监控数据,包括:在扫描数量等于安装数量时,将各PCIe扩展设备的物理地址与基板管理控制器中各PCIe扩展设备的硬件地址进行比对;在各PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址均对应相同时,获取各PCIe扩展设备的监控数据。
其中,扫描信息还包括各PCIe扩展设备的物理地址。
这里,由于MCTP协议自身有一个设备扫描机制,若扫描到PCIeSwtich芯片,就会分配对应的标识符,同时,也会生成对应的物理地址。因此,在PCIeSwtich芯片扫描数量等于基板管理控制器中PCIeSwtich芯片安装数量时,由于PCIeSwtich芯片接口无法明确具体扫描到的PCIeSwtich芯片与实际安装的PCIeSwtich芯片的对应关系,因此,还需要进一步确认,则可以将各PCIeSwtich芯片的物理地址与基板管理控制器中各PCIeSwtich芯片的硬件地址进行比对,以确认扫描到的PCIeSwtich芯片是否是基板管理控制器中对应安装的PCIeSwtich芯片,若各PCIeSwtich芯片的物理地址与各PCIeSwtich芯片的硬件地址均对应相同时,则说明PCIeSwtich芯片扫描正确,进而,可以调用Scrutiny库接口获取各PCIeSwtich芯片的监控数据。
上述操作,通过将各PCIe扩展设备的物理地址与基板管理控制器中各PCIe扩展设备的硬件地址进行比对,以进一步确认扫描到的PCIeSwtich芯片是否是基板管理控制器中对应安装的PCIeSwtich芯片,达到实现对PCIeSwtich芯片的准确监控的效果。
在另一种可实现的方式中,该方法还包括:在其中任意一个或多个PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址均不同时,退出对与各PCIe扩展设备的硬件地址均不同的PCIe扩展设备的监控操作。
这里,在其中任意一个或多个PCIeSwtich芯片的物理地址与各PCIeSwtich芯片的硬件地址均不同时,说明该PCIeSwtich芯片不是当前要进行访问的芯片,则退出对与各PCIe扩展设备的硬件地址均不同的PCIe扩展设备的监控操作。
上述操作,在其中任意一个或多个PCIeSwtich芯片的物理地址与各PCIeSwtich芯片的硬件地址均不同时,则退出对该PCIeSwtich芯片的监控操作,以防止对不是当前要进行访问的芯片造成干扰。
在一个实施例中,该方法还包括:在扫描数量小于安装数量时,将扫描到的各PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址进行比对,得到比对结果;根据比对结果确定未被扫描到的PCIe扩展设备,将未被扫描到的PCIe扩展设备的监控数据设置为异常值,以及获取被扫描到的PCIe扩展设备的监控数据。
这里,在PCIeSwtich芯片扫描数量小于基板管理控制器中PCIeSwtich芯片安装数量时,说明有PCIeSwtich芯片未被扫描到,但是具体哪个PCIeSwtich芯片未被扫描到,还需要将扫描到的各PCIeSwtich芯片的物理地址与各PCIeSwtich芯片的硬件地址进行比对,得到比对结果。比对结果中必然存在没有和PCIeSwtich芯片硬件地址对应上的物理地址,进而可以确定未被扫描到的PCIeSwtich芯片,而该PCIeSwtich芯片未被扫描到,说明它可能是发生了故障,因此,可以将未被扫描到的PCIeSwtich芯片的监控数据设置为异常值,以及获取被扫描到的PCIe扩展设备的监控数据。其中,异常值包括FF值,用于表示当前PCIeSwtich芯片发生异常。
上述操作,在PCIeSwtich芯片扫描数量小于基板管理控制器中PCIeSwtich芯片安装数量时,将扫描到的各PCIeSwtich芯片的物理地址与各PCIeSwtich芯片的硬件地址进行比对,以便于基于比对结果确定各PCIeSwtich芯片的工作状态情况,进而实现对PCIeSwtich芯片的监控。
在一个实施例中,获取各PCIe扩展设备的监控数据,以及根据监控数据确定各PCIe扩展设备的工作状态,包括:在各PCIe扩展设备的监控数据均获取成功时,将各监控数据进行记录,并根据记录的监控数据确定各PCIe扩展设备的工作状态;在其中任意一个或多个PCIe扩展设备的监控数据获取失败时,将获取失败的PCIe扩展设备的监控数据设置为异常值。
这里,获取各PCIeSwtich芯片的监控数据,在各PCIeSwtich芯片的监控数据均获取成功时,可以将各监控数据进行记录,以便于后期工作人员根据记录的监控数据确定各PCIeSwtich芯片的工作状态。需要说明的是,可能也会有获取失败的可能,由于,正常情况下一般是不会获取失败的,之所以获取失败,说明PCIeSwtich芯片可能出现了问题,因此,当其中任意一个或多个PCIeSwtich芯片的监控数据获取失败时,则将获取失败的PCIeSwtich芯片的监控数据设置为异常值,以便于提醒工作人员该PCIeSwtich芯片可能存在故障,同时也可以对scrutiny库重新进行初始化,以便于进行数据的更新。
上述操作,获取各PCIeSwtich芯片的监控数据,若获取成功,则进行记录;若其中任意一个或多个PCIeSwtich芯片的监控数据获取失败,则将其设置为异常值,以便于更为准确的实现对各PCIeSwtich芯片的监控工作。
在一个实施例中,调用扫描函数对各PCIe扩展设备进行扫描操作的步骤之前,还包括:确定当前监控服务器是否处于上电状态;若处于上电状态,则调用扫描函数对各述PCIe扩展设备进行扫描操作;若处于未上电状态,则退出当前监控操作,以及将各PCIe扩展设备的监控数据均设置为异常值。
这里,调用扫描函数对各PCIeSwtich芯片进行扫描操作的步骤之前还可以确定当前监控服务器是否处于上电状态,因为如果是未上电状态的话,那监控操作就没有任何意义了,因此,可以基于JPIO(General-purposeinput/output,输入接口)判断当前监控服务器是否处于上电状态,若JPIO=1,说明当前监控服务器处于上电状态,则调用扫描函数对各PCIeSwtich芯片进行扫描操作;若JPIO=0,说明当前监控服务器处于未上电状态,则退出当前监控操作,以及将各PCIeSwtich芯片的监控数据均设置为异常值。其中,异常值仍可以是FF,由于FF是一个很大的值,因此,可以用来表示PCIeSwtich芯片工作状态异常或者是未监控到。
上述操作,在调用扫描函数对各PCIeSwtich芯片进行扫描操作的步骤之前还需要确定当前监控服务器是否处于上电状态,在当前监控服务器处于上电状态的情况下,才启动对PCIeSwtich芯片的监控操作,以防止浪费网络资源。
结合上述实施例中的实现方式,下面结合图3对本申请实施例提供的一优选的方法流程进行举例描述。如图3所示,该方法可以包括以下步骤:
步骤S301,根据预设周期对多个PCIe扩展设备进行轮询监控。
步骤S302,确定当前监控服务器是否处于上电状态,若处于上电状态,则执行步骤S303;若处于未上电状态,则执行步骤S308。
步骤S303,则调用扫描函数对各PCIe扩展设备进行扫描操作,得到扫描信息;扫描信息包括PCIe扩展设备扫描数量和各PCIe扩展设备的物理地址。
步骤S304,将PCIe扩展设备扫描数量与基板管理控制器中PCIe扩展设备安装数量进行比对,在扫描数量等于安装数量时,执行步骤S305;在扫描数量小于安装数量时,执行步骤S309。
步骤S305,将各PCIe扩展设备的物理地址与基板管理控制器中各PCIe扩展设备的硬件地址进行比对,在各PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址均对应相同时,执行步骤S306;在其中任意一个或多个PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址均不同时,执行步骤S311。
步骤S306,获取各PCIe扩展设备的监控数据,在各PCIe扩展设备的监控数据均获取成功时,执行步骤S307;在其中任意一个或多个PCIe扩展设备的监控数据获取失败时,执行步骤S312。
步骤S307,将各监控数据进行记录,并根据记录的监控数据确定各PCIe扩展设备的工作状态。
步骤S308,则退出当前监控操作,以及将各PCIe扩展设备的监控数据均设置为异常值。
步骤S309,将扫描到的各PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址进行比对,得到比对结果。
步骤S310,根据比对结果确定未被扫描到的PCIe扩展设备,将未被扫描到的PCIe扩展设备的监控数据设置为异常值,以及获取被扫描到的PCIe扩展设备的监控数据,将扫描到的各监控数据进行记录,并根据记录的监控数据确定各PCIe扩展设备的工作状态。
步骤S311,退出对与各PCIe扩展设备的硬件地址均不同的PCIe扩展设备的监控操作。
步骤S312,将获取失败的PCIe扩展设备的监控数据设置为异常值。
应该理解的是,虽然图2-图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本申请中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
上述方法实施例可以应用于多种应用场景,例如可以包括但不限于根据预设周期对多个PCIe扩展设备进行轮询监控的场景。
图4为本申请实施例提供的一种监控装置的结构示意图,该装置可以设置于图1所示系统架构中的基板管理控制器,用以执行如图2-图3中所示的方法流程。如图4所示,该装置可以包括:监控模块401、扫描模块403、比对模块405以及确定模块407。其中各组成模块的主要功能如下:
监控模块401,用于根据预设周期对多个PCIe扩展设备进行轮询监控;
扫描模块403,用于调用扫描函数对各PCIe扩展设备进行扫描操作,得到扫描信息;扫描信息包括PCIe扩展设备扫描数量;
比对模块405,用于将PCIe扩展设备扫描数量与基板管理控制器中PCIe扩展设备安装数量进行比对;
确定模块407,用于在扫描数量等于安装数量时,获取各PCIe扩展设备的监控数据,以及根据监控数据确定各PCIe扩展设备的工作状态。
在一个实施例中,扫描信息还包括各PCIe扩展设备的物理地址,确定模块407,还用于:
在扫描数量等于安装数量时,将各PCIe扩展设备的物理地址与基板管理控制器中各PCIe扩展设备的硬件地址进行比对;
在各PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址均对应相同时,获取各PCIe扩展设备的监控数据。
在一个实施例中,确定模块407,还用于:
在其中任意一个或多个PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址均不同时,退出对与各PCIe扩展设备的硬件地址均不同的PCIe扩展设备的监控操作。
在一个实施例中,该装置还用于:
在扫描数量小于安装数量时,将扫描到的各PCIe扩展设备的物理地址与各PCIe扩展设备的硬件地址进行比对,得到比对结果;
根据比对结果确定未被扫描到的PCIe扩展设备,将未被扫描到的PCIe扩展设备的监控数据设置为异常值,以及获取被扫描到的PCIe扩展设备的监控数据。
在一个实施例中,确定模块407,还用于:
在各PCIe扩展设备的监控数据均获取成功时,将各监控数据进行记录,并根据记录的监控数据确定各PCIe扩展设备的工作状态;
在其中任意一个或多个PCIe扩展设备的监控数据获取失败时,将获取失败的PCIe扩展设备的监控数据设置为异常值。
在一个实施例中,该装置还用于:
确定当前监控服务器是否处于上电状态;
若处于上电状态,则调用扫描函数对各述PCIe扩展设备进行扫描操作;
若处于未上电状态,则退出当前监控操作,以及将各PCIe扩展设备的监控数据均设置为异常值。
在一个实施例中,监控数据包括温度数据、版本号数据、端口数数据、各端口链路状态数据、各端口类型数据、各端口速率数据、各端口宽度数据、各端口异常状态数据以及PCIe扩展设备异常计数数据中的任意一个或多个。
上述各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,本申请实施例中可能会涉及到对用户数据的使用,在实际应用中,可以在符合所在国的适用法律法规要求的情况下(例如用户明确同意,对用户切实通知,用户明确授权等),在适用法律法规允许的范围内在本文描述的方案中使用用户特定的个人数据。
根据本申请的实施例,本申请还提供了一种计算机设备、一种计算机可读存储介质。
如图5所示,是根据本申请实施例的计算机设备的框图。计算机设备旨在表示各种形式的数字计算机或移动装置。其中数字计算机可以包括台式计算机、便携式计算机、工作台、个人数字助理、服务器、大型计算机和其它适合的计算机。移动装置可以包括平板电脑、智能电话、可穿戴式设备等。
如图5所示,设备500包括计算单元501、ROM502、RAM503、总线504以及输入/输出(I/O)接口505,计算单元501、ROM502以及RAM503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
计算单元501可以根据存储在只读存储器(ROM)502中的计算机指令或者从存储单元508加载到随机访问存储器(RAM)503中的计算机指令,来执行本申请方法实施例中的各种处理。计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501可以包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。在一些实施例中,本申请实施例提供的方法可被实现为计算机软件程序,其被有形地包含于计算机可读存储介质,例如存储单元508。
RAM503还可存储设备500操作所需的各种程序和数据。计算机程序的部分或者全部可以经由ROM502和/或通信单元509而被载入和/或安装到设备500上。
设备500中的输入单元506、输出单元507、存储单元508和通信单元509可以连接至I/O接口505。其中,输入单元506可以是诸如键盘、鼠标、触摸屏、麦克风等;输出单元507可以是诸如显示器、扬声器、指示灯等。设备500能够通过通信单元509与其他设备进行信息、数据等的交换。
需要说明的是,该设备还可以包括实现正常运行所必需的其他组件。也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件和/或它们的组合中实现。
用于实施本申请的方法的计算机指令可以采用一个或多个编程语言的任何组合来编写。这些计算机指令可以提供给计算单元501,使得计算机指令当由诸如处理器等计算单元501执行时使执行本申请方法实施例中涉及的各步骤。
本申请提供的计算机可读存储介质可以是有形的介质,其可以包含或存储计算机指令,用以执行本申请方法实施例中涉及的各步骤。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的等形式的存储介质。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (10)
1.一种监控方法,其特征在于,所述方法包括:
根据预设周期对多个PCIe扩展设备进行轮询监控;
调用扫描函数对各所述PCIe扩展设备进行扫描操作,得到扫描信息;所述扫描信息包括PCIe扩展设备扫描数量;
将所述PCIe扩展设备扫描数量与基板管理控制器中所述PCIe扩展设备安装数量进行比对;
在所述扫描数量等于所述安装数量时,获取各所述PCIe扩展设备的监控数据,以及根据所述监控数据确定各所述PCIe扩展设备的工作状态。
2.根据权利要求1所述的方法,其特征在于,所述扫描信息还包括各所述PCIe扩展设备的物理地址;所述在所述扫描数量等于所述安装数量时,获取各所述PCIe扩展设备的监控数据,包括:
在所述扫描数量等于所述安装数量时,将各所述PCIe扩展设备的物理地址与所述基板管理控制器中各所述PCIe扩展设备的硬件地址进行比对;
在各所述PCIe扩展设备的物理地址与各所述PCIe扩展设备的硬件地址均对应相同时,获取各所述PCIe扩展设备的监控数据。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在其中任意一个或多个所述PCIe扩展设备的物理地址与各所述PCIe扩展设备的硬件地址均不同时,退出对与各所述PCIe扩展设备的硬件地址均不同的所述PCIe扩展设备的监控操作。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述扫描数量小于所述安装数量时,将扫描到的各所述PCIe扩展设备的物理地址与各所述PCIe扩展设备的硬件地址进行比对,得到比对结果;
根据比对结果确定未被扫描到的所述PCIe扩展设备,将未被扫描到的所述PCIe扩展设备的监控数据设置为异常值,以及获取被扫描到的所述PCIe扩展设备的监控数据。
5.根据权利要求1所述的方法,其特征在于,所述获取各所述PCIe扩展设备的监控数据,以及根据所述监控数据确定各所述PCIe扩展设备的工作状态,包括:
在各所述PCIe扩展设备的监控数据均获取成功时,将各所述监控数据进行记录,并根据记录的所述监控数据确定各所述PCIe扩展设备的工作状态;
在其中任意一个或多个所述PCIe扩展设备的监控数据获取失败时,将获取失败的所述PCIe扩展设备的监控数据设置为异常值。
6.根据权利要求1所述的方法,其特征在于,所述调用扫描函数对各所述PCIe扩展设备进行扫描操作的步骤之前,还包括:
确定当前监控服务器是否处于上电状态;
若处于上电状态,则调用扫描函数对各述PCIe扩展设备进行扫描操作;
若处于未上电状态,则退出当前监控操作,以及将各所述PCIe扩展设备的监控数据均设置为异常值。
7.根据权利要求1-6任意一项所述的方法,所述监控数据包括温度数据、版本号数据、端口数数据、各端口链路状态数据、各端口类型数据、各端口速率数据、各端口宽度数据、各端口异常状态数据以及PCIe扩展设备异常计数数据中的任意一个或多个。
8.一种监控装置,其特征在于,所述装置包括:
监控模块,用于根据预设周期对多个PCIe扩展设备进行轮询监控;
扫描模块,用于调用扫描函数对各所述PCIe扩展设备进行扫描操作,得到扫描信息;所述扫描信息包括PCIe扩展设备扫描数量;
比对模块,用于将所述PCIe扩展设备扫描数量与基板管理控制器中所述PCIe扩展设备安装数量进行比对;
确定模块,用于在所述扫描数量等于所述安装数量时,获取各所述PCIe扩展设备的监控数据,以及根据所述监控数据确定各所述PCIe扩展设备的工作状态。
9.一种计算机设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机指令,所述计算机指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令用于使计算机执行权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310600589.8A CN116755961A (zh) | 2023-05-25 | 2023-05-25 | 监控方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310600589.8A CN116755961A (zh) | 2023-05-25 | 2023-05-25 | 监控方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116755961A true CN116755961A (zh) | 2023-09-15 |
Family
ID=87959874
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310600589.8A Pending CN116755961A (zh) | 2023-05-25 | 2023-05-25 | 监控方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116755961A (zh) |
-
2023
- 2023-05-25 CN CN202310600589.8A patent/CN116755961A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0825535B1 (en) | A server controller for storing and retrieving sequences of video screens forwarded by a server host computer | |
US20020178404A1 (en) | Method for prioritizing bus errors | |
EP0825536A2 (en) | A server controller configured to snoop and receive a duplicate copy of display data presented to a video controller | |
CN105183575A (zh) | 处理器故障的诊断方法、装置及系统 | |
CN114003445B (zh) | Bmc的i2c监控功能测试方法、系统、终端及存储介质 | |
CN115509978A (zh) | 一种外插设备物理位置确定方法、装置、设备及存储介质 | |
CN115048255A (zh) | 一种自动化测试方法、装置,主机及存储介质 | |
US7925728B2 (en) | Facilitating detection of hardware service actions | |
CN109885420B (zh) | 一种PCIe链路故障的分析方法、BMC及存储介质 | |
WO2023206963A1 (zh) | 一种数据处理方法、系统及相关组件 | |
CN114880266B (zh) | 故障处理的方法、装置、计算机设备和存储介质 | |
CN116755961A (zh) | 监控方法、装置、设备和存储介质 | |
CN116125853A (zh) | 集成电路的安全控制方法、装置、存储介质及电子设备 | |
US20060117226A1 (en) | Data communication system and data communication method | |
CN115333968A (zh) | 具有ncsi功能的网卡批量测试系统及方法 | |
CN103488505A (zh) | 补丁方法、设备及系统 | |
US10795848B2 (en) | Dual way communication method, system, and master device thereof | |
CN111723032B (zh) | 一种中断管控方法及电子设备 | |
CN102331912B (zh) | 一种用于在主机上连接多个硬盘的方法和设备 | |
US11847089B2 (en) | Electronic device and method for sharing data lanes of a network interface device between two or more computing devices | |
CN216014148U (zh) | 一种服务器和服务器背板 | |
CN113064877B (zh) | 一种服务器多级管理单元大数据交互方法及系统 | |
CN115955416B (zh) | 测试upi降带宽的方法、装置、设备及存储介质 | |
WO2024051231A1 (zh) | 一种处理器及检测处理器错误的方法 | |
CN115686896A (zh) | 扩展内存错误处理方法、系统、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |