WO2015043407A1 - Method, system, and apparatus for online service inspection - Google Patents

Method, system, and apparatus for online service inspection Download PDF

Info

Publication number
WO2015043407A1
WO2015043407A1 PCT/CN2014/086773 CN2014086773W WO2015043407A1 WO 2015043407 A1 WO2015043407 A1 WO 2015043407A1 CN 2014086773 W CN2014086773 W CN 2014086773W WO 2015043407 A1 WO2015043407 A1 WO 2015043407A1
Authority
WO
WIPO (PCT)
Prior art keywords
inspection
service
configuration file
agent
updated
Prior art date
Application number
PCT/CN2014/086773
Other languages
French (fr)
Inventor
Xianmu PENG
Ang XU
Jie Wang
Wei Xu
Original Assignee
Tencent Technology (Shenzhen) Company Limited
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 Tencent Technology (Shenzhen) Company Limited filed Critical Tencent Technology (Shenzhen) Company Limited
Publication of WO2015043407A1 publication Critical patent/WO2015043407A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • 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/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5032Generating service level reports

Definitions

  • the present disclosure relates to the technical field of inspection systems, and in particular, to system and method for online service inspections.
  • An existing inspection system generally uses two inspection methods as follows:
  • the first method is a centralized scanning method. That is, a management machine pushes an inspection program containing the inspection item to a service machine periodically, and the management machine remotely executes the inspection program containing the inspection item, and retrieves an execution result of the inspection program.
  • Crontab The software utility Cron is a time-based job scheduler in Unix-like computer operating systems. People who set up and maintain software environments use Cron to schedule jobs (commands or shell scripts) to run periodically at fixed times, dates, or intervals. It typically automates system maintenance or administration at regular intervals. Cron is driven by a Crontab (cron table) file, a configuration file that specifies shell commands to run periodically on a given schedule. The Crontab files are stored where the lists of jobs and other instructions to the Cron daemon are kept. That is, in a service machine, an inspection program for an inspection item is added to a system Crontab, and the system Crontab drives and executes the inspection program for the inspection item regularly, and then reports an execution result of the inspection program.
  • Crontab cron table
  • the first problem is associated with the centralized scanning method:
  • the process requires an inspection program containing inspection items to be pushed down to the service machine, and instructions are executed remotely.
  • abnormal situations may often occur, such as a password error and a network delay, which result in that the instructions fail to be executed remotely.
  • steps in the entire scanning process which may result in that the execution time of the inspection items is insufficiently precise.
  • the second problem is associated with the Crontab driving method:
  • the process of adding an inspection program to the Crontab file of a service machine is cumbersome, and the addition of the inspection program for new or updated inspection items may also bring about some risks to the service machines.
  • the system Crontab may be abnormal and stop working at times causing a failure of service inspection. Overall, this method is not flexible enough, and makes operation and maintenance inconvenient.
  • the third problem is associated with both of the foregoing two methods: Updating an inspection program to include new or revised inspection items is cumbersome. When inspection programs of a batch of service machines need to be updated to a new version, the service inspection program needs to be updated one by one by means of a manual operation. If an update fails at that time because of a network problem or a machine problem, the service inspection program needs to be updated again manually after the problem is resolved.
  • the embodiments of the present disclosure provide methods and systems for providing online service inspection.
  • the online service inspection is performed on service machines (e. g. , servers of various types of online services) by one or more inspection agent running on the service machines.
  • the inspection agent can automatically pull service inspection configuration parameters for various inspection items from a parameter server, and perform the needed inspections in accordance with the service inspection configuration parameters and report the inspection results to their proper destinations (e. g. , a status server) .
  • a status server e.g. a status server
  • a method of providing online service inspection is performed at a service machine (e. g. , service machine xxx, Figures 1-2) with one or more processors and memory.
  • the method includes executing a first service inspection agent at a service machine, the first service inspection agent being configured to execute one or more inspection item programs in accordance with a corresponding inspection configuration file of the first service inspection agent stored at the service machine, and to request an update on the stored inspection configuration file in accordance with an inspection configuration update schedule specified in the stored inspection configuration file; receiving an updated inspection configuration file for the first service inspection agent from the remote server in response to a request from the first service inspection agent to the remote server; and executing, by the first service inspection agent, at least a first inspection item program to inspect a first online service provided by the service machine in accordance with the updated inspection configuration file.
  • a computer system (e. g. , service machine 112 ( Figures 1, 3) , ) includes one or more processors and memory storing one or more programs for execution by the one or more processors, the one or more programs include instructions for performing, or controlling performance of, the operations of any of the methods described herein.
  • a non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which, when executed by a computer system (e. g. , service machine 112 ( Figures 1, 3) with one or more processors, cause the computer system to perform, or control performance of, the operations of any of the methods described herein.
  • a computer system (e. g., service machine 112 ( Figures 1, 3) includes means for performing, or controlling performance of, the operations of any of the methods described herein.
  • FIG. 1 is a block diagram of a server-client environment in accordance with some embodiments.
  • FIG. 2 is a block diagram of a server system (e. g. , a parameter server or a status server, or a combination of both) in accordance with some embodiments.
  • a server system e. g. , a parameter server or a status server, or a combination of both
  • Figure 3 is a block diagram of a service machine in accordance with some embodiments.
  • Figure 4 is a flowchart of an online service inspection method in accordance with some embodiments.
  • Figure 5 is a schematic structural diagram of an online service inspection system in accordance with some embodiments.
  • FIG. 6 is a flowchart of a process in which a service inspection agent performs a download and an update of inspection item in accordance with some embodiments.
  • Figure 7 is a flowchart of a process for running of a status server in accordance with some embodiments.
  • Figures 8A-8B are a flow chart of processes performed by a service inspection agent in accordance with some embodiments.
  • Figure 9 is a schematic structural diagram of a service inspection agent implementing online service inspection in accordance with some embodiments.
  • Figure 10 is a schematic structural diagram of a parameter server implementing online service inspection in accordance with some embodiments.
  • Figure 11 is a schematic structural diagram of a status server implementing online service inspection in accordance with some embodiments.
  • an online service provider provides various online services (e. g. , social networking services, online shopping services, online banking services, etc. ) to users in a client–server environment 100.
  • an online service system 110 communicates with one or more user devices 120 (e. g. , 120-1 to 120-x) to receive user input and data and to provide information and services to the users of the user devices 120.
  • a client-side module 122 e. g., one of client side module 114a-114n
  • a respective user device 120 e. g. , one of user devices 120-1 to 120-x
  • communicates with a corresponding service module 114 e.
  • the online service system 110 includes one or more service machines 112 (e. g. , 112a-112n) , each have one or more service modules 114 and providing one or more online services to the users.
  • the communications between the online service system 110 and the user devices 120 are made through one or more networks 118.
  • Examples of user devices 120 include, but are not limited to, handheld computers, wearable computing devices, personal digital assistants (PDA) , tablet computers, laptop computers, desktop computers, cellular telephones, smart phones, enhanced general packet radio service (EGPRS) mobile phones, media players, navigation devices, game consoles, televisions, remote controls, or a combination of any two or more of these data processing devices or other data processing devices.
  • PDA personal digital assistants
  • ESG enhanced general packet radio service
  • Examples of one or more networks 118 include local area networks (LAN) and wide area networks (WAN) such as the Internet.
  • One or more networks 118 are, optionally, implemented using any known network protocol, including various wired or wireless protocols, such as Ethernet, Universal Serial Bus (USB) , FIREWIRE, Global System for Mobile Communications (GSM) , Enhanced Data GSM Environment (EDGE) , code division multiple access (CDMA) , time division multiple access (TDMA) , Bluetooth, Wi-Fi, voice over Internet Protocol (VoIP) , Wi-MAX, or any other suitable communication protocol.
  • USB Universal Serial Bus
  • FIREWIRE Global System for Mobile Communications
  • GSM Global System for Mobile Communications
  • EDGE Enhanced Data GSM Environment
  • CDMA code division multiple access
  • TDMA time division multiple access
  • Bluetooth Wi-Fi
  • Wi-Fi voice over Internet Protocol
  • Wi-MAX Wi-MAX
  • Online service system 110 is implemented on one or more standalone data processing apparatuses or a distributed network of computers.
  • online service system 110 also employs various virtual devices and/or services of third party service providers (e. g. , third-party cloud service providers) to provide the underlying computing resources and/or infrastructure resources of online service system 110.
  • the online service system 110 includes one or more service machines 112, each service machine includes processors, memory, and one or more service modules 114 for providing a respective online service.
  • Different service machines may work together to provide a single online service, work independently of each other to provide the same online service to different user devices, or work independently of each other to provide different online services to different user devices or to the same user device depending on the requests from the user device (s) .
  • the online service system 110 is maintained by an online service inspection system 102.
  • the online service inspection system 102 performs inspections and collects status data from the service machines 112 of the online service system 110.
  • the online service inspection system 102 includes an agent installation server 104 for installing one or more inspection agents 116 onto each of the service machines 112 in the online service system 110.
  • the inspection agents are software programs (e. g. , scripts or programs) that can perform various types of inspections and status checks on the service machines to collect status data from the service machines regarding the online services provided by the service machines.
  • the inspections can include diagnostic runs to determine whether all processes of the online service modules are running correctly without unnecessary delays or errors, the inspection can also include queries regarding the current load, current latencies, number of users online, data integrity, status and count of different connection types established with the service modules, different client operating systems connected with the service modules, etc.
  • a general-purpose inspection agent can be installed on the service machines 112 first, e. g. , by manual installation, or remote installation by an administrator of the online service inspection system 102. The general-purpose inspection agent can then install one or more other inspection agents on its service machine for specific online service and/or inspection items afterwards without administrative intervention from a human administrator.
  • an agent installation server 104 of the online service inspection system 102 installs the general-purpose inspection agent to each of the one or more service machines through remote procedure execution.
  • each of the one or more inspection agents for different inspection items may be installed on each of the service machines 112 by the agent installation server 104 through remote procedure execution.
  • the agent installation server 104 possesses authority and credentials that can be provided to each of the service machines to gain installation access to the service machines.
  • the inspection agents 116 include the program instructions regarding inspection items that are to be performed at the service machine on which the inspection agents are installed.
  • Each inspection agent can reach out to the parameter server 106 to obtain inspection parameters from the parameter server regarding how to perform an inspection.
  • an inspection agent for determining current network latency for an online chat service can reach out to the parameter server to obtain an inspection frequency parameter (e. g. , an inspection period) , a reporting frequency parameter (e.g. , a reporting period) , a connection type parameter, and operating system parameter for the network latency inspection.
  • an inspection frequency parameter e. g. , an inspection period
  • a reporting frequency parameter e.g. , a reporting period
  • connection type parameter e.g. a connection type parameter
  • operating system parameter for the network latency inspection.
  • the parameter server can provide values indicating that the network latency inspection is to be performed every 10 minutes, and the latency is to be obtained for user devices with WiFi connections, cellular data connections, Ethernet connections, and Bluetooth connections, respectively. Furthermore, the latency data is to be obtained for user devices with iOS, Windows, Android operating systems, respectively.
  • the parameter server 106 can also push updates on the inspection parameters of the inspection items associated with an inspection agent 116. For example, if an administrator of the online service inspection system determines that the latency inspection should be performed less frequently during evenings, and more frequently during the daytime. The administrator can modify the parameters of the inspection agent for latency through a user interface provided by the parameter server 106.
  • the parameter server 106 can push the updated parameter values to the corresponding inspection agents on the service machines 112 immediately. Alternatively, the parameter server 106 can wait until the inspection agents requests the parameter values in accordance with the parameter update schedule specified for the inspection agent program in the inspection configuration file.
  • the inspection agent 116 optionally includes partially defined inspection items, which can take on scripts and plug-in programs which are transmitted to the inspection agent to become fully functional inspection item programs.
  • an inspection item program can include a partially defined inspection item shell which is not executed until the inspection item adds additional executable instructions to it.
  • the program code of the additional inspection items can be pushed to the inspection agent upon request or immediately, and inserted into the list of inspection items that will be performed by the inspection agent.
  • the inspection agent will request parameters for the new inspection items in the same manner as it does for the existing inspection items under its charge.
  • the general-purpose inspection agent takes new inspection items as parameters from the parameter server 106, and can install additional inspection agents for the new inspection items on the service machines on which the general-purpose inspection agent is installed and executed.
  • the general-purpose inspection agent takes new inspection items as parameters from the parameter server 106, and can add the additional inspection items to the corresponding special-purpose inspection agent on the service machines on which the general-purpose inspection agent is installed and executed.
  • the inspection results produced by the inspection agents 116 are provided to the status server 108 of the online service inspection system 102.
  • the inspection results collected from the inspection agents depends on the inspection items performed by the inspection agents.
  • the inspection agent responsible for collection latency data for an online chat service can send inspection results for each inspection period to the status server 108, where the inspection result includes the latency for each type of connections and each type of operating systems.
  • the status server 108 optionally includes programs for analyzing the different inspection result from the service machines, and based on the result of analysis, the status server 108 optionally reports it to an administrator, adjusts load balancing for the different service machines, and/or dispatch a repair agent or restart the service machines that are performing at a sub-optimal level.
  • FIG. 2 is a block diagram illustrating service inspection system 102 in accordance with some embodiments.
  • Service inspection system 102 typically, includes one or more processing units (CPUs) 202, one or more network interfaces 204 (e. g. , including I/O interface to one or more administrative machines and I/O interface to one or more service machines 112) , memory 206, and one or more communication buses 208 for interconnecting these components (sometimes called a chipset) .
  • Memory 206 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid state memory devices; and, optionally, includes non-volatile memory, such as one or more magnetic disk storage devices, one or more optical disk storage devices, one or more flash memory devices, or one or more other non-volatile solid state storage devices. Memory 206, optionally, includes one or more storage devices remotely located from one or more processing units 202. Memory 206, or alternatively the non-volatile memory within memory 206, includes a non-transitory computer readable storage medium. In some implementations, memory 206, or the non-transitory computer readable storage medium of memory 206, stores the following programs, modules, and data structures, or a subset or superset thereof:
  • ⁇ operating system 210 including procedures for handling various basic system services and for performing hardware dependent tasks
  • ⁇ network communication module 212 for connecting service inspection system 102 to other computing devices (e. g. , administrative devices and service machines 112) connected to one or more networks (e. g. , network 118) via one or more network interfaces 204 (wired or wireless) ;
  • ⁇ Online service inspection management module 214 which provides server-side inspection management processing for the online service system 110, includes, but is not limited to:
  • agent installation server 104 (e. g. , an agent installation module serving as the agent installation server) for installing inspection agents onto service machines of the online service system 110;
  • ⁇ parameter server 106 (e. g. , a parameter server module serving as the parameter server) for receiving parameter requests for inspection items from inspection agents 116 installed on service machines 112 of the online service system 110, and providing (e. g. , per request by the inspection agents or proactively) updated parameter values and add new inspection items to the inspection agents 116 installed on service machines 113 of the online service system;
  • ⁇ status server 108 (e. g. , a status server module serving as the status server) for receiving status data such as inspection results and heart beat reports from the inspection agents installed on service machine 112 of the online service system, analyzing the inspection results, and taking appropriate management actions to address problems detected through analyzing the inspection results.
  • the web centralized management interface module 216 provides a user interface for an administrator to specify the desired inspection items for each inspection agent and/or each service machine 112, and desired inspection parameters for each inspection item.
  • the parameter generation module 218 can be part of the parameter server 106, and generates the parameter values to be sent to the inspection agents 116 for each inspection item.
  • Each of the above identified elements may be stored in one or more of the previously mentioned memory devices, and corresponds to a set of instructions for performing a function described above.
  • the above identified modules or programs i. e., sets of instructions
  • memory 206 optionally, stores a subset of the modules and data structures identified above.
  • memory 206 optionally, stores additional modules and data structures not described above.
  • FIG. 3 is a block diagram illustrating a representative service machine 112 in an online service system 110 in accordance with some embodiments.
  • Service machine 112 typically, includes one or more processing units (CPUs) 302, one or more network interfaces 304, memory 306, and one or more communication buses 308 for interconnecting these components (sometimes called a chipset) .
  • Memory 306 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid state memory devices; and, optionally, includes non-volatile memory, such as one or more magnetic disk storage devices, one or more optical disk storage devices, one or more flash memory devices, or one or more other non-volatile solid state storage devices.
  • Memory 306, optionally, includes one or more storage devices remotely located from one or more processing units 302.
  • Memory 306, or alternatively the non-volatile memory within memory 306, includes a non-transitory computer readable storage medium.
  • memory 306, or the non-transitory computer readable storage medium of memory 306, stores the following programs, modules, and data structures, or a subset or superset thereof:
  • ⁇ operating system 316 including procedures for handling various basic system services and for performing hardware dependent tasks
  • ⁇ network communication module 318 for connecting service machines 112 to other computing devices (e. g. , online service inspection system 102 and user service (s) 120) connected to one or more networks 118 via one or more network interfaces 304 (wired or wireless) ;
  • ⁇ service module 114 for providing one or more online services (e. g. , online chat service, online payment service, social networking service, online shopping service, etc. ) to user devices 120.
  • online services e. g. , online chat service, online payment service, social networking service, online shopping service, etc.
  • inspection agents 116 which communicate with the parameter server 106 to obtain new and updated inspection parameters for one or more inspection items to be performed on the service machine 112 regarding one or more online services (or aspects thereof) provided by the service machine 112.
  • the inspection agents include but not limited to:
  • a general-purpose inspection agent 320 for installing additional special-purpose inspection agents based on inspections from the parameter server 106 or agent installation server 104.
  • the agent installation server 104 communicates with the operating system 316 to cause installation of the general-purposes inspection agent 320 on the service machine 112;
  • one or more special-purpose inspection agent 322 for performing different inspection items on different online services in accordance with inspection parameters (e. g. , as contained in an inspection configuration file) obtained from the parameter server 106, and for reporting the inspection results to the status server 108;
  • inspection parameters e. g. , as contained in an inspection configuration file
  • ⁇ other modules for providing the online service inspection functions on the service machine 112 including, for example, download module 324 for downloading parameters from the parameter server 106, inspection execution module 326 for executing the instructions for each inspection item in accordance with the inspection parameters obtained by the inspection agent 322, and heartbeat reporting module 328 for reporting heartbeat and other inspection results of the service machine 112.
  • a respective downloading module 324 can be included as part of the general-purpose inspection agent 320 and each of the special-purpose inspection agents 322.
  • the download module 324 can be shared among the inspection modules installed on the service machine 112.
  • the inspection execution module 326 can be included as part of the general-purpose inspection agent 320 and each of the special-purpose inspection agents 322.
  • the inspection execution module 326 can be shared among the inspection modules installed on the service machine 112.
  • the heartbeat reporting module 328 can be included as part of the general-purpose inspection agent 320 and each of the special-purpose inspection agents 322. In some embodiments, the heartbeat reporting module 328 can be shared among the inspection modules installed on the service machine 112; and
  • client data 330 storing data associated with the user devices and user accounts for the online services provided by the online service system 110.
  • Each of the above identified elements may be stored in one or more of the previously mentioned memory devices, and corresponds to a set of instructions for performing a function described above.
  • the above identified modules or programs i. e., sets of instructions
  • memory 306 optionally, stores a subset of the modules and data structures identified above.
  • memory 306, optionally, stores additional modules and data structures not described above.
  • Figure 4 is a flow chat of an online service inspection method in accordance with some embodiments.
  • a service inspection agent e. g. , service inspection agent 116
  • each service machine e. g. , service machine 112
  • Step 401 A service inspection agent downloads a service inspection configuration file and an inspection item program according to a preset inspection configuration update period and performs an update, where the service inspection configuration file includes an inspection period of each inspection item program.
  • the service inspection agent can be installed by an administrator through remote procedure execution.
  • the service inspection agent can be a script or program that is pushed to the service machine and the service inspection agent is executed by the service machine and continues to run on the service machine.
  • the service inspection agent program includes instructions for obtaining inspection parameters for inspection items (e. g. , check processes, check latency, check network connections, etc. ) .
  • the inspection parameters can specify what inspection items need to be performed, on what kinds of schedule, what kinds of data should be collected, and how the data should be reported, etc.
  • the inspection items for different inspection tasks are scripts or program code for different inspection actions.
  • the different inspection actions takes in the inspection parameters obtained from the parameter server as input, and performs the inspections accordingly.
  • a general-purpose inspection agent can be downloaded and installed on the service machine first, and the general-purpose inspection agent can reach out to the parameter server to determine which special-purpose inspection agents should be downloaded and installed on the service machine.
  • the general-purpose inspection agent can also delete some existing inspection agents based on the input from the parameter server.
  • the general-purpose agent obtains the name and program code of the special-purpose inspection agents from the parameter server as the parameters for its own program code.
  • the preset inspection configuration update period is a parameter for an inspection item performed by the inspection agent.
  • Each program item can have its own preset inspection configuration update period.
  • the parameters for each inspection item e. g. , including the inspection update period
  • the parameter server can also send new inspection items (e. g. , new inspection item programs) to the inspection agent already installed on the service machine. This way, the inspection items and parameters can be changed easily, without requiring reinstallation of the service inspection agents on the service machine.
  • the parameters of the inspection items are included in the service inspection configuration file transmitted from the parameter server to the service inspection agent running on the service machine.
  • the service inspection configuration file identifies the online services that are to be inspected, updated versions of the inspection items (e. g. , e. g. , updated program code for carrying out particular inspection tasks) , and/or updated inspection parameters (e. g. , inspection update period, listing of status data required, listing of reporting requirements, etc. ) for the inspection items to be executed for the identified online services, etc.
  • the service inspection configuration file can be omitted from the response of the parameter server, and a simpler response (e. g. , a short reply with a one-bit flag) can be used to indicate that no update is needed for the service inspection at this time.
  • the parameter server pushes the inspection configuration file to the inspection agent running on the service machine in accordance with requests received from the administrator of the online service inspection system, the request from the status server, or other pre-set conditions.
  • the parameter server sends the inspection configuration file to the inspection agent running on the service machine in accordance with the requests received from the inspection agent.
  • Step 402 The service inspection agent runs a locally saved inspection item program according to the inspection period of each inspection item program in accordance with the parameters values specified in the inspection configuration file stored at the service machine. In some embodiments, the service inspection agent runs the locally saved inspection item program in accordance with other parameters specified in the inspection configuration file.
  • a manner in which the service inspection agent downloads a service inspection configuration file and an inspection item program and performs an update may include: The service inspection agent downloads a service inspection configuration file and performs an update of the inspection parameters and/or inspection program code.
  • the service inspection agent determines whether the service inspection configuration file involves an inspection item program which is not locally saved. If the service inspection configuration file does involve an inspection item program that is not yet locally saved, the service inspection agent downloads and saves the inspection item program, or otherwise, the service inspection agent ends the current download.
  • the new inspection item program may be included in the service inspection configuration file, and no separate download of the new inspection item program is needed.
  • the service inspection agent downloads and saves a service inspection configuration file, where the content of the service inspection configuration file includes, for example: an inspection item program 1 performs inspection once every 10 minutes, and an inspection item program 2 performs inspection once every 15 minutes. Then the service inspection agent further downloads and saves the inspection item program 1 and the inspection item program 2 involved in the service inspection configuration file, if the versions of the inspection item programs 1 and 2 have been updated, or if the inspection item programs 1 and 2 do not exist on the service machine yet.
  • the service inspection agent downloads and saves a new version of the service inspection configuration file (the originally saved service inspection configuration file is automatically deleted by the service inspection agent) , where the content of the new service inspection configuration file includes, for example: the inspection item program 1 performs inspection once every 10 minutes, and the inspection item program 2 performs inspection once every 30 minutes. If the inspection configuration file does not specify new versions of the inspection item programs 1 and 2, and all inspection item programs involved in the service inspection configuration file are locally saved, so the current download is ended after the new service inspection configuration file is downloaded.
  • the service inspection agent downloads and saves a new version of the service inspection configuration file (the originally saved service inspection configuration file is automatically deleted) , where the content of the new service inspection configuration file includes, for example: the inspection item program 1 performs inspection once every 10 minutes, the inspection item program 2 performs inspection once every 30 minutes, and an inspection item program 3 performs inspection once every 20 minutes. Since the inspection item program 3 referred to in the new service inspection configuration file is not locally saved, so service inspection agent downloads the inspection item program 3 from the parameter server or from another source and saved it.
  • the service inspection agent does not need to download an inspection item program repetitively, thereby reducing the burden on a transmission network.
  • the inspection parameters for each inspection item program can be updated in the service inspection configuration file, such that the inspection item programs do not need to be updated repeatedly to accommodate new inspection needs.
  • new inspection item programs can be included in the service inspection configuration file, such that additional inspection tasks can be performed on the service machine without manual installation or remote procedure execution to install theadditional inspection programs on the service machine.
  • the service inspection configuration file may further include a deletion instruction for an inspection item program.
  • the service inspection agent may further delete one or more locally saved inspection item programs according to the deletion instruction for the inspection item programs included in the downloaded service inspection configuration file.
  • the service inspection agent may download a service inspection configuration file and one or more inspection item programs from the parameter server, where, the service inspection configuration file is automatically generated by the parameter server according to an inspection policy that has been manually specified by an administrator.
  • the inspection item programs can be uploaded manually to the parameter server (or the installation server) of the online service inspection system or edited online by an administrator through an interface provided by the parameter server or the installation server, or an I/O interface module of the online service inspection system.
  • the foregoing method may further include: reporting, by the service inspection agent, a report message (e. g. , a heartbeat message) of the service machine to a status server according to a preset reporting period (e. g. , a preset heartbeat reporting period) .
  • a preset reporting period can be one of the parameters specified in the inspection configuration file.
  • different inspection result may have different preset reporting period.
  • the inspection configuration file may establish the reporting period based on the actual results of the inspection. For example, if the result (e. g.
  • the inspection configuration file may also include a parameter regarding which status server addresses to use for sending different inspection results.
  • the status server determines, for each service machine, whether an interval from a current time to the time when a report message (e. g. , a heartbeat message, or other inspection result message) of the service machine was received for the last time is greater than a preset threshold. If so, the status server queries whether the service machine is already offline. If the service machine is not supposed to be offline, the status server sends alarm information for the service machine to a response team (e. g., the administrator of the online service inspection system, an automated response system, an administrator of the service machine, etc. ) . If the service machine is offline as planned, the status server optionally notifies the parameter server to delete the service inspection configuration file and the inspection item program (s) for the service machine. In some embodiments, different preset thresholds are used for different types of inspection messages. For example, a heartbeat message may have a first reporting time threshold, a latency message may have a second reporting time threshold, a load message may have a third reporting time threshold.
  • a heartbeat message may have
  • the online service inspection system uses different preset inspection configuration update periods for different service machines, different inspection agents, and/or different inspection items, such that the communication and processing load on the agent installation server and the parameter server are spread out evenly over time.
  • the parameter server optionally specifies a longer preset inspection configuration update period for each service machine, if a substantial update on the inspection configuration file is to be downloaded to each service machine.
  • the parameter server also optionally adjust the preset inspection configuration update period for a particular service machine, if that service machine has been offline and restarted at a later time, such that the inspection update request from the service machine can fit into a relatively low load period of the parameter server based on the expected inspection update times of all other service machines.
  • the online service inspection system can also use different preset reporting periods and/or different reporting time thresholds for different types of inspection items, different inspection agents, and different service machines, with the goal to spread out the communication and processing load on the status server.
  • the same types of period adjustment setting methods described above with respect to the parameter server can be applied by the status server to even out its load.
  • the online service inspection system may automatically delete the service inspection configuration file and the inspection item program (s) of the service machine in the parameter server, and even if the service machine is online again and used for other services, its service inspection configuration file and inspection item program are not valid any longer.
  • New inspection configuration files and inspection item programs can be obtained for the service machine by its inspection agent (e. g. the general-purpose inspection agent or an existing special-purpose inspection agent if the machine is restarted to provide the same online services as before) .
  • Figure 5 is a schematic structural diagram of a system to which the present technology is applied, including: a service inspection agent 1, a service inspection agent 2, ..., and a service inspection agent n that are deployed in a service machine 1, a service machine 2, ... , and a service machine n (service machines are not shown in Figure 5) , respectively; a parameter server, and a status server. Entities in the system are separately introduced below with specific embodiments.
  • an inspection policy may be configured in the parameter server for each service machine in which service inspection is needed.
  • the inspection policy is mainly to customize behaviors of an inspection item program such as one or more running rules, one or more running parameters, and an inspection period of the inspection item program.
  • the rule is the same as that in Crontab, and designates some other relevant attributes such as inspection types (e. g. , including corresponding alarm types and reporting types) , and IP addresses of one or more servers to which to report.
  • the parameter server generates the service inspection configuration file for each service machine according to the inspection policy.
  • the service inspection configuration file for a particular service inspection agent may include an inspection execution period of each inspection item program that is to run on the service machine on which the service inspection agent has been deployed.
  • the following is an example of one service inspection configuration file, which denotes that an inspection item program MonTcpCons. sh is to be executed once every 10 minutes, and an inspection item program getcpm. sh is to be executed once every 10 minutes.
  • the service inspection configuration file may further include a deletion instruction for one or more of the inspection item programs.
  • an inspection item program may include specific content of service inspection, such as monitoring the maximum number of connections, and reporting the number of online users.
  • the inspection item program may be a binary program or a script.
  • a user may edit an inspection item program online or upload an inspection item program prepared in advance to the parameter server.
  • the inspection policy may be added and modified in the parameter server at any time, which does not affect the running of the service inspection agents at the service machines.
  • the parameter server may further delete a service inspection configuration file and an inspection item program for a service machine according to a notification from the status server.
  • a service inspection agent is deployed in advance in each service machine in which service inspection is needed; the service inspection agent may be deployed by an automatic deployment platform (e. g. , an installation server, or a general-purpose inspection agent already installed on the service machine) , and is run in a backend manner in the service machine; the service inspection agent may be a binary program or script, or may also be a Daemon backend process.
  • an automatic deployment platform e. g. , an installation server, or a general-purpose inspection agent already installed on the service machine
  • the service inspection agent may be a binary program or script, or may also be a Daemon backend process.
  • the service inspection agent is run in a manner similar to Crontab, and the following process is cycled: downloading the latest service inspection configuration file and inspection item program (s) , reading the service inspection configuration file, and running the inspection item program (s) at a respective inspection time point of the inspection item program in accordance with the parameters specified in the service inspection configuration file; and meanwhile, reporting a report message (e. g. , a heartbeat message) according to a preset heartbeat reporting period specified in the service inspection configuration file.
  • a report message e. g. , a heartbeat message
  • the service inspection agent is based on a plug-in type, an inspection item may be configured at any time, and the service inspection configuration file and the inspection item program are actively downloaded from a parameter server, in accordance with some embodiments.
  • the service inspection agent obtains the latest service inspection configuration file and inspection item programs of the service machine from the parameter server and performs an update according to a preset inspection configuration update period.
  • the inspection configuration update period may be configured to perform an update once every 10 minutes, for example.
  • the obtaining behavior is an internally implemented connection mechanism, such as a TCP, UDP, long connection, and short connection.
  • an http-get manner is used; the service inspection agent may conveniently obtain a file in a system command manner such as wget or curl.
  • the service inspection agent runs the inspection item programs. Meanwhile, the service inspection agent further needs to report the report message (e. g.
  • a heartbeat message of the service machine to the status server according to the preset reporting period (e. g. , a heartbeat reporting period) , and the reporting period is configurable.
  • the reporting message e. g., the heartbeat message
  • the reporting message is reported in an http-post manner.
  • Figure 6 is a flowchart of an exemplary process in which a service inspection agent downloads a service inspection configuration file and corresponding inspection item program (s) and performs an update in accordance with some embodiments, including:
  • Step 601 A service inspection agent downloads a service inspection configuration file of a service machine from a parameter server and saves the service inspection configuration file, and deletes a previously locally saved service inspection configuration file.
  • Step 602 The service inspection agent determines whether the currently downloaded service inspection configuration file includes a deletion instruction for an inspection item program, if yes, deletes the locally saved inspection item program, and otherwise, executes Step 603.
  • Step 603 The service inspection agent determines whether the currently downloaded service inspection configuration file involves an inspection item program which is not locally saved, and if yes, downloads the inspection item program from the parameter server and saves the inspection item program.
  • a service inspection configuration profile involves an inspection item program by including an inspection period for the inspection item program in the service inspection configuration file. For example, by specifying a definite (as opposed to undefined) inspection period (and/or reporting period) for a particular inspection item program in the service inspection configuration file, the inspection item program is involved in the service inspection configuration file.
  • the foregoing is an implementation process in which the service inspection agent performs a download and an update for a single iteration.
  • the service inspection agent periodically executes the foregoing Step 601 to Step 603 according to the preset inspection configuration update period.
  • the service inspection agent performs a download and an update periodically, and therefore, when the latest versions of the service inspection configuration file and the inspection item program (s) are generated in the parameter server, the service inspection agent may automatically download the latest versions from the server.
  • the service inspection configuration file may include the deletion instruction (s) for one or more inspection item programs, so that after automatically updating the service inspection configuration file, the service inspection agent can execute the deletion instructions, and automatically delete one or more invalid inspection item programs stored on the service machine. It can be seen that, in this manner of deleting the inspection item programs, individual logins onto the service machines are no longer necessary, while only the deletion instructions need to be generated in the parameter server. In the method, one or more inspection item programs may be deleted at the same time.
  • the service inspection agent may perform inspection on the service machine, and the specific manner is: running the inspection item program in a backend manner according to an inspection period of each inspection item program included in the service inspection configuration file.
  • the inspection item program may automatically report a running result, and specifically, for an inspection item program of an alarm type, may report alarm information to an alarm system when the running result exceeds a designated threshold; for an inspection item program of a reporting type, may report a value to a visualization system; and wait for an instruction from an administrator or the inspection system server.
  • the service inspection agent may further report the report message of the service machine to the status server according to the preset reporting period.
  • a running manner of a status server in accordance with some embodiments is introduced below.
  • Figure 7 is a flowchart of running of a status server according to some embodiments, including:
  • Step 701 For each service machine, a status server determines whether an interval from a current time to the time when a report message (e. g. , a heartbeat message) of the service machine is received for the last time is greater than a preset reporting threshold, and if yes, executes Step 702.
  • a report message e. g. , a heartbeat message
  • Step 702 The status server queries whether the service machine is already offline, if already offline, executes Step 703, and if not offline, executes Step 704.
  • the status server may query a state of the service machine in a configuration system (e. g., the online service inspection system 102) .
  • Step 703 The status server notifies the parameter server to delete the service inspection configuration file and corresponding inspection item programs for the service machine, and ends the current process.
  • Step 704 The status server gives alert information for the service machine, and may notify a relevant person in charge of the alert information.
  • FIGS 8A-8B are a flowchart of an exemplary process 800 for providing online service inspection in accordance with some embodiments.
  • the process 800 is performed at a service machine having one or more processors and memory (e. g. , service machine 112 in Figures 1 and 3) .
  • the service machine executes (802) a first service inspection agent at the service machine, the first service inspection agent being configured to execute one or more inspection item programs in accordance with one or more inspection parameters specified a corresponding inspection configuration file of the first service inspection agent stored at the service machine, and to request an update on the stored inspection configuration file in accordance with an inspection configuration update schedule specified in the stored inspection configuration file.
  • the service machine receives (804) (e. g. , through the first service inspection agent) an updated inspection configuration file for the first service inspection agent from the remote server in response to a request from the first service inspection agent to the remote server.
  • receiving an updated inspection configuration file for the first service inspection agent further includes (806) : receiving an updated inspection configuration update schedule in the updated inspection configuration file. In some embodiments, receiving an updated inspection configuration file for the first service inspection agent further includes (808) : receiving a new inspection item program in the updated inspection configuration file. In some embodiments, receiving an updated inspection configuration file for the first service inspection agent further includes (810) : receiving a deletion inspection in the updated inspection configuration file for deleting at least one inspection item program currently executed by the first service inspection agent in accordance with the stored inspection configuration file. In some embodiments, the service machine deletes (812) (e. g. , through the first service inspection agent) the at least one inspection item program from the service machine in accordance with the deletion instruction.
  • receiving an updated inspection configuration file for the first service inspection agent further includes (814) : receiving a new inspection period or a new reporting period for at least one of the one or more inspection item programs currently executed by the first service inspection agent in accordance with the stored inspection configuration file.
  • the service machine in response to receiving the updated inspection configuration file for the first service inspection agent from the remote server, stores (816) , by the first service agent, the updated inspection configuration file in place of the currently stored inspection configuration file at the service machine.
  • the service machine executes (818) , by the first service inspection agent, at least a first inspection item program to inspect a first online service provided by the service machine in accordance with the updated inspection configuration file.
  • the service machine executes (822) a general-purpose service inspection agent at the service machine, obtains (824) program code for two or more service inspection agents, including the first service inspection agent, in a respective inspection configuration file of the general-purpose inspection agent, and deploys (826) the two or more service inspection agents, including the first service inspection agent, at the service machine through execution of the general-purpose service inspection agent, wherein each of the two or more service inspection agents is configured to execute a respective set of inspection item programs in accordance with a corresponding inspection configuration file of said each service inspection agent.
  • the process 800 is merely illustrative. Other aspects and details of the process performed by the service machine are described in other parts of the present specification. Processes performed by the online service inspection system (including the installation server, the parameter server, and/or the status server) may complement the process performed by the service machine, and would be apparent to a person of ordinary skills in the art based on the descriptions provided herein.
  • an exemplary online service inspection client-server system including a parameter server and more than one service inspection agents deployed in one or more service machines are described herein in accordance with some embodiments.
  • the service inspection agent is used to download a service inspection configuration file and one or more inspection item programs from the parameter server and perform an update according to a preset inspection configuration update period, where the service inspection configuration file includes an inspection period for each inspection item program; and is further used to run one or more locally saved inspection item programs according to the inspection period of each of the inspection item programs.
  • a manner in which the service inspection agent downloads the service inspection configuration file and the inspection item program and performs an update may be: downloading a service inspection configuration file and performing an update, determining whether the service inspection configuration file involves an inspection item program which is not locally saved, if yes, downloading and saving the inspection item program, and otherwise, ending the current download.
  • the service inspection configuration file may further include a deletion instruction for the inspection item program.
  • the service inspection agent may be further used to, after downloading the service inspection configuration file, delete the locally saved inspection item program according to the deletion instruction for the inspection item program included in the service inspection configuration file.
  • the parameter server is used to receive an inspection policy which is manually input, and generate a service inspection configuration file for each service machine according to the inspection policy; and is further used to receive an inspection item program which is uploaded manually or edited online.
  • the foregoing system may further include a status server.
  • the service inspection agent is further used to report the inspection result (e. g., a heartbeat message) of the service machine to the status server according to a preset reporting period (e. g. , a heartbeat reporting period) .
  • a preset reporting period e. g. , a heartbeat reporting period
  • the status server is used to, for each service machine, determine whether an interval from a current time to the time when a report message (e. g. , a heartbeat message) of the service machine is received for the last time is greater than a preset reporting threshold, if yes, query whether the service machine is already offline, if not offline, give alert information for the service machine, and if already offline, notify the parameter server to delete the service inspection configuration file and the inspection item programs for the service machine.
  • a report message e. g. , a heartbeat message
  • the present technology further provides one or more service inspection agents for implementing online service inspection, and the service inspection agents are deployed in a service machine in which service inspection is needed.
  • Figure 9 is an exemplary schematic structural diagram of the service inspection agent in accordance with some embodiments, including: a download module 901, used to download a service inspection configuration file and one or more inspection item programs according to a preset inspection configuration update period and perform an update, where the service inspection configuration file includes an inspection period of each inspection item program; and an inspection executing module 902, used to run each locally saved inspection item program according to the inspection period of the inspection item program.
  • a manner in which the download module 901 downloads the service inspection configuration file and the inspection item program and performs an update may be: downloading a service inspection configuration file and performing an update, determining whether the service inspection configuration file involves an inspection item program which is not locally saved, if yes, downloading and saving the inspection item program, and otherwise, ending the current download.
  • the service inspection configuration file may further include a deletion instruction for the inspection item program.
  • the download module is further used to, after downloading the service inspection configuration file, delete the locally saved inspection item program according to the deletion instruction for the inspection item program included in the service inspection configuration file.
  • the foregoing service inspection agent may further include: a reporting module 903, used to report the inspection result (e. g. , a heartbeat message or other inspection result) of the service machine according to a preset reporting period (e. g. , a heartbeat reporting period) .
  • a reporting module 903 used to report the inspection result (e. g. , a heartbeat message or other inspection result) of the service machine according to a preset reporting period (e. g. , a heartbeat reporting period) .
  • Figure 10 is a schematic structural diagram of the parameter server in accordance with some embodiments, including: a Web centralized management interface module 1001, used to receive an inspection policy which is manually input; and a parameter generating module 1002, used to generate a service inspection configuration file for each service machine according to the inspection policy, where the service inspection configuration file includes an inspection period of each inspection item program; and further used to receive an inspection item program which is uploaded manually or edited online.
  • a Web centralized management interface module 1001 used to receive an inspection policy which is manually input
  • a parameter generating module 1002 used to generate a service inspection configuration file for each service machine according to the inspection policy, where the service inspection configuration file includes an inspection period of each inspection item program; and further used to receive an inspection item program which is uploaded manually or edited online.
  • the foregoing service inspection configuration file may further include a deletion instruction for the inspection item program.
  • the foregoing parameter generating module 1002 may be further used to, when a notification that the service machine is already offline is received, delete the service inspection configuration file and the inspection item program for the service machine.
  • the present technology further provides a status server for implementing online service inspection
  • Figure 11 is a schematic structural diagram of the status server, including: a report receiving (e. g. , a heartbeat receiving) module 1101, used to receive a report message (e. g. , a heartbeat message) of each service machine; and for each service machine, determine whether an interval from a current time to the time when a report message (e. g.
  • a heartbeat message) of the service machine is received for the last time is greater than a preset reporting threshold, and if yes, notify a processing module 1102; and the processing module 1102, used to query whether the service machine is already offline according to the notification of the heartbeat receiving module 1101, if not offline, give alert information for the service machine, and if already offline, delete, according to the notification, a service inspection configuration file and corresponding inspection item programs for the service machine.
  • the service inspection agent is based on a plug-in type, and an inspection item and its attribute may be configured dynamically and in real time.
  • the service inspection configuration file and the inspection item program are managed in a centralized manner, and what is seen is what is obtained, and the inspection period may be modified at any time.
  • the inspection item may be automatically updated without needing manual intervention, and only the service inspection configuration file and the inspection item program need to be delivered to the parameter server, thereby reducing work of the operating personnel.
  • the service machine automatically pulls the service inspection configuration file and the inspection item program, thereby ensuring that the service machine may obtain the latest inspection item at any time, and can also obtain the latest file after the service machine is restarted.
  • the inspection item program may be automatically destroyed without needing manual login to delete its inspection item, and a deletion operation needs to be performed in the parameter server and corresponding deletion instructions will be forwarded to the inspection service agent executing in the service machine.
  • the system can automatically delete the service inspection configuration file and the inspection item programs corresponding to the service machine in the parameter server, and even if the machine is online again used for other services, the inspection item is not valid any longer, and new configuration file and inspection item programs will be downloaded to the service machine again.
  • stages that are not order dependent may be reordered and other stages may be combined or broken out. While some reordering or other groupings are specifically mentioned, others will be obvious to those of ordinary skill in the art and so do not present an exhaustive list of alternatives. Moreover, it should be recognized that the stages could be implemented in hardware, firmware, software or any combination thereof.

Abstract

An online service inspection method, system, and apparatus are disclosed. The method includes: executing a first service inspection agent at a service machine, the first service inspection agent being configured to execute one or more inspection item programs in accordance with a corresponding inspection configuration file of the first service inspection agent stored at the service machine, and to request an update on the stored inspection configuration file in accordance with an inspection configuration update schedule specified in the stored inspection configuration file; receiving an updated inspection configuration file for the first service inspection agent from the remote server in response to a request from the first service inspection agent to the remote server; and executing, by the first service inspection agent, at least a first inspection item program to inspect a first online service provided by the service machine in accordance with the updated inspection configuration file.

Description

METHOD, SYSTEM, AND APPARATUS FOR ONLINE SERVICE INSPECTION
PRIORITY CLAIM AND RELATED APPLICATIONS
This application claims priority to Chinese Patent Application No. 201310461624.9, entitled “Method, System, and Apparatus for Online Service Inspection, ” filed on September 30, 2013, which is incorporated by reference in its entirety.
FIELD OF THE TECHNOLOGY
The present disclosure relates to the technical field of inspection systems, and in particular, to system and method for online service inspections.
BACKGROUND
An existing inspection system generally uses two inspection methods as follows:
The first method is a centralized scanning method. That is, a management machine pushes an inspection program containing the inspection item to a service machine periodically, and the management machine remotely executes the inspection program containing the inspection item, and retrieves an execution result of the inspection program.
The second method is driven by Crontab. The software utility Cron is a time-based job scheduler in Unix-like computer operating systems. People who set up and maintain software environments use Cron to schedule jobs (commands or shell scripts) to run periodically at fixed times, dates, or intervals. It typically automates system maintenance or administration at regular intervals. Cron is driven by a Crontab (cron table) file, a configuration file that specifies shell commands to run periodically on a given schedule. The Crontab files are stored where the lists of jobs and other instructions to the Cron daemon are kept. That is, in a service machine, an inspection program for an inspection item is added to a system Crontab, and the system Crontab drives and executes the inspection program for the inspection item regularly, and then reports an execution result of the inspection program.
The foregoing two methods have the following problems:
The first problem is associated with the centralized scanning method: The process requires an inspection program containing inspection items to be pushed down to the service machine, and instructions are executed remotely. In this process, abnormal situations may often occur, such as a password error and a network delay, which result in that the instructions fail to be executed remotely. In addition, there are many steps in the entire scanning process, which may result in that the execution time of the inspection items is insufficiently precise.
The second problem is associated with the Crontab driving method: The process of adding an inspection program to the Crontab file of a service machine is cumbersome, and the addition of the inspection program for new or updated inspection items may also bring about some risks to the service machines. The system Crontab may be abnormal and stop working at times causing a failure of service inspection. Overall, this method is not flexible enough, and makes operation and maintenance inconvenient.
The third problem is associated with both of the foregoing two methods: Updating an inspection program to include new or revised inspection items is cumbersome. When inspection programs of a batch of service machines need to be updated to a new version, the service inspection program needs to be updated one by one by means of a manual operation. If an update fails at that time because of a network problem or a machine problem, the service inspection program needs to be updated again manually after the problem is resolved.
SUMMARY
The embodiments of the present disclosure provide methods and systems for providing online service inspection. In particular, the online service inspection is performed on service machines (e. g. , servers of various types of online services) by one or more inspection agent running on the service machines. The inspection agent can automatically pull service inspection configuration parameters for various inspection items from a parameter server, and perform the needed inspections in accordance with the service inspection configuration parameters and report the inspection results to their proper destinations (e. g. , a status server) . As such, no remote procedure execution is required, and introduction and update of inspection items are automated without manual intervention.
In some embodiments, a method of providing online service inspection is performed at a service machine (e. g. , service machine xxx, Figures 1-2) with one or more processors and memory. The method includes executing a first service inspection agent at a service machine, the first service inspection agent being configured to execute one or more inspection item programs in accordance with a corresponding inspection configuration file of the first service inspection agent stored at the service machine, and to request an update on the stored inspection configuration file in accordance with an inspection configuration update schedule specified in the stored inspection configuration file; receiving an updated inspection configuration file for the first service inspection agent from the remote server in response to a request from the first service inspection agent to the remote server; and executing, by the first service inspection agent, at least a first inspection item program to inspect a first online service provided by the service machine in accordance with the updated inspection configuration file.
In some embodiments, a computer system (e. g. , service machine 112 (Figures 1, 3) , ) includes one or more processors and memory storing one or more programs for execution by the one or more processors, the one or more programs include instructions for performing, or controlling performance of, the operations of any of the methods described herein. In some embodiments, a non-transitory computer readable storage medium storing one or more programs, the one or more programs comprising instructions, which, when executed by a computer system (e. g. , service machine 112 (Figures 1, 3) with one or more processors, cause the computer system to perform, or control performance of, the operations of any of the methods described herein. In some embodiments, a computer system (e. g., service machine 112 (Figures 1, 3) includes means for performing, or controlling performance of, the operations of any of the methods described herein.
Various advantages of the present application are apparent in light of the descriptions below.
BRIEF DESCRIPTION OF THE DRAWINGS
The aforementioned features and advantages of the disclosed technology as well as additional features and advantages thereof will be more clearly understood hereinafter  as a result of a detailed description of preferred embodiments when taken in conjunction with the drawings.
Figure 1 is a block diagram of a server-client environment in accordance with some embodiments.
Figure 2 is a block diagram of a server system (e. g. , a parameter server or a status server, or a combination of both) in accordance with some embodiments.
Figure 3 is a block diagram of a service machine in accordance with some embodiments.
Figure 4 is a flowchart of an online service inspection method in accordance with some embodiments.
Figure 5 is a schematic structural diagram of an online service inspection system in accordance with some embodiments.
FIG. 6 is a flowchart of a process in which a service inspection agent performs a download and an update of inspection item in accordance with some embodiments.
Figure 7 is a flowchart of a process for running of a status server in accordance with some embodiments.
Figures 8A-8B are a flow chart of processes performed by a service inspection agent in accordance with some embodiments.
Figure 9 is a schematic structural diagram of a service inspection agent implementing online service inspection in accordance with some embodiments.
Figure 10 is a schematic structural diagram of a parameter server implementing online service inspection in accordance with some embodiments.
Figure 11 is a schematic structural diagram of a status server implementing online service inspection in accordance with some embodiments.
Like reference numerals refer to corresponding parts throughout the several views of the drawings.
DESCRIPTION OF EMBODIMENTS
Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings. In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the subject matter presented herein. But it will be apparent to one skilled in the art that the subject matter may be practiced without these specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail so as not to unnecessarily obscure aspects of the embodiments.
As shown in Figure 1, an online service provider provides various online services (e. g. , social networking services, online shopping services, online banking services, etc. ) to users in a client–server environment 100. On the service providing side, an online service system 110 communicates with one or more user devices 120 (e. g. , 120-1 to 120-x) to receive user input and data and to provide information and services to the users of the user devices 120. Specifically, for each online service, a client-side module 122 (e. g., one of client side module 114a-114n) installed on a respective user device 120 (e. g. , one of user devices 120-1 to 120-x) communicates with a corresponding service module 114 (e. g., one of service modules 114a-114n) dedicated for the online service in the online service system 110 to obtain the online service. In some embodiments, the online service system 110 includes one or more service machines 112 (e. g. , 112a-112n) , each have one or more service modules 114 and providing one or more online services to the users. The communications between the online service system 110 and the user devices 120 are made through one or more networks 118.
Examples of user devices 120 include, but are not limited to, handheld computers, wearable computing devices, personal digital assistants (PDA) , tablet computers, laptop computers, desktop computers, cellular telephones, smart phones, enhanced general packet radio service (EGPRS) mobile phones, media players, navigation devices, game consoles, televisions, remote controls, or a combination of any two or more of these data processing devices or other data processing devices.
Examples of one or more networks 118 include local area networks (LAN) and wide area networks (WAN) such as the Internet. One or more networks 118 are, optionally, implemented using any known network protocol, including various wired or wireless protocols, such as Ethernet, Universal Serial Bus (USB) , FIREWIRE, Global System for Mobile Communications (GSM) , Enhanced Data GSM Environment (EDGE) , code division multiple access (CDMA) , time division multiple access (TDMA) , Bluetooth, Wi-Fi, voice over Internet Protocol (VoIP) , Wi-MAX, or any other suitable communication protocol.
Online service system 110 is implemented on one or more standalone data processing apparatuses or a distributed network of computers. In some embodiments, online service system 110 also employs various virtual devices and/or services of third party service providers (e. g. , third-party cloud service providers) to provide the underlying computing resources and/or infrastructure resources of online service system 110. The online service system 110 includes one or more service machines 112, each service machine includes processors, memory, and one or more service modules 114 for providing a respective online service. Different service machines may work together to provide a single online service, work independently of each other to provide the same online service to different user devices, or work independently of each other to provide different online services to different user devices or to the same user device depending on the requests from the user device (s) .
As shown in Figure 1, the online service system 110 is maintained by an online service inspection system 102. The online service inspection system 102 performs inspections and collects status data from the service machines 112 of the online service system 110. In some embodiments, the online service inspection system 102 includes an agent installation server 104 for installing one or more inspection agents 116 onto each of the service machines 112 in the online service system 110. The inspection agents are software programs (e. g. , scripts or programs) that can perform various types of inspections and status checks on the service machines to collect status data from the service machines regarding the online services provided by the service machines. For example, the inspections can include diagnostic runs to determine whether all processes of the online service modules are running correctly without unnecessary delays or errors, the inspection can also include queries regarding the current load, current latencies, number of users online, data integrity, status and count of different connection types established with the service modules, different client  operating systems connected with the service modules, etc. In some embodiments, a general-purpose inspection agent can be installed on the service machines 112 first, e. g. , by manual installation, or remote installation by an administrator of the online service inspection system 102. The general-purpose inspection agent can then install one or more other inspection agents on its service machine for specific online service and/or inspection items afterwards without administrative intervention from a human administrator. In some embodiments, an agent installation server 104 of the online service inspection system 102 installs the general-purpose inspection agent to each of the one or more service machines through remote procedure execution. In some embodiments, each of the one or more inspection agents for different inspection items may be installed on each of the service machines 112 by the agent installation server 104 through remote procedure execution. In some embodiments, the agent installation server 104 possesses authority and credentials that can be provided to each of the service machines to gain installation access to the service machines.
In some embodiments, the inspection agents 116 include the program instructions regarding inspection items that are to be performed at the service machine on which the inspection agents are installed. Each inspection agent can reach out to the parameter server 106 to obtain inspection parameters from the parameter server regarding how to perform an inspection. For example, an inspection agent for determining current network latency for an online chat service can reach out to the parameter server to obtain an inspection frequency parameter (e. g. , an inspection period) , a reporting frequency parameter (e.g. , a reporting period) , a connection type parameter, and operating system parameter for the network latency inspection. When the parameter server 106 receives the parameter request (e. g. , in a request for an updated inspection configuration file) from the inspection agent, the parameter server 106 provides the parameter values for the requested parameters. For example, the parameter server can provide values indicating that the network latency inspection is to be performed every 10 minutes, and the latency is to be obtained for user devices with WiFi connections, cellular data connections, Ethernet connections, and Bluetooth connections, respectively. Furthermore, the latency data is to be obtained for user devices with iOS, Windows, Android operating systems, respectively. In some embodiments, the parameter server 106 can also push updates on the inspection parameters of the inspection items associated with an inspection agent 116. For example, if an administrator of the online service inspection system determines that the latency inspection should be performed less  frequently during evenings, and more frequently during the daytime. The administrator can modify the parameters of the inspection agent for latency through a user interface provided by the parameter server 106. Once the parameter values have been updated by the administrator at the parameter server 106, the parameter server 106 can push the updated parameter values to the corresponding inspection agents on the service machines 112 immediately. Alternatively, the parameter server 106 can wait until the inspection agents requests the parameter values in accordance with the parameter update schedule specified for the inspection agent program in the inspection configuration file. In some embodiments, the inspection agent 116 optionally includes partially defined inspection items, which can take on scripts and plug-in programs which are transmitted to the inspection agent to become fully functional inspection item programs. For example, in some embodiments, an inspection item program can include a partially defined inspection item shell which is not executed until the inspection item adds additional executable instructions to it. When the parameter server 106 receives the additional inspection items from the administrator of the inspection system, the program code of the additional inspection items can be pushed to the inspection agent upon request or immediately, and inserted into the list of inspection items that will be performed by the inspection agent. The inspection agent will request parameters for the new inspection items in the same manner as it does for the existing inspection items under its charge. In some embodiments, the general-purpose inspection agent takes new inspection items as parameters from the parameter server 106, and can install additional inspection agents for the new inspection items on the service machines on which the general-purpose inspection agent is installed and executed. In some embodiments, the general-purpose inspection agent takes new inspection items as parameters from the parameter server 106, and can add the additional inspection items to the corresponding special-purpose inspection agent on the service machines on which the general-purpose inspection agent is installed and executed.
In some embodiments, the inspection results produced by the inspection agents 116 are provided to the status server 108 of the online service inspection system 102. The inspection results collected from the inspection agents depends on the inspection items performed by the inspection agents. For example, the inspection agent responsible for collection latency data for an online chat service can send inspection results for each inspection period to the status server 108, where the inspection result includes the latency for each type of connections and each type of operating systems. The status server 108  optionally includes programs for analyzing the different inspection result from the service machines, and based on the result of analysis, the status server 108 optionally reports it to an administrator, adjusts load balancing for the different service machines, and/or dispatch a repair agent or restart the service machines that are performing at a sub-optimal level.
More details on the online service inspection system 102, including the agent installation server 104, the parameter server 106, and the status server 108 are provided later with respect to Figures 2-11.
Figure 2 is a block diagram illustrating service inspection system 102 in accordance with some embodiments. Service inspection system 102, typically, includes one or more processing units (CPUs) 202, one or more network interfaces 204 (e. g. , including I/O interface to one or more administrative machines and I/O interface to one or more service machines 112) , memory 206, and one or more communication buses 208 for interconnecting these components (sometimes called a chipset) . Memory 206 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid state memory devices; and, optionally, includes non-volatile memory, such as one or more magnetic disk storage devices, one or more optical disk storage devices, one or more flash memory devices, or one or more other non-volatile solid state storage devices. Memory 206, optionally, includes one or more storage devices remotely located from one or more processing units 202. Memory 206, or alternatively the non-volatile memory within memory 206, includes a non-transitory computer readable storage medium. In some implementations, memory 206, or the non-transitory computer readable storage medium of memory 206, stores the following programs, modules, and data structures, or a subset or superset thereof:
operating system 210 including procedures for handling various basic system services and for performing hardware dependent tasks;
network communication module 212 for connecting service inspection system 102 to other computing devices (e. g. , administrative devices and service machines 112) connected to one or more networks (e. g. , network 118) via one or more network interfaces 204 (wired or wireless) ;
●Online service inspection management module 214, which provides server-side inspection management processing for the online service system 110, includes, but is not limited to:
○ agent installation server 104 (e. g. , an agent installation module serving as the agent installation server) for installing inspection agents onto service machines of the online service system 110;
○ parameter server 106 (e. g. , a parameter server module serving as the parameter server) for receiving parameter requests for inspection items from inspection agents 116 installed on service machines 112 of the online service system 110, and providing (e. g. , per request by the inspection agents or proactively) updated parameter values and add new inspection items to the inspection agents 116 installed on service machines 113 of the online service system;
○ status server 108 (e. g. , a status server module serving as the status server) for receiving status data such as inspection results and heart beat reports from the inspection agents installed on service machine 112 of the online service system, analyzing the inspection results, and taking appropriate management actions to address problems detected through analyzing the inspection results.
○ other modules for providing the online service inspection management functions, including but not limited to web centralized management interface module 216, and parameter generation module 218. The web centralized management interface module 216 provides a user interface for an administrator to specify the desired inspection items for each inspection agent and/or each service machine 112, and desired inspection parameters for each inspection item. The parameter generation module 218 can be part of the parameter server 106, and generates the parameter values to be sent to the inspection agents 116 for each inspection item.
Each of the above identified elements may be stored in one or more of the previously mentioned memory devices, and corresponds to a set of instructions for performing a function described above. The above identified modules or programs (i. e., sets of instructions) need not be implemented as separate software programs, procedures, or modules, and thus various subsets of these modules may be combined or otherwise re- arranged in various implementations. In some implementations, memory 206, optionally, stores a subset of the modules and data structures identified above. Furthermore, memory 206, optionally, stores additional modules and data structures not described above.
Figure 3 is a block diagram illustrating a representative service machine 112 in an online service system 110 in accordance with some embodiments. Service machine 112, typically, includes one or more processing units (CPUs) 302, one or more network interfaces 304, memory 306, and one or more communication buses 308 for interconnecting these components (sometimes called a chipset) . Memory 306 includes high-speed random access memory, such as DRAM, SRAM, DDR RAM, or other random access solid state memory devices; and, optionally, includes non-volatile memory, such as one or more magnetic disk storage devices, one or more optical disk storage devices, one or more flash memory devices, or one or more other non-volatile solid state storage devices. Memory 306, optionally, includes one or more storage devices remotely located from one or more processing units 302. Memory 306, or alternatively the non-volatile memory within memory 306, includes a non-transitory computer readable storage medium. In some implementations, memory 306, or the non-transitory computer readable storage medium of memory 306, stores the following programs, modules, and data structures, or a subset or superset thereof: 
operating system 316 including procedures for handling various basic system services and for performing hardware dependent tasks;
network communication module 318 for connecting service machines 112 to other computing devices (e. g. , online service inspection system 102 and user service (s) 120) connected to one or more networks 118 via one or more network interfaces 304 (wired or wireless) ;
service module 114 for providing one or more online services (e. g. , online chat service, online payment service, social networking service, online shopping service, etc. ) to user devices 120.
inspection agents 116, which communicate with the parameter server 106 to obtain new and updated inspection parameters for one or more inspection items to be performed on the service machine 112 regarding one or more online services (or  aspects thereof) provided by the service machine 112. In some embodiments, the inspection agents include but not limited to:
○ a general-purpose inspection agent 320 for installing additional special-purpose inspection agents based on inspections from the parameter server 106 or agent installation server 104. In some embodiments, the agent installation server 104 communicates with the operating system 316 to cause installation of the general-purposes inspection agent 320 on the service machine 112;
○ one or more special-purpose inspection agent 322 for performing different inspection items on different online services in accordance with inspection parameters (e. g. , as contained in an inspection configuration file) obtained from the parameter server 106, and for reporting the inspection results to the status server 108;
○ other modules for providing the online service inspection functions on the service machine 112, including, for example, download module 324 for downloading parameters from the parameter server 106, inspection execution module 326 for executing the instructions for each inspection item in accordance with the inspection parameters obtained by the inspection agent 322, and heartbeat reporting module 328 for reporting heartbeat and other inspection results of the service machine 112. In some embodiments, a respective downloading module 324 can be included as part of the general-purpose inspection agent 320 and each of the special-purpose inspection agents 322. In some embodiments, the download module 324 can be shared among the inspection modules installed on the service machine 112. In some embodiments, the inspection execution module 326 can be included as part of the general-purpose inspection agent 320 and each of the special-purpose inspection agents 322. In some embodiments, the inspection execution module 326 can be shared among the inspection modules installed on the service machine 112. In some embodiments, the heartbeat reporting module 328 can be included as part of the general-purpose inspection agent 320 and each of the special-purpose inspection agents 322. In some embodiments, the  heartbeat reporting module 328 can be shared among the inspection modules installed on the service machine 112; and
client data 330 storing data associated with the user devices and user accounts for the online services provided by the online service system 110.
Each of the above identified elements may be stored in one or more of the previously mentioned memory devices, and corresponds to a set of instructions for performing a function described above. The above identified modules or programs (i. e., sets of instructions) need not be implemented as separate software programs, procedures, modules or data structures, and thus various subsets of these modules may be combined or otherwise re-arranged in various implementations. In some implementations, memory 306, optionally, stores a subset of the modules and data structures identified above. Furthermore, memory 306, optionally, stores additional modules and data structures not described above.
Figure 4 is a flow chat of an online service inspection method in accordance with some embodiments. In the method, a service inspection agent (e. g. , service inspection agent 116) is deployed in advance in each service machine (e. g. , service machine 112) in which service inspection is needed.
Step 401: A service inspection agent downloads a service inspection configuration file and an inspection item program according to a preset inspection configuration update period and performs an update, where the service inspection configuration file includes an inspection period of each inspection item program. For example, in some embodiments, the service inspection agent can be installed by an administrator through remote procedure execution. The service inspection agent can be a script or program that is pushed to the service machine and the service inspection agent is executed by the service machine and continues to run on the service machine. The service inspection agent program includes instructions for obtaining inspection parameters for inspection items (e. g. , check processes, check latency, check network connections, etc. ) . The inspection parameters can specify what inspection items need to be performed, on what kinds of schedule, what kinds of data should be collected, and how the data should be reported, etc. The inspection items for different inspection tasks are scripts or program code for different inspection actions. The different inspection actions takes in the inspection parameters  obtained from the parameter server as input, and performs the inspections accordingly. In some embodiments, a general-purpose inspection agent can be downloaded and installed on the service machine first, and the general-purpose inspection agent can reach out to the parameter server to determine which special-purpose inspection agents should be downloaded and installed on the service machine. In some embodiments, the general-purpose inspection agent can also delete some existing inspection agents based on the input from the parameter server. In some embodiments, the general-purpose agent obtains the name and program code of the special-purpose inspection agents from the parameter server as the parameters for its own program code.
In some embodiments, the preset inspection configuration update period is a parameter for an inspection item performed by the inspection agent. Each program item can have its own preset inspection configuration update period. In some embodiments, the parameters for each inspection item (e. g. , including the inspection update period) can be updated by the new parameter values obtained from the parameter server. In some embodiments, the parameter server can also send new inspection items (e. g. , new inspection item programs) to the inspection agent already installed on the service machine. This way, the inspection items and parameters can be changed easily, without requiring reinstallation of the service inspection agents on the service machine.
In some embodiments, the parameters of the inspection items are included in the service inspection configuration file transmitted from the parameter server to the service inspection agent running on the service machine. For example, in some embodiments, the service inspection configuration file identifies the online services that are to be inspected, updated versions of the inspection items (e. g. , e. g. , updated program code for carrying out particular inspection tasks) , and/or updated inspection parameters (e. g. , inspection update period, listing of status data required, listing of reporting requirements, etc. ) for the inspection items to be executed for the identified online services, etc. In some embodiments, if no change is needed for the existing inspection items, inspection parameter, and parameter values, the service inspection configuration file can be omitted from the response of the parameter server, and a simpler response (e. g. , a short reply with a one-bit flag) can be used to indicate that no update is needed for the service inspection at this time.
In some embodiments, the parameter server pushes the inspection configuration file to the inspection agent running on the service machine in accordance with requests received from the administrator of the online service inspection system, the request from the status server, or other pre-set conditions. In some embodiments, the parameter server sends the inspection configuration file to the inspection agent running on the service machine in accordance with the requests received from the inspection agent. In some embodiments, the inspection agent requests update on the inspection configuration file based on an inspection configuration update schedule (e. g. , an inspection configuration update period=every day at 3: 10am) specified in the current version of the inspection configuration file stored locally at the service machine. When the update to the inspection configuration file is initiated by the service inspection agent, the problem with remote procedure calls, and credential to gain access to the service machine can be ameliorated.
Step 402: The service inspection agent runs a locally saved inspection item program according to the inspection period of each inspection item program in accordance with the parameters values specified in the inspection configuration file stored at the service machine. In some embodiments, the service inspection agent runs the locally saved inspection item program in accordance with other parameters specified in the inspection configuration file.
In some embodiments, a manner in which the service inspection agent downloads a service inspection configuration file and an inspection item program and performs an update may include: The service inspection agent downloads a service inspection configuration file and performs an update of the inspection parameters and/or inspection program code. In some embodiments, the service inspection agent determines whether the service inspection configuration file involves an inspection item program which is not locally saved. If the service inspection configuration file does involve an inspection item program that is not yet locally saved, the service inspection agent downloads and saves the inspection item program, or otherwise, the service inspection agent ends the current download. In some embodiments, the new inspection item program may be included in the service inspection configuration file, and no separate download of the new inspection item program is needed.
In some embodiments, according to the inspection update period, when an update is performed for the first time, the service inspection agent downloads and saves a service inspection configuration file, where the content of the service inspection configuration file includes, for example: an inspection item program 1 performs inspection once every 10 minutes, and an inspection item program 2 performs inspection once every 15 minutes. Then the service inspection agent further downloads and saves the inspection item program 1 and the inspection item program 2 involved in the service inspection configuration file, if the versions of the  inspection item programs  1 and 2 have been updated, or if the  inspection item programs  1 and 2 do not exist on the service machine yet.
In some embodiments, when an update is performed for another time later, the service inspection agent downloads and saves a new version of the service inspection configuration file (the originally saved service inspection configuration file is automatically deleted by the service inspection agent) , where the content of the new service inspection configuration file includes, for example: the inspection item program 1 performs inspection once every 10 minutes, and the inspection item program 2 performs inspection once every 30 minutes. If the inspection configuration file does not specify new versions of the  inspection item programs  1 and 2, and all inspection item programs involved in the service inspection configuration file are locally saved, so the current download is ended after the new service inspection configuration file is downloaded.
In some embodiments, when an update is performed for another time later, the service inspection agent downloads and saves a new version of the service inspection configuration file (the originally saved service inspection configuration file is automatically deleted) , where the content of the new service inspection configuration file includes, for example: the inspection item program 1 performs inspection once every 10 minutes, the inspection item program 2 performs inspection once every 30 minutes, and an inspection item program 3 performs inspection once every 20 minutes. Since the inspection item program 3 referred to in the new service inspection configuration file is not locally saved, so service inspection agent downloads the inspection item program 3 from the parameter server or from another source and saved it.
It can be seen that, by means of the foregoing manner, the service inspection agent does not need to download an inspection item program repetitively, thereby reducing the burden on a transmission network. Furthermore, the inspection parameters for each inspection item program can be updated in the service inspection configuration file, such that the inspection item programs do not need to be updated repeatedly to accommodate new inspection needs. Furthermore, new inspection item programs can be included in the service inspection configuration file, such that additional inspection tasks can be performed on the service machine without manual installation or remote procedure execution to install theadditional inspection programs on the service machine.
In some embodiments, the service inspection configuration file may further include a deletion instruction for an inspection item program.
For example, in some embodiments, after downloading the service inspection configuration file, the service inspection agent may further delete one or more locally saved inspection item programs according to the deletion instruction for the inspection item programs included in the downloaded service inspection configuration file.
In can be seen that, by means of this manner, manual login to a service machine to delete or uninstall its old inspection item programs can be avoided. Operating personnel only need to generally manage service inspection configuration files and inspection item programs for all service machines in the online service system, and a service machine automatically pulls a service inspection configuration file and any needed inspection item programs, so as to ensure that the service machine may obtain the latest inspection item programs at any time.
In the foregoing method, the service inspection agent may download a service inspection configuration file and one or more inspection item programs from the parameter server, where, the service inspection configuration file is automatically generated by the parameter server according to an inspection policy that has been manually specified by an administrator. In some embodiments, the inspection item programs can be uploaded manually to the parameter server (or the installation server) of the online service inspection system or edited online by an administrator through an interface provided by the parameter  server or the installation server, or an I/O interface module of the online service inspection system.
In some embodiments, the foregoing method may further include: reporting, by the service inspection agent, a report message (e. g. , a heartbeat message) of the service machine to a status server according to a preset reporting period (e. g. , a preset heartbeat reporting period) . In some embodiments, the preset reporting period can be one of the parameters specified in the inspection configuration file. In some embodiments, different inspection result may have different preset reporting period. In some embodiments, the inspection configuration file may establish the reporting period based on the actual results of the inspection. For example, if the result (e. g. , latency) is within a preset normal range, then the reporting period is a first time period, and if the result is within a preset abnormal range (e.g. , latency is too large) , then the reporting period is a second time period shorter than the first time period. In some embodiments, the inspection configuration file may also include a parameter regarding which status server addresses to use for sending different inspection results.
In some embodiments, the status server determines, for each service machine, whether an interval from a current time to the time when a report message (e. g. , a heartbeat message, or other inspection result message) of the service machine was received for the last time is greater than a preset threshold. If so, the status server queries whether the service machine is already offline. If the service machine is not supposed to be offline, the status server sends alarm information for the service machine to a response team (e. g., the administrator of the online service inspection system, an automated response system, an administrator of the service machine, etc. ) . If the service machine is offline as planned, the status server optionally notifies the parameter server to delete the service inspection configuration file and the inspection item program (s) for the service machine. In some embodiments, different preset thresholds are used for different types of inspection messages. For example, a heartbeat message may have a first reporting time threshold, a latency message may have a second reporting time threshold, a load message may have a third reporting time threshold.
In some embodiments, the online service inspection system uses different preset inspection configuration update periods for different service machines, different inspection agents, and/or different inspection items, such that the communication and  processing load on the agent installation server and the parameter server are spread out evenly over time. For example, the parameter server optionally specifies a longer preset inspection configuration update period for each service machine, if a substantial update on the inspection configuration file is to be downloaded to each service machine. The parameter server also optionally adjust the preset inspection configuration update period for a particular service machine, if that service machine has been offline and restarted at a later time, such that the inspection update request from the service machine can fit into a relatively low load period of the parameter server based on the expected inspection update times of all other service machines. Similarly, the online service inspection system can also use different preset reporting periods and/or different reporting time thresholds for different types of inspection items, different inspection agents, and different service machines, with the goal to spread out the communication and processing load on the status server. The same types of period adjustment setting methods described above with respect to the parameter server can be applied by the status server to even out its load.
It can be seen that, by means of this manner, for an already offline service machine, the online service inspection system may automatically delete the service inspection configuration file and the inspection item program (s) of the service machine in the parameter server, and even if the service machine is online again and used for other services, its service inspection configuration file and inspection item program are not valid any longer. New inspection configuration files and inspection item programs can be obtained for the service machine by its inspection agent (e. g. the general-purpose inspection agent or an existing special-purpose inspection agent if the machine is restarted to provide the same online services as before) .
Figure 5 is a schematic structural diagram of a system to which the present technology is applied, including: a service inspection agent 1, a service inspection agent 2, ..., and a service inspection agent n that are deployed in a service machine 1, a service machine 2, ... , and a service machine n (service machines are not shown in Figure 5) , respectively; a parameter server, and a status server. Entities in the system are separately introduced below with specific embodiments.
First, a running manner of a parameter server in accordance with some embodiments is introduced.
In some embodiments, an inspection policy may be configured in the parameter server for each service machine in which service inspection is needed. The inspection policy is mainly to customize behaviors of an inspection item program such as one or more running rules, one or more running parameters, and an inspection period of the inspection item program. In some embodiments, the rule is the same as that in Crontab, and designates some other relevant attributes such as inspection types (e. g. , including corresponding alarm types and reporting types) , and IP addresses of one or more servers to which to report. The parameter server generates the service inspection configuration file for each service machine according to the inspection policy.
In some embodiments, the service inspection configuration file for a particular service inspection agent may include an inspection execution period of each inspection item program that is to run on the service machine on which the service inspection agent has been deployed. The following is an example of one service inspection configuration file, which denotes that an inspection item program MonTcpCons. sh is to be executed once every 10 minutes, and an inspection item program getcpm. sh is to be executed once every 10 minutes.
*/10****/data/app/MonTcpCons. sh [1000] alarm
*/10****/data/app/getcpm. sh [124] post
In some embodiments, the service inspection configuration file may further include a deletion instruction for one or more of the inspection item programs.
In some embodiments, an inspection item program may include specific content of service inspection, such as monitoring the maximum number of connections, and reporting the number of online users. The inspection item program may be a binary program or a script.
In some embodiments, a user (e. g. , an administrator of the online service inspection system) may edit an inspection item program online or upload an inspection item program prepared in advance to the parameter server.
In some embodiments, the inspection policy may be added and modified in the parameter server at any time, which does not affect the running of the service inspection agents at the service machines.
Additionally, the parameter server may further delete a service inspection configuration file and an inspection item program for a service machine according to a notification from the status server.
The running manner of a service inspection agent in accordance with some embodiments is introduced below.
In some embodiments, a service inspection agent is deployed in advance in each service machine in which service inspection is needed; the service inspection agent may be deployed by an automatic deployment platform (e. g. , an installation server, or a general-purpose inspection agent already installed on the service machine) , and is run in a backend manner in the service machine; the service inspection agent may be a binary program or script, or may also be a Daemon backend process. The service inspection agent is run in a manner similar to Crontab, and the following process is cycled: downloading the latest service inspection configuration file and inspection item program (s) , reading the service inspection configuration file, and running the inspection item program (s) at a respective inspection time point of the inspection item program in accordance with the parameters specified in the service inspection configuration file; and meanwhile, reporting a report message (e. g. , a heartbeat message) according to a preset heartbeat reporting period specified in the service inspection configuration file.
The service inspection agent is based on a plug-in type, an inspection item may be configured at any time, and the service inspection configuration file and the inspection item program are actively downloaded from a parameter server, in accordance with some embodiments.
The service inspection agent obtains the latest service inspection configuration file and inspection item programs of the service machine from the parameter server and performs an update according to a preset inspection configuration update period. The inspection configuration update period may be configured to perform an update once every 10 minutes, for example. The obtaining behavior is an internally implemented connection mechanism, such as a TCP, UDP, long connection, and short connection. In this embodiment, an http-get manner is used; the service inspection agent may conveniently obtain a file in a system command manner such as wget or curl. According to the locally saved service  inspection configuration file and inspection item programs, the service inspection agent runs the inspection item programs. Meanwhile, the service inspection agent further needs to report the report message (e. g. , a heartbeat message) of the service machine to the status server according to the preset reporting period (e. g. , a heartbeat reporting period) , and the reporting period is configurable. In some embodiments, the reporting message (e. g., the heartbeat message) is reported in an http-post manner.
Figure 6 is a flowchart of an exemplary process in which a service inspection agent downloads a service inspection configuration file and corresponding inspection item program (s) and performs an update in accordance with some embodiments, including:
Step 601: A service inspection agent downloads a service inspection configuration file of a service machine from a parameter server and saves the service inspection configuration file, and deletes a previously locally saved service inspection configuration file.
Step 602: The service inspection agent determines whether the currently downloaded service inspection configuration file includes a deletion instruction for an inspection item program, if yes, deletes the locally saved inspection item program, and otherwise, executes Step 603.
Step 603: The service inspection agent determines whether the currently downloaded service inspection configuration file involves an inspection item program which is not locally saved, and if yes, downloads the inspection item program from the parameter server and saves the inspection item program. In some embodiments, a service inspection configuration profile involves an inspection item program by including an inspection period for the inspection item program in the service inspection configuration file. For example, by specifying a definite (as opposed to undefined) inspection period (and/or reporting period) for a particular inspection item program in the service inspection configuration file, the inspection item program is involved in the service inspection configuration file.
The foregoing is an implementation process in which the service inspection agent performs a download and an update for a single iteration. The service inspection agent periodically executes the foregoing Step 601 to Step 603 according to the preset inspection  configuration update period. The service inspection agent performs a download and an update periodically, and therefore, when the latest versions of the service inspection configuration file and the inspection item program (s) are generated in the parameter server, the service inspection agent may automatically download the latest versions from the server.
Additionally, the service inspection configuration file may include the deletion instruction (s) for one or more inspection item programs, so that after automatically updating the service inspection configuration file, the service inspection agent can execute the deletion instructions, and automatically delete one or more invalid inspection item programs stored on the service machine. It can be seen that, in this manner of deleting the inspection item programs, individual logins onto the service machines are no longer necessary, while only the deletion instructions need to be generated in the parameter server. In the method, one or more inspection item programs may be deleted at the same time.
By using the locally saved service inspection configuration file and inspection item programs, the service inspection agent may perform inspection on the service machine, and the specific manner is: running the inspection item program in a backend manner according to an inspection period of each inspection item program included in the service inspection configuration file. The inspection item program may automatically report a running result, and specifically, for an inspection item program of an alarm type, may report alarm information to an alarm system when the running result exceeds a designated threshold; for an inspection item program of a reporting type, may report a value to a visualization system; and wait for an instruction from an administrator or the inspection system server.
The service inspection agent may further report the report message of the service machine to the status server according to the preset reporting period.
A running manner of a status server in accordance with some embodiments is introduced below.
Figure 7 is a flowchart of running of a status server according to some embodiments, including:
Step 701: For each service machine, a status server determines whether an interval from a current time to the time when a report message (e. g. , a heartbeat message) of  the service machine is received for the last time is greater than a preset reporting threshold, and if yes, executes Step 702.
Step 702: The status server queries whether the service machine is already offline, if already offline, executes Step 703, and if not offline, executes Step 704. Here, the status server may query a state of the service machine in a configuration system (e. g., the online service inspection system 102) .
Step 703: The status server notifies the parameter server to delete the service inspection configuration file and corresponding inspection item programs for the service machine, and ends the current process.
Step 704: The status server gives alert information for the service machine, and may notify a relevant person in charge of the alert information.
Figures 8A-8B are a flowchart of an exemplary process 800 for providing online service inspection in accordance with some embodiments. The process 800 is performed at a service machine having one or more processors and memory (e. g. , service machine 112 in Figures 1 and 3) .
In some embodiments, the service machine executes (802) a first service inspection agent at the service machine, the first service inspection agent being configured to execute one or more inspection item programs in accordance with one or more inspection parameters specified a corresponding inspection configuration file of the first service inspection agent stored at the service machine, and to request an update on the stored inspection configuration file in accordance with an inspection configuration update schedule specified in the stored inspection configuration file. In some embodiments, the service machine receives (804) (e. g. , through the first service inspection agent) an updated inspection configuration file for the first service inspection agent from the remote server in response to a request from the first service inspection agent to the remote server.
In some embodiments, receiving an updated inspection configuration file for the first service inspection agent further includes (806) : receiving an updated inspection configuration update schedule in the updated inspection configuration file. In some embodiments, receiving an updated inspection configuration file for the first service  inspection agent further includes (808) : receiving a new inspection item program in the updated inspection configuration file. In some embodiments, receiving an updated inspection configuration file for the first service inspection agent further includes (810) : receiving a deletion inspection in the updated inspection configuration file for deleting at least one inspection item program currently executed by the first service inspection agent in accordance with the stored inspection configuration file. In some embodiments, the service machine deletes (812) (e. g. , through the first service inspection agent) the at least one inspection item program from the service machine in accordance with the deletion instruction. In some embodiments, receiving an updated inspection configuration file for the first service inspection agent further includes (814) : receiving a new inspection period or a new reporting period for at least one of the one or more inspection item programs currently executed by the first service inspection agent in accordance with the stored inspection configuration file.
In some embodiments, in response to receiving the updated inspection configuration file for the first service inspection agent from the remote server, the service machine stores (816) , by the first service agent, the updated inspection configuration file in place of the currently stored inspection configuration file at the service machine.
In some embodiments, the service machine executes (818) , by the first service inspection agent, at least a first inspection item program to inspect a first online service provided by the service machine in accordance with the updated inspection configuration file.
In some embodiments, prior to executing the first service inspection agent at the service machine (820) : the service machine executes (822) a general-purpose service inspection agent at the service machine, obtains (824) program code for two or more service inspection agents, including the first service inspection agent, in a respective inspection configuration file of the general-purpose inspection agent, and deploys (826) the two or more service inspection agents, including the first service inspection agent, at the service machine through execution of the general-purpose service inspection agent, wherein each of the two or more service inspection agents is configured to execute a respective set of inspection item programs in accordance with a corresponding inspection configuration file of said each service inspection agent.
The process 800 is merely illustrative. Other aspects and details of the process performed by the service machine are described in other parts of the present specification. Processes performed by the online service inspection system (including the installation server, the parameter server, and/or the status server) may complement the process performed by the service machine, and would be apparent to a person of ordinary skills in the art based on the descriptions provided herein.
An exemplary online service inspection client-server system, including a parameter server and more than one service inspection agents deployed in one or more service machines are described herein in accordance with some embodiments. In some embodiments, the service inspection agent is used to download a service inspection configuration file and one or more inspection item programs from the parameter server and perform an update according to a preset inspection configuration update period, where the service inspection configuration file includes an inspection period for each inspection item program; and is further used to run one or more locally saved inspection item programs according to the inspection period of each of the inspection item programs.
In the foregoing system, a manner in which the service inspection agent downloads the service inspection configuration file and the inspection item program and performs an update may be: downloading a service inspection configuration file and performing an update, determining whether the service inspection configuration file involves an inspection item program which is not locally saved, if yes, downloading and saving the inspection item program, and otherwise, ending the current download.
In the foregoing system, the service inspection configuration file may further include a deletion instruction for the inspection item program.
Correspondingly, the service inspection agent may be further used to, after downloading the service inspection configuration file, delete the locally saved inspection item program according to the deletion instruction for the inspection item program included in the service inspection configuration file.
In the foregoing system, the parameter server is used to receive an inspection policy which is manually input, and generate a service inspection configuration file for each  service machine according to the inspection policy; and is further used to receive an inspection item program which is uploaded manually or edited online.
The foregoing system may further include a status server.
The service inspection agent is further used to report the inspection result (e. g., a heartbeat message) of the service machine to the status server according to a preset reporting period (e. g. , a heartbeat reporting period) .
The status server is used to, for each service machine, determine whether an interval from a current time to the time when a report message (e. g. , a heartbeat message) of the service machine is received for the last time is greater than a preset reporting threshold, if yes, query whether the service machine is already offline, if not offline, give alert information for the service machine, and if already offline, notify the parameter server to delete the service inspection configuration file and the inspection item programs for the service machine.
The present technology further provides one or more service inspection agents for implementing online service inspection, and the service inspection agents are deployed in a service machine in which service inspection is needed. Figure 9 is an exemplary schematic structural diagram of the service inspection agent in accordance with some embodiments, including: a download module 901, used to download a service inspection configuration file and one or more inspection item programs according to a preset inspection configuration update period and perform an update, where the service inspection configuration file includes an inspection period of each inspection item program; and an inspection executing module 902, used to run each locally saved inspection item program according to the inspection period of the inspection item program.
In the foregoing service inspection agent, a manner in which the download module 901 downloads the service inspection configuration file and the inspection item program and performs an update may be: downloading a service inspection configuration file and performing an update, determining whether the service inspection configuration file involves an inspection item program which is not locally saved, if yes, downloading and saving the inspection item program, and otherwise, ending the current download.
In the foregoing service inspection agent, the service inspection configuration file may further include a deletion instruction for the inspection item program.
The download module is further used to, after downloading the service inspection configuration file, delete the locally saved inspection item program according to the deletion instruction for the inspection item program included in the service inspection configuration file.
The foregoing service inspection agent may further include: a reporting module 903, used to report the inspection result (e. g. , a heartbeat message or other inspection result) of the service machine according to a preset reporting period (e. g. , a heartbeat reporting period) .
The present technology further provides a parameter server for implementing online service inspection, and Figure 10 is a schematic structural diagram of the parameter server in accordance with some embodiments, including: a Web centralized management interface module 1001, used to receive an inspection policy which is manually input; and a parameter generating module 1002, used to generate a service inspection configuration file for each service machine according to the inspection policy, where the service inspection configuration file includes an inspection period of each inspection item program; and further used to receive an inspection item program which is uploaded manually or edited online. 
The foregoing service inspection configuration file may further include a deletion instruction for the inspection item program.
The foregoing parameter generating module 1002 may be further used to, when a notification that the service machine is already offline is received, delete the service inspection configuration file and the inspection item program for the service machine.
The present technology further provides a status server for implementing online service inspection, and Figure 11 is a schematic structural diagram of the status server, including: a report receiving (e. g. , a heartbeat receiving) module 1101, used to receive a report message (e. g. , a heartbeat message) of each service machine; and for each service machine, determine whether an interval from a current time to the time when a report message (e. g. , a heartbeat message) of the service machine is received for the last time is  greater than a preset reporting threshold, and if yes, notify a processing module 1102; and the processing module 1102, used to query whether the service machine is already offline according to the notification of the heartbeat receiving module 1101, if not offline, give alert information for the service machine, and if already offline, delete, according to the notification, a service inspection configuration file and corresponding inspection item programs for the service machine.
To sum up, in the online service inspection method, system, and apparatus provided in the present disclosure, no system Crontab needs to be used, thereby reducing the risk brought about by modifying an item of the system Crontab and the risk that a scheduling failure may exist therein. The service inspection agent is based on a plug-in type, and an inspection item and its attribute may be configured dynamically and in real time. The service inspection configuration file and the inspection item program are managed in a centralized manner, and what is seen is what is obtained, and the inspection period may be modified at any time. The inspection item may be automatically updated without needing manual intervention, and only the service inspection configuration file and the inspection item program need to be delivered to the parameter server, thereby reducing work of the operating personnel. The service machine automatically pulls the service inspection configuration file and the inspection item program, thereby ensuring that the service machine may obtain the latest inspection item at any time, and can also obtain the latest file after the service machine is restarted. The inspection item program may be automatically destroyed without needing manual login to delete its inspection item, and a deletion operation needs to be performed in the parameter server and corresponding deletion instructions will be forwarded to the inspection service agent executing in the service machine. For a service machine is already offline, the system can automatically delete the service inspection configuration file and the inspection item programs corresponding to the service machine in the parameter server, and even if the machine is online again used for other services, the inspection item is not valid any longer, and new configuration file and inspection item programs will be downloaded to the service machine again.
The above descriptions are merely exemplary embodiments of the present technology, but not intended to limit the scope of the present technology. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present technology shall fall within the protection scope of the present technology.
While particular embodiments are described above, it will be understood it is not intended to limit the technology to these particular embodiments. On the contrary, the technology includes alternatives, modifications and equivalents that are within the spirit and scope of the appended claims. Numerous specific details are set forth in order to provide a thorough understanding of the subject matter presented herein. But it will be apparent to one of ordinary skill in the art that the subject matter may be practiced without these specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail so as not to unnecessarily obscure aspects of the embodiments.
Although some of the various drawings illustrate a number of logical stages in a particular order, stages that are not order dependent may be reordered and other stages may be combined or broken out. While some reordering or other groupings are specifically mentioned, others will be obvious to those of ordinary skill in the art and so do not present an exhaustive list of alternatives. Moreover, it should be recognized that the stages could be implemented in hardware, firmware, software or any combination thereof.

Claims (20)

  1. A method of providing online service inspection, comprising:
    at a service machine having one or more processors and memory:
    executing a first service inspection agent at the service machine, the first service inspection agent being configured to execute one or more inspection item programs in accordance with one or more inspection parameters specified a corresponding inspection configuration file of the first service inspection agent stored at the service machine, and to request an update on the stored inspection configuration file in accordance with an inspection configuration update schedule specified in the stored inspection configuration file;
    receiving an updated inspection configuration file for the first service inspection agent from the remote server in response to a request from the first service inspection agent to the remote server; and
    executing, by the first service inspection agent, at least a first inspection item program to inspect a first online service provided by the service machine in accordance with the updated inspection configuration file.
  2. The method of claim 1, further comprising:
    prior to executing the first service inspection agent at the service machine:
    executing a general-purpose service inspection agent at the service machine;
    obtaining program code for two or more service inspection agents, including the first service inspection agent, in a respective inspection configuration file of the general-purpose inspection agent; and
    deploying the two or more service inspection agents, including the first service inspection agent, at the service machine through execution of the general-purpose service inspection agent, wherein each of the two or more service inspection agents is configured to execute a respective set of inspection item programs in accordance with a corresponding inspection configuration file of said each service inspection agent.
  3. The method of claim 1, wherein receiving an updated inspection configuration file for the first service inspection agent further includes:
    receiving an updated inspection configuration update schedule in the updated inspection configuration file.
  4. The method of claim 1, wherein receiving an updated inspection configuration file for the first service inspection agent further includes:
    receiving a new inspection item program in the updated inspection configuration file.
  5. The method of claim 1, wherein receiving an updated inspection configuration file for the first service inspection agent further includes:
    receiving a deletion inspection in the updated inspection configuration file for deleting at least one inspection item program currently executed by the first service inspection agent in accordance with the stored inspection configuration file.
  6. The method of claim 5, further comprising:
    deleting the at least one inspection item program from the service machine in accordance with the deletion instruction.
  7. The method of claim 1, wherein receiving an updated inspection configuration file for the first service inspection agent further includes:
    receiving a new inspection period or a new reporting period for at least one of the one or more inspection item programs currently executed by the first service inspection agent in accordance with the stored inspection configuration file.
  8. The method of claim 1, further comprising:
    in response to receiving the updated inspection configuration file for the first service inspection agent from the remote server, storing the updated inspection configuration file in place of the currently stored inspection configuration file at the service machine.
  9. A service machine providing one or more online services and performing online service self-inspection, comprising:
    one or more processors; and
    memory having instructions stored thereon, the instructions, when executed by the one or more processors, cause the processors to perform operations comprising:
    executing a first service inspection agent at the service machine, the first service inspection agent being configured to execute one or more inspection item program in accordance with one or more inspection parameters specified a corresponding inspection configuration file of the first service inspection agent stored at the service machine, and to  request an update on the stored inspection configuration file in accordance with an inspection configuration update schedule specified in the stored inspection configuration file;
    receiving an updated inspection configuration file for the first service inspection agent from the remote server in response to a request from the first service inspection agent to the remote server; and
    executing, by the first service inspection agent, at least a first inspection item program to inspect a first online service provided by the service machine in accordance with the updated inspection configuration file.
  10. The service machine of claim 9, wherein the operations further comprise:
    prior to executing the first service inspection agent at the service machine:
    executing a general-purpose service inspection agent at the service machine;
    obtaining program code for two or more service inspection agents, including the first service inspection agent, in a respective inspection configuration file of the general-purpose inspection agent; and
    deploying the two or more service inspection agents, including the first service inspection agent, at the service machine through execution of the general-purpose service inspection agent, wherein each of the two or more service inspection agents is configured to execute a respective set of inspection item programs in accordance with a corresponding inspection configuration file of said each service inspection agent. 
  11. The service machine of claim 9, wherein receiving an updated inspection configuration file for the first service inspection agent further includes:
    receiving an updated inspection configuration update schedule in the updated inspection configuration file.
  12. The service machine of claim 9, wherein receiving an updated inspection configuration file for the first service inspection agent further includes:
    receiving a new inspection item program in the updated inspection configuration file.
  13. The service machine of claim 9, wherein receiving an updated inspection configuration file for the first service inspection agent further includes:
    receiving a deletion inspection in the updated inspection configuration file for deleting at least one inspection item program currently executed by the first service inspection agent in accordance with the stored inspection configuration file.
  14. The service machine of claim 13, wherein the operations further comprise:
    deleting the at least one inspection item program from the service machine in accordance with the deletion instruction.
  15. The service machine of claim 9, wherein receiving an updated inspection configuration file for the first service inspection agent further includes:
    receiving a new inspection period or a new reporting period for at least one of the one or more inspection item programs currently executed by the first service inspection agent in accordance with the stored inspection configuration file.
  16. The service machine of claim 9, wherein the operations further comprise:
    in response to receiving the updated inspection configuration file for the first service inspection agent from the remote server, storing the updated inspection configuration file in place of the currently stored inspection configuration file at the service machine.
  17. A non-transitory computer-readable medium having instructions stored thereon, the instructions, when executed by one or more processors, cause the processors to perform operations comprising:
    at a service machine providing one or more online services:
    executing a first service inspection agent at the service machine, the first service inspection agent being configured to execute one or more inspection item program in accordance with one or more inspection parameters specified a corresponding inspection configuration file of the first service inspection agent stored at the service machine, and to request an update on the stored inspection configuration file in accordance with an inspection configuration update schedule specified in the stored inspection configuration file;
    receiving an updated inspection configuration file for the first service inspection agent from the remote server in response to a request from the first service inspection agent to the remote server; and
    executing, by the first service inspection agent, at least a first inspection item program to inspect a first online service provided by the service machine in accordance with the updated inspection configuration file.
  18. The computer-readable medium of claim 17, wherein the operations further comprise:
    prior to executing the first service inspection agent at the service machine:
    executing a general-purpose service inspection agent at the service machine;
    obtaining program code for two or more service inspection agents, including the first service inspection agent, in a respective inspection configuration file of the general-purpose inspection agent; and
    deploying the two or more service inspection agents, including the first service inspection agent, at the service machine through execution of the general-purpose service inspection agent, wherein each of the two or more service inspection agents is configured to execute a respective set of inspection item programs in accordance with a corresponding inspection configuration file of said each service inspection agent.
  19. The computer-readable medium of claim 17, wherein receiving an updated inspection configuration file for the first service inspection agent further includes:
    receiving an updated inspection configuration update schedule in the updated inspection configuration file.
  20. The computer-readable medium of claim 17, wherein receiving an updated inspection configuration file for the first service inspection agent further includes:
    receiving a new inspection item program in the updated inspection configuration file.
PCT/CN2014/086773 2013-09-30 2014-09-18 Method, system, and apparatus for online service inspection WO2015043407A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201310461624.9A CN104518903B (en) 2013-09-30 2013-09-30 Business method for inspecting, system and device on line
CN201310461624.9 2013-09-30

Publications (1)

Publication Number Publication Date
WO2015043407A1 true WO2015043407A1 (en) 2015-04-02

Family

ID=52742035

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2014/086773 WO2015043407A1 (en) 2013-09-30 2014-09-18 Method, system, and apparatus for online service inspection

Country Status (2)

Country Link
CN (1) CN104518903B (en)
WO (1) WO2015043407A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110960855A (en) * 2019-12-19 2020-04-07 米哈游科技(上海)有限公司 Communication protocol code updating method and device, electronic equipment and storage medium
CN112241353A (en) * 2019-07-16 2021-01-19 腾讯科技(深圳)有限公司 Running state checking method and device, terminal and storage medium
CN113176882A (en) * 2021-04-29 2021-07-27 广州嘉为科技有限公司 Method, system, equipment and medium for realizing rule checking code of application server

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107995024A (en) * 2017-10-30 2018-05-04 北京奇虎科技有限公司 A kind of device management method, device, server and storage medium
CN111491002B (en) * 2019-01-29 2023-12-05 杭州海康威视系统技术有限公司 Equipment inspection method, device, inspected equipment, inspection server and system
CN111752637B (en) * 2020-06-23 2023-09-01 钥棠(厦门)网络科技有限公司 Multi-service inspection management method and device, computer equipment and storage medium
CN114356442B (en) * 2021-12-22 2024-02-13 中核武汉核电运行技术股份有限公司 Distributed system inspection system and method for nuclear power plant software operation and maintenance

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1829344A (en) * 2005-07-29 2006-09-06 华为技术有限公司 Parameter allocating system and method for mobile station
CN1862576A (en) * 2005-08-19 2006-11-15 华为技术有限公司 Method for obtaining timing task carrying-out time
CN102404386A (en) * 2012-01-09 2012-04-04 无锡城市云计算中心有限公司 Method for ensuring high-reliability service of metadata server group of distributed file system
US20120258687A1 (en) * 2011-04-07 2012-10-11 Microsoft Corporation Enforcing device settings for mobile devices

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1725699A (en) * 2004-07-20 2006-01-25 中兴通讯股份有限公司 Method for automatic detecting communication network
CN101043692A (en) * 2007-04-30 2007-09-26 华为技术有限公司 Patrol checking method and patrol checking server
CN102347965A (en) * 2010-07-30 2012-02-08 中国移动通信集团山西有限公司 Host inspection method and host inspection system
CN103684900B (en) * 2012-09-19 2018-03-16 腾讯科技(深圳)有限公司 Business method for inspecting and system
CN103118354B (en) * 2012-11-09 2016-05-25 福建联迪商用设备有限公司 A kind of terminal automatic detecting and the method and system of automatically downloading
CN102999355B (en) * 2012-11-16 2016-04-20 福建联迪商用设备有限公司 A kind of client application software system managed by terminal management system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1829344A (en) * 2005-07-29 2006-09-06 华为技术有限公司 Parameter allocating system and method for mobile station
CN1862576A (en) * 2005-08-19 2006-11-15 华为技术有限公司 Method for obtaining timing task carrying-out time
US20120258687A1 (en) * 2011-04-07 2012-10-11 Microsoft Corporation Enforcing device settings for mobile devices
CN102404386A (en) * 2012-01-09 2012-04-04 无锡城市云计算中心有限公司 Method for ensuring high-reliability service of metadata server group of distributed file system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112241353A (en) * 2019-07-16 2021-01-19 腾讯科技(深圳)有限公司 Running state checking method and device, terminal and storage medium
CN112241353B (en) * 2019-07-16 2023-10-13 腾讯科技(深圳)有限公司 Method, device, terminal and storage medium for checking running state
CN110960855A (en) * 2019-12-19 2020-04-07 米哈游科技(上海)有限公司 Communication protocol code updating method and device, electronic equipment and storage medium
CN110960855B (en) * 2019-12-19 2023-07-11 米哈游科技(上海)有限公司 Communication protocol code updating method and device, electronic equipment and storage medium
CN113176882A (en) * 2021-04-29 2021-07-27 广州嘉为科技有限公司 Method, system, equipment and medium for realizing rule checking code of application server

Also Published As

Publication number Publication date
CN104518903A (en) 2015-04-15
CN104518903B (en) 2019-01-08

Similar Documents

Publication Publication Date Title
WO2015043407A1 (en) Method, system, and apparatus for online service inspection
US10728340B2 (en) Internet of things (IOT) platform for device configuration management and support
US20240064058A1 (en) Implementation of compliance settings by a mobile device for compliance with a configuration scenario
US9485151B2 (en) Centralized system management on endpoints of a distributed data processing system
JP5437270B2 (en) Method and system for deploying incompatible server versions in a client / server computing environment
US9185174B2 (en) Maintaining mobile device operations
JP2010517175A (en) System management policy certification, distribution, and formulation
CN110196722B (en) Cloud host batch management method, system, equipment and storage medium
US20180018161A1 (en) Updating firmware at enterprise devices
CN111258627B (en) Interface document generation method and device
WO2016165242A1 (en) Method of adjusting number of nodes in system and device utilizing same
WO2017012219A1 (en) Software test method, apparatus and system
WO2017028574A1 (en) Router testing method and testing device
CN106339273A (en) Application program restoration method, terminal and server
US10409638B2 (en) Digital processing system for event and/or time based triggering management, and control of tasks
CN110651256A (en) System and method for preventing service interruption during software update
US20170091351A1 (en) Device, System, and Method for Adaptive Simulation
WO2015196805A1 (en) Batch command execution method and apparatus
US9207928B2 (en) Computer-readable medium, apparatus, and methods of automatic capability installation
CN111901395A (en) Multi-cluster switching method and device
US9348849B1 (en) Backup client zero-management
CN112433938A (en) Method and device for testing application of mobile terminal
JP2016118837A (en) Thin client system, and document file control method of thin client
US20230185687A1 (en) Agentless system and method for discovering and inspecting applications and services in compute environments
RU2630591C1 (en) Method of managing application software configuration in user's computer

Legal Events

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

Ref document number: 14847759

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 24/08/2016)

122 Ep: pct application non-entry in european phase

Ref document number: 14847759

Country of ref document: EP

Kind code of ref document: A1