JP5475602B2 - Asynchronous processing service management system - Google Patents
Asynchronous processing service management system Download PDFInfo
- Publication number
- JP5475602B2 JP5475602B2 JP2010212014A JP2010212014A JP5475602B2 JP 5475602 B2 JP5475602 B2 JP 5475602B2 JP 2010212014 A JP2010212014 A JP 2010212014A JP 2010212014 A JP2010212014 A JP 2010212014A JP 5475602 B2 JP5475602 B2 JP 5475602B2
- Authority
- JP
- Japan
- Prior art keywords
- business
- processing
- asynchronous
- log
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Debugging And Monitoring (AREA)
Description
本発明は、複数のサーバにより提供される各機能の連携によりユーザに各種サービスを提供する情報処理システムにおける運用管理の技術に関し、特に、複数のサーバの各業務アプリケーションが非同期処理により連携して全体としてサービスを提供する情報処理システムにおける運用管理を行う非同期処理サービス管理システムに適用して有効な技術に関するものである。 The present invention relates to an operation management technology in an information processing system that provides various services to a user by cooperation of functions provided by a plurality of servers, and in particular, business applications of a plurality of servers cooperate with each other by asynchronous processing. The present invention relates to an effective technology applied to an asynchronous processing service management system that performs operation management in an information processing system that provides services.
近年では多くの業務(サービス)がコンピュータシステムでの情報処理により提供され、その際、多数のサーバ機器が利用されることも多い。これらのサーバ機器は、主にデータセンターなどの施設で運用管理される。このとき、これらのサーバ機器や設備をサービスの提供主体が所有して運用管理するのではなく、アウトソーシングにより外部のベンダー等に運用管理を委託する場合も多い。また、近年ではクラウドコンピューティング環境を利用して構築され運用される場合もある。 In recent years, many businesses (services) are provided by information processing in a computer system, and many server devices are often used at that time. These server devices are mainly operated and managed in facilities such as data centers. At this time, these server devices and facilities are not owned and operated and managed by the service provider, but operation management is often outsourced to an external vendor or the like by outsourcing. In recent years, there are cases where the cloud computing environment is used and constructed.
このようなシステム形態では、サーバ機器等およびその上で稼働する業務アプリケーションからなる情報システムの運用管理を担当する主体と、業務アプリケーションによって実現されるサービスの提供主体とが、契約によりSLA(Service Level Agreement)を締結し、運用管理側が一定のサービスレベルをサービスの提供主体に保証するということが行われる。 In such a system form, an entity in charge of operation management of an information system including a server device and a business application running on the server device and a service providing entity realized by the business application are contracted by an SLA (Service Level). An agreement is concluded, and the operation management side guarantees a certain service level to the service provider.
従って、運用管理側では、システムの稼働状況を監視して現状のサービスレベルを把握し、システムがSLAを遵守しているか否かを判定するとともに、SLAを遵守できていない(もしくは遵守できなくなりそうな)場合には警告を発したり、SLAを遵守するために要求されるシステムの増強ポイントや構成変更ポイントなどを抽出したりすることが行われる。 Therefore, the operation management side monitors the operating status of the system to understand the current service level, determines whether or not the system complies with the SLA, and does not comply with the SLA (or seems unable to comply). In other cases, a warning is issued, and system enhancement points, configuration change points, and the like required to comply with the SLA are extracted.
これらに関する技術として、例えば、特開2006−252189号公報(特許文献1)には、ビジネス環境の変化やSLAの充足状況に応じて柔軟に機能・性能・信頼性といったサービスレベルを制御するアプリケーション運用管理方法に係る技術が記載されている。 For example, Japanese Patent Application Laid-Open No. 2006-252189 (Patent Document 1) discloses an application operation that flexibly controls service levels such as function, performance, and reliability according to changes in the business environment and SLA satisfaction. The technology related to the management method is described.
特許文献1では、業務アプリケーション全体またはその一部は、部品であるソフトウェア・コンポーネントの組み合わせで構成され、個々のコンポーネントは、コンポーネントDBに格納されており、必要に応じて稼動環境にローディングされる。また、アプリケーションによるサービスは、システム運用ポリシー管理部によりそのポリシーが管理されて実施され、アプリケーションの稼動状況は、コンポーネント毎にランタイム・アプリケーション運用管理部により監視され、結果が監視履歴として蓄積される。この監視履歴とシステム運用ポリシーとを照らし合わせて業務アプリケーションの状態を診断し、この診断結果に基づいてアプリケーションを構成するコンポーネントの制御を行う。 In Patent Document 1, the entire business application or a part thereof is configured by a combination of software components that are parts, and each component is stored in a component DB and loaded into the operating environment as necessary. In addition, the service by the application is executed by managing the policy by the system operation policy management unit, the operation status of the application is monitored by the runtime application operation management unit for each component, and the result is accumulated as a monitoring history. The status of the business application is diagnosed by comparing the monitoring history with the system operation policy, and the components constituting the application are controlled based on the diagnosis result.
現在の情報システム環境では、複数のサーバ上で稼働する業務アプリケーションプログラムおよびこれにより実現される機能の連携により全体として一つのサービスが実現されてユーザに提供される場合も多い。例えば、インターネットを介した株式取引のシステムにおいて、保有する株式を売却し、これにより得た資金で別の株式を購入する、という一連のサービスを想定した場合、株式売却、約定、口座入出金、株式購入等、複数の独立した汎用的な機能を実装する部品化された業務アプリケーションが連携して一連の処理が行われ、サービスとして実現される。 In the current information system environment, a single service is often realized and provided to users as a whole by cooperation of business application programs running on a plurality of servers and functions realized thereby. For example, in a stock trading system via the Internet, assuming a series of services such as selling stocks you own and purchasing other stocks with the funds you obtain, sell stocks, contracts, deposits and withdrawals, A series of processes are performed in cooperation with componentized business applications that implement a plurality of independent general-purpose functions such as stock purchases, and realized as a service.
このとき、例えば、SLA遵守の観点や、顧客からのサービスレベルに関する問い合わせに対する回答などの観点からは、当該サービスにおけるサービスレベルとしては、個別の業務アプリケーション単位ではなく、一連の処理全体もしくはその一部についてのTAT(Turn Around Time)や処理時間などを指標として把握することが必要となる。例えば、上記のサービスの例で、次の株式を購入するために、顧客から「売却した株式の金額が口座に入金されるのはいつか?」というような問い合わせを受けることが想定される。また、このような処理に要する処理時間の保証値をサービスレベルとしてSLAに規定することも想定される。 At this time, for example, from the viewpoint of compliance with SLA and the response to inquiries regarding service levels from customers, the service level in the service is not an individual business application unit, but a whole series of processes or a part thereof. It is necessary to grasp TAT (Turn Around Time), processing time, and the like as indices. For example, in the above service example, in order to purchase the next stock, it is assumed that the customer receives an inquiry such as “when is the amount of the sold stock deposited in the account?”. It is also assumed that a guaranteed value of processing time required for such processing is defined in the SLA as a service level.
ここで、サービスに係る一連の処理における各サーバ(機能)の連携が同期処理で行われる場合であれば、複数のサーバ間での一連の処理の制御は最終的に処理の開始元のサーバに戻ってくる。従って、一連の同期処理の終了時点を把握することは容易であり、TATを算出することは容易である。 Here, if the cooperation of each server (function) in the series of processes related to the service is performed in the synchronous process, the control of the series of processes among the plurality of servers is finally controlled by the server that started the process. Come back. Therefore, it is easy to grasp the end point of a series of synchronization processing, and it is easy to calculate TAT.
しかし、各サーバ(機能)の連携が非同期処理で行われる場合は、あるサーバは、連携のために他のサーバを呼び出した後は、その後どのように処理が行われているかについて関知しないため、処理の流れを追跡することは困難であり、一連の処理からなるサービスの終了タイミングや、全体に要した処理時間を把握することは困難である。従って、基本的には一連の非同期処理からなるサービスにおけるサービスレベルを保証することはできないが、顧客から上述したようなサービスレベルに関する問い合わせがあった場合などにはある程度の確度で処理時間等を回答できるようにしたいという要望がある。 However, when the cooperation of each server (function) is performed by asynchronous processing, after a server calls another server for cooperation, it does not know how the processing is performed after that. It is difficult to trace the flow of processing, and it is difficult to grasp the end timing of a service consisting of a series of processing and the processing time required for the whole. Therefore, it is basically impossible to guarantee the service level in a service consisting of a series of asynchronous processes, but when there is an inquiry about the service level from the customer as described above, the processing time etc. is answered with a certain degree of accuracy. There is a desire to be able to do it.
また、非同期処理の場合、同期処理とは異なって処理経路が一直線であるとは限らず、処理内容に応じて複数のサーバ間での処理経路が分岐して、異なるサーバで同時並行的に処理が行われる場合も生じる。 Also, in the case of asynchronous processing, the processing path is not always a straight line unlike synchronous processing, and the processing path between multiple servers branches depending on the processing content, and processing is performed simultaneously on different servers. May also occur.
しかし、これらの処理を行うサーバ機器の運用管理等を行う担当者は業務アプリケーションの開発者とは基本的に異なるため、サーバ(機能)間の連携関係、処理経路などの詳細を把握することができず、ブラックボックス化された状態で運用せざるを得ない場合も生じる。このような状況では、例えば、サーバから出力されたログ等を見ても、どのサーバのどの業務アプリケーションから出力されたものかは把握できても、この処理がどのサーバのどの機能から呼び出されて、次にどの機能が呼び出されるのかといった非同期処理の処理構成を運用管理者が把握するのは困難である。 However, the person in charge of operation management of server devices that perform these processes is fundamentally different from the developer of business applications, so it is possible to grasp details such as linkage between servers (functions) and processing paths. In some cases, it is impossible to operate in a black box. In this situation, for example, even if you can see which business application is output from which server by looking at the log output from the server, this function is called from which function of which server. It is difficult for the operation manager to grasp the processing configuration of asynchronous processing such as which function is called next.
なお、上記のような課題については、特許文献1などを含むシステムの運用監視における従来の技術では特に考慮されていないのが現状である。 Note that the above-described problems are not particularly taken into consideration in the conventional technique in the operation monitoring of the system including Patent Document 1 and the like.
そこで本発明の目的は、複数のサーバ上で稼働する業務アプリケーションによる非同期処理によってサービスを提供するシステムにおいて、非同期処理での各サーバもしくは各業務アプリケーションの連携を追跡可能とし、これによって非同期処理の処理構成を可視化する非同期処理サービス管理システムを提供することにある。また、本発明の別の目的は、サービスに係る一連の非同期処理全体もしくはその一部における処理時間の情報を取得する非同期処理サービス管理システムを提供することにある。 Therefore, an object of the present invention is to enable tracking of the cooperation of each server or each business application in asynchronous processing in a system that provides services by asynchronous processing by business applications running on a plurality of servers, thereby processing asynchronous processing. An object is to provide an asynchronous processing service management system for visualizing the configuration. Another object of the present invention is to provide an asynchronous processing service management system for acquiring processing time information in the whole or part of a series of asynchronous processing related to a service.
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。 The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、以下のとおりである。 Of the inventions disclosed in this application, the outline of typical ones will be briefly described as follows.
本発明の代表的な実施の形態による非同期処理サービス管理システムは、複数の業務サーバ上でそれぞれ稼働する各業務アプリケーションでの非同期処理による連携によって提供されるサービスを管理する非同期処理サービス管理システムであって、以下の特徴を有するものである。 An asynchronous processing service management system according to a representative embodiment of the present invention is an asynchronous processing service management system that manages a service provided by cooperation by asynchronous processing in each business application respectively running on a plurality of business servers. It has the following characteristics.
すなわち、非同期処理サービス管理システムは、前記各業務サーバとネットワークを介して接続可能であり、前記各業務サーバ上でそれぞれ稼働する前記各業務アプリケーションの稼働状況を把握し管理する管理サーバを有し、前記業務サーバは、当該業務サーバ上で稼働する業務アプリケーションが、非同期処理により他の業務サーバ上の業務アプリケーションを呼び出す際に、当該業務サーバ上で稼働する業務アプリケーションからの要求により、非同期処理毎に識別可能な非同期処理トランザクションIDを発行する非同期処理トランザクションID発行部と、当該業務サーバ上で稼働する業務アプリケーションからの要求により、ログ情報をログ記録装置に記録可能であるログ出力部とを有する。 That is, the asynchronous processing service management system can be connected to each business server via a network, and has a management server that grasps and manages the operating status of each business application that runs on each business server, When a business application running on the business server calls a business application on another business server by asynchronous processing, the business server is requested for each asynchronous process by a request from the business application running on the business server. An asynchronous processing transaction ID issuing unit that issues an identifiable asynchronous processing transaction ID, and a log output unit that can record log information in a log recording device in response to a request from a business application running on the business server.
第1の業務サーバ上で稼働する第1の業務アプリケーションは、非同期処理により第2の業務サーバ上で稼働する第2の業務アプリケーションから呼び出されたものである場合に、さらに非同期処理により第3の業務サーバ上で稼働する第3の業務アプリケーションを呼び出した際に、前記第1の業務サーバにおいて発行された第1の非同期処理トランザクションIDに係る情報を、呼び出し元の前記第2の業務サーバにおいて発行された第2の非同期処理トランザクションIDと関連付けて、前記第1の業務サーバ上の第1のログ出力部によって第1のログ記録装置に出力する。 When the first business application operating on the first business server is called from the second business application operating on the second business server by asynchronous processing, the third business application is further processed by asynchronous processing. When the third business application running on the business server is called, the information related to the first asynchronous processing transaction ID issued by the first business server is issued by the second business server that is the call source. The first log output unit on the first business server outputs the information to the first log recording device in association with the second asynchronous processing transaction ID.
また、前記管理サーバは、前記各業務サーバの前記ログ記録装置に記録されたログ情報を収集して収集ログ記録装置に記録するログ収集部と、前記収集ログ記録装置に記録されたログ情報を解析して、前記非同期処理トランザクションIDの関連付けの情報に基づいて、前記サービスを提供するための一連の非同期処理における前記各業務アプリケーション間の連携を追跡し、非同期処理の処理構成に係る情報を取得する構成解析部とを有する。 The management server collects log information recorded in the log recording device of each business server and records the log information in the collection log recording device; and log information recorded in the collection log recording device. Analyzing and tracking cooperation between the business applications in a series of asynchronous processes for providing the service based on the information on the association of the asynchronous process transaction ID, and acquiring information related to the processing configuration of the asynchronous process And a configuration analysis unit.
また、本発明の代表的な実施の形態による非同期処理サービス管理システムは、前記管理サーバが、さらに、前記サービスを提供するための一連の非同期処理の全体もしくは一部における前記各業務アプリケーションについての、前記ログ収集部に記録されたログ情報を解析して、前記非同期処理トランザクションIDの関連付けの情報に基づいて、前記各業務アプリケーション間の連携を追跡し、その処理時間の情報を取得する処理時間算出部を有することを特徴とするものである。 Further, in the asynchronous processing service management system according to the representative embodiment of the present invention, the management server further provides the business application in the whole or a part of a series of asynchronous processing for providing the service. Analyzing the log information recorded in the log collection unit, tracking the cooperation between the business applications based on the association information of the asynchronous processing transaction ID, and obtaining the processing time information It has the part.
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。 Among the inventions disclosed in the present application, effects obtained by typical ones will be briefly described as follows.
本発明の代表的な実施の形態によれば、複数のサーバ上で稼働する業務アプリケーションによる非同期処理によってサービスを提供するシステムにおいて、非同期処理での各サーバもしくは各業務アプリケーションの連携を追跡可能とし、これによって非同期処理の処理構成を可視化することが可能となる。また、サービスに係る一連の非同期処理全体もしくはその一部における処理時間の情報を取得することが可能となる。 According to a typical embodiment of the present invention, in a system that provides services by asynchronous processing by business applications running on a plurality of servers, it is possible to track the cooperation of each server or each business application in asynchronous processing, This makes it possible to visualize the processing configuration of asynchronous processing. In addition, it is possible to acquire information on the processing time in the entire series of asynchronous processes related to the service or a part thereof.
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一の符号を付し、その繰り返しの説明は省略する。また、以下においては、本発明の特徴を分かり易くするために、従来の技術と比較して説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted. In the following, in order to make the features of the present invention easier to understand, the description will be made in comparison with the prior art.
<概要>
各業務アプリケーションによるサービスの提供を同期処理によって実現する構成の場合、SLAに規定された項目の一つとして、もしくは、顧客からの問い合わせに対する回答などの観点から、サービスに係る一連の処理についてのTATを取得するということは容易である。
<Overview>
In the case of a configuration that realizes service provision by each business application through synchronous processing, TAT for a series of processing related to the service from the viewpoint of one of the items specified in the SLA or in response to an inquiry from a customer It is easy to get.
図3は、同期処理の処理構成の例について概要を示した図である。図3では、4台の業務サーバ10(業務サーバA(10a)〜業務サーバD(10d))が同期処理により連携してサービスの提供に係る処理を行う場合の例を示している。例えば、一連の処理の最初として業務サーバA(10a)で稼働する業務アプリケーション(APL) A(15a)が実行され、そこから同期的に業務サーバB(10b)で稼働する業務APL B(15b)が呼び出される。さらに、業務APL B(15b)の処理中に、同期的に業務サーバC(10c)で稼働する業務APL C(15c)が呼び出される。さらに、業務APL C(15c)の処理中に、同期的に業務サーバD(10d)で稼働する業務APL D(15d)が呼び出される。 FIG. 3 is a diagram showing an outline of an example of the processing configuration of the synchronization processing. FIG. 3 shows an example in which four business servers 10 (business server A (10a) to business server D (10d)) perform processing related to service provision in cooperation by synchronization processing. For example, the business application (APL) A (15a) running on the business server A (10a) is executed as the first of a series of processes, and the business APL B (15b) running synchronously on the business server B (10b) therefrom Is called. Further, during the processing of the business APL B (15b), the business APLC (15c) operating on the business server C (10c) is called synchronously. Furthermore, during the processing of the business APLC (15c), the business APLD (15d) operating on the business server D (10d) is called synchronously.
業務APL D(15d)での処理が終了すると、処理の制御は呼び出し元の業務APL C(15c)に戻る。さらに、業務APL C(15c)での処理が終了すると、処理の制御は呼び出し元の業務APL B(15b)に戻る。同様に、業務APL B(15b)での処理が終了すると、処理の制御は呼び出し元の業務APL A(15a)に戻る。業務APL A(15a)での処理が終了すると、サービスの提供に係る一連の処理は終了する。 When the processing in the business APLD (15d) is completed, the control of the processing returns to the business APLC (15c) that is the calling source. Further, when the processing in the business APLC (15c) is completed, the control of the processing returns to the business APPL B (15b) that is the calling source. Similarly, when the process in the business APL B (15b) is completed, the control of the process returns to the business APL A (15a) that is the calling source. When the process in the business APL A (15a) is completed, a series of processes related to the provision of the service is completed.
このとき、各業務サーバ10は、一般的に、業務APL15(業務APL A(15a)〜業務APL D(15d))での処理に係るログとして、例えば、処理の開始時と終了時にログ14(ログA(14a)〜ログD(14d))にレコードをそれぞれ出力する。従って、上記の一連の処理においては、業務サーバA(10a)上のログA(14a)に記録された、業務APL A(15a)の処理の開始と終了のログを参照することで、一連の同期処理の処理時間(TAT)を取得することができる。また、ログA(14a)に蓄積して記録されたログから統計情報を取得することにより、SLAの遵守状況を確認したり、顧客からの問い合わせに対して処理にかかる想定所用時間を回答したりすることが可能となる。 At this time, each business server 10 generally has, as a log related to processing in the business APL 15 (business APL A (15a) to business APL D (15d)), for example, a log 14 ( Records are output to log A (14a) to log D (14d)). Therefore, in the series of processes described above, a series of processing start and end logs of the business APL A (15a) recorded in the log A (14a) on the business server A (10a) is referred to, so that The processing time (TAT) of the synchronization process can be acquired. In addition, by obtaining statistical information from the log stored and recorded in the log A (14a), the SLA compliance status can be confirmed, and the expected time required for processing can be answered in response to inquiries from customers. It becomes possible to do.
一方、図4は、非同期処理の処理構成の例について概要を示した図である。図4では、上述した図3と同様に、4台の業務サーバ10が連携して、業務サーバA(10a)から始まって業務サーバD(10d)までの一連の処理によってサービスの提供に係る処理を行う場合の例を示しているが、ここでは、各業務サーバ10で稼働する業務APL15が非同期処理により連携を行っている。 On the other hand, FIG. 4 is a diagram showing an outline of an example of a processing configuration of asynchronous processing. In FIG. 4, similar to FIG. 3 described above, the four business servers 10 cooperate to perform processing related to service provision through a series of processing from the business server A (10a) to the business server D (10d). In this example, the business APL 15 operating on each business server 10 cooperates by asynchronous processing.
業務APL15が他の業務APL15を非同期処理により呼び出す際には、例えば、各業務APL15(もしくは業務サーバB)に連携用のキューを設け、このキューに処理要求の電文を追加・挿入する。各業務APL15は、対応するキューから電文を取り出し、電文に指定されたパラメータ等に基づいて処理を開始する。図4の例では、業務APL A(15a)は、処理要求の電文を業務サーバB(10b)(もしくは業務APL B(15b))のキュー16bに追加する。業務APL B(15b)は、キュー16bから処理要求の電文を随時取り出して処理を開始する。さらに、業務APL B(15b)は、処理要求の電文を業務サーバC(10c)(もしくは業務APL C(15c))のキュー16cに追加する。業務APL C(15c)は、同様にキュー16cから処理要求の電文を随時取り出して処理を開始する。 When the business APL 15 calls another business APL 15 by asynchronous processing, for example, a cooperation queue is provided in each business APL 15 (or business server B), and a processing request message is added to or inserted into this queue. Each business APL 15 extracts a message from the corresponding queue, and starts processing based on parameters or the like specified in the message. In the example of FIG. 4, the business APL A (15a) adds a processing request message to the queue 16b of the business server B (10b) (or business APL B (15b)). The business APL B (15b) retrieves a processing request message from the queue 16b as needed and starts processing. Furthermore, the business APL B (15b) adds a processing request message to the queue 16c of the business server C (10c) (or business APLC (15c)). The business APLC (15c) similarly retrieves a processing request message from the queue 16c as needed and starts processing.
図4の例に示すような非同期処理では、同期処理の場合と異なり、一連の処理の終了は、処理を開始した業務APL A(15a)ではなく連携の末尾で呼び出された業務APL15となる。このため、処理を開始した業務サーバA(10a)上のログA(14a)を解析しても、一連の処理の終了タイミングを把握することはできない。 In the asynchronous process as shown in the example of FIG. 4, unlike the synchronous process, the end of the series of processes is not the business APL A (15a) that started the process, but the business APL 15 called at the end of the cooperation. For this reason, even if the log A (14a) on the business server A (10a) that started the processing is analyzed, the end timing of the series of processing cannot be grasped.
また、非同期処理であることから、例えば、業務サーバB(10b)の業務APL B(15b)は、業務サーバC(10c)の業務APL C(15c)を呼び出すのと並行して(すなわち、業務APL C(15c)での処理が終了したか否かに関わらず)、業務サーバD(10d)の業務APL D(15d)を呼び出すことも可能である。例えば、このような処理構成が不明の状態で、業務サーバD(10d)のログD(14d)を参照した場合、業務APL D(15d)が呼び出されて実行されたことは把握できても、これが業務APL B(15b)から業務APL C(15c)を呼び出すのと並行して呼び出されたのか、もしくは、業務APL C(15c)から呼び出されたのかが把握できない(業務APL A(15a)から呼び出された可能性や、クライアント端末50から最初に呼び出された可能性もある)。 In addition, since the processing is asynchronous, for example, the business APL B (15b) of the business server B (10b) calls the business APL C (15c) of the business server C (10c) in parallel (that is, the business server B (10b)). It is also possible to call the business APLD (15d) of the business server D (10d) regardless of whether or not the processing in the APLC (15c) is completed. For example, when the processing configuration is unknown and the log D (14d) of the business server D (10d) is referred to, it can be understood that the business APLD (15d) is called and executed. Whether this is called in parallel with calling the business APLC (15c) from the business APL B (15b) or whether it is called from the business APLC (15c) cannot be grasped (from the business APL A (15a)) (There is a possibility that it has been called, or it may have been called from the client terminal 50 for the first time).
従って、ある一つの一連の処理を特定して、その処理経路を追跡して把握し、処理に要した時間を算出するということは非常に困難である。例えば、「(業務APL A(15a)によって)売却した株式の金額が(業務APL D(15d)によって)口座に入金されるのはいつか?」というような問い合わせに対する回答のように、業務APL A(15a)での処理から業務APL D(15d)での処理までに要する処理時間を算出する際に、各業務サーバ10での業務APL15の平均処理時間をログ14から取得してこれを積み上げて算出する、という手法をとることができない。 Therefore, it is very difficult to specify a series of processes, track and grasp the process path, and calculate the time required for the process. For example, business APL A, such as an answer to an inquiry such as “When is the amount of shares sold (by business APL A (15a)) deposited in an account (by business APL D (15d)?”) When calculating the processing time required from the processing in (15a) to the processing in the business APLD (15d), the average processing time of the business APL15 in each business server 10 is acquired from the log 14 and accumulated. The method of calculating cannot be taken.
そこで、本発明の一実施の形態である非同期処理サービス管理システムでは、各業務サーバで非同期処理が発生する度に、これに対して非同期処理トランザクションID(以下では「ATxID」と記載する場合がある)を発行し、これをログ14やジャーナル等に出力する。このATxIDに基づいて一連の非同期処理における各業務サーバ10(業務APL15)での処理を関連付けることで連携を追跡可能とし、これによって非同期処理の処理構成を可視化するとともに、サービスに係る一連の処理全体もしくはその一部における処理時間の情報を取得することを可能とする。 Therefore, in the asynchronous processing service management system according to an embodiment of the present invention, every time asynchronous processing occurs in each business server, this may be described as asynchronous processing transaction ID (hereinafter referred to as “ATxID”). ) And output this to the log 14 or journal. Based on this ATxID, it is possible to track the cooperation by associating the processing in each business server 10 (business APL 15) in a series of asynchronous processing, thereby visualizing the processing configuration of the asynchronous processing and the entire series of processing related to the service. Alternatively, it is possible to acquire processing time information in a part of the information.
<システム構成>
図1は、本発明の一実施の形態である非同期処理サービス管理システムの構成例について概要を示した図である。非同期処理サービス管理システム1は、データセンター等、複数の業務サーバ10を運用管理するサイトにて構築され、例えば、複数の業務サーバ10と、管理サーバ20およびPC(Personal Computer)等からなる運用端末30が、LAN(Local Area Network)等の内部ネットワーク41に接続された構成を有する。また、業務サーバ10には、インターネット等のネットワーク42を経由して、PC等からなる複数のクライアント端末50がアクセス可能な構成となっている。
<System configuration>
FIG. 1 is a diagram showing an outline of a configuration example of an asynchronous processing service management system according to an embodiment of the present invention. Asynchronous processing service management system 1 is constructed at a site that operates and manages a plurality of business servers 10 such as a data center. 30 has a configuration connected to an internal network 41 such as a LAN (Local Area Network). The business server 10 is configured to be accessible by a plurality of client terminals 50 such as PCs via a network 42 such as the Internet.
業務サーバ10は、単独もしくは他の業務サーバ10と連携して、クライアント端末50を介してユーザにサービスの提供を行うサーバ機器であり、例えば、基盤部11、ATxID発行部12、ログ出力部13、および業務アプリケーション(APL)15の各ソフトウェア、およびデータベースやファイル等からなるログ14を有する。 The business server 10 is a server device that provides a service to a user via the client terminal 50 alone or in cooperation with another business server 10. For example, the base unit 11, the ATxID issuing unit 12, and the log output unit 13. , And the business application (APL) 15 software, and a log 14 composed of a database, a file, and the like.
基盤部11は、OS(Operating System)やWebサーバプログラム、データベース管理プログラムなどの各種ミドルウェア等からなり、業務サーバ10の基盤機能を提供する。ATxID発行部12は、後述する業務APL15から呼び出され、業務APL15が非同期処理により他の業務APL15を呼び出す際にこれに対して割当てるATxIDを発行する。ATxIDのフォーマットは特に何らかのものに限定されるものではないが、少なくとも、どの業務APL15(もしくは業務サーバ10)からの要求により発行されたかを識別可能であり、さらに、シーケンス番号等により、同一の業務APL15からの要求により発行されたものがそれぞれ識別可能となることが必要である。 The base unit 11 includes various middleware such as an OS (Operating System), a Web server program, and a database management program, and provides the base function of the business server 10. The ATxID issuing unit 12 is called from a business APL 15 described later, and issues an ATxID assigned to the business APL 15 when the business APL 15 calls another business APL 15 by asynchronous processing. The ATxID format is not particularly limited, but at least it is possible to identify which business APL 15 (or business server 10) has issued the request, and the same business by the sequence number or the like. It is necessary to be able to identify each issued by a request from the APL 15.
ログ出力部13は、業務APL15から呼び出され、業務APL15での処理に伴うログの出力要求を受けて、これをログ14に出力する。ログ出力部13は、業務APL15の中に組み込まれて実装されていてもよい。業務APL15は、例えば他の業務サーバ10の業務APL15と連携して、ユーザに対するサービスの提供に係る処理を実行する。他の業務サーバ10との連携については、同期処理、非同期処理いずれを利用するものであってもよい。なお、業務APL10は、必ずしも全てがクライアント端末50からその機能に直接アクセス可能である必要はなく、他の業務APL10からのみ呼び出されて利用されるものを有していてもよい。 The log output unit 13 is called from the business APL 15, receives a log output request accompanying processing in the business APL 15, and outputs this to the log 14. The log output unit 13 may be incorporated and implemented in the business APL 15. The business APL 15 executes processing related to provision of a service to the user in cooperation with, for example, the business APL 15 of another business server 10. For cooperation with other business servers 10, either synchronous processing or asynchronous processing may be used. Note that the business APL 10 does not necessarily have to be directly accessible to the function from the client terminal 50, and may have a function that is called and used only from another business APL 10.
業務APL15は、上述したように、非同期処理により他の業務APL15を呼び出す際に、ATxID発行部12によりATxIDの発行を受けて取得する。取得したATxIDの情報は、ログ出力部13を介してログ14に出力する。この限りにおいて、各業務APL15を本実施の形態の非同期処理サービス管理システム1での管理対象とするには、改修により、もしくは初期開発当初からこのような機能を実装しておく必要がある。 As described above, the business APL 15 receives and acquires an ATxID issued by the ATxID issuing unit 12 when calling another business APL15 by asynchronous processing. The acquired ATxID information is output to the log 14 via the log output unit 13. To this extent, in order to make each business APL 15 a management target in the asynchronous processing service management system 1 of the present embodiment, it is necessary to implement such a function by modification or from the beginning of initial development.
一方、管理サーバ20は、各業務サーバ10のログ14を収集して解析・集計することによって、各業務APL15の稼働状況を把握・管理するサーバ機器であり、例えば、基盤部21、ログ収集部22、処理時間算出部24、構成解析部25、および表示部26の各ソフトウェア、およびデータベースやファイル等からなる収集ログ23を有する。この管理サーバ20は、各業務APL15によって提供される非同期処理サービスにおける各業務APL15間の連携を追跡し、その処理構成を把握して可視化するとともに、サービスに係る一連の処理全体もしくはその一部における処理時間の情報(サービスレベル)を取得する。 On the other hand, the management server 20 is a server device that grasps and manages the operating status of each business APL 15 by collecting, analyzing, and totaling the logs 14 of each business server 10, and includes, for example, a base unit 21, a log collection unit 22, a processing time calculation unit 24, a configuration analysis unit 25, and software of the display unit 26, and a collection log 23 including a database, a file, and the like. The management server 20 tracks the cooperation between the business APLs 15 in the asynchronous processing service provided by each business APL 15, grasps and visualizes the processing configuration, and in the entire series of processes related to the service or a part thereof. Acquires processing time information (service level).
基盤部21は、業務サーバ10の基盤部11と同様に、OSやWebサーバプログラム、データベース管理プログラムなどの各種ミドルウェア等からなり、管理サーバ20の基盤機能を提供する。ログ収集部22は、各業務サーバ10のログ14からログデータを収集して収集ログ23に格納する。収集のタイミングや手法は要件に応じて適宜設定可能である。例えば、定期的にログ収集部22が各業務サーバ10のログ14からログ出力部13を介して該当するログデータを抽出して収集する構成としたり、逆に各業務サーバ10のログ出力部13が管理サーバ20のログ収集部22にほぼリアルタイムでログを送信する構成としたりなどが考えられる。 Similarly to the base unit 11 of the business server 10, the base unit 21 includes various middleware such as an OS, a Web server program, and a database management program, and provides the base function of the management server 20. The log collection unit 22 collects log data from the log 14 of each business server 10 and stores it in the collection log 23. The collection timing and method can be appropriately set according to the requirements. For example, the log collection unit 22 periodically extracts and collects corresponding log data from the log 14 of each business server 10 via the log output unit 13, or conversely, the log output unit 13 of each business server 10. May be configured to transmit logs to the log collection unit 22 of the management server 20 almost in real time.
処理時間算出部24は、収集ログ23に格納されたログデータを解析して、運用端末30を介した運用担当者等からの指示に従って、指定されたサービスに係る一連の処理全体もしくはその一部における処理時間の情報を取得することを可能とする。ここでは、単独の業務処理(トランザクション)についての処理時間の情報を取得可能であるとともに、複数回実行された業務処理についての各処理時間の情報を集計することで統計情報を算出可能とし、サービス全体でのSLAの遵守状況の確認等に利用できるようにしてもよい。 The processing time calculation unit 24 analyzes the log data stored in the collection log 23, and in accordance with an instruction from an operation person or the like via the operation terminal 30, the entire series of processes related to the specified service or a part thereof It is possible to acquire information on the processing time in Here, processing time information for a single business process (transaction) can be acquired, and statistical information can be calculated by aggregating each processing time information for business processes executed multiple times. You may make it usable for the confirmation of the SLA compliance status as a whole.
構成解析部25は、収集ログ23に格納されたログデータを解析して、サービスを提供するための一連の非同期処理における各業務APL15間の連携を追跡し、非同期処理の処理構成を取得する。例えば、任意のサービスに係る一連の非同期処理について、各業務APL15の呼び出し元と呼び出し先の対応、およびその順序の情報を取得する。この情報により、運用担当者等は、例えば、非同期処理の処理構成がブラックボックス化された状態で開発担当者等から引き渡しを受けて運用を開始することになったような場合であっても、処理構成に係る情報を把握する、すなわち論理的に可視化することができる。 The configuration analysis unit 25 analyzes the log data stored in the collection log 23, tracks the cooperation between the business APLs 15 in a series of asynchronous processing for providing services, and acquires the processing configuration of the asynchronous processing. For example, for a series of asynchronous processes related to an arbitrary service, information on the correspondence between the calling source and the calling destination of each business APL 15 and the order thereof is acquired. With this information, the person in charge of operation, for example, even when the operation configuration of asynchronous processing is received from the person in charge of development in a state where the processing configuration of the asynchronous processing is made into a black box, Information related to the processing configuration can be grasped, that is, logically visualized.
さらに、表示部26は、構成解析部25で取得した処理構成の情報に基づいて、これを運用端末30のグラフィカルインタフェース上に可視化して表示する。これにより、非同期処理の処理構成を物理的にも可視化することができる。なお、表示部26では、例えば、任意のエンティティ(本実施の形態では業務APL15もしくは業務サーバ10)について関連(本実施の形態では業務APL15の呼び出し)を有するもの同士を線分や矢印等で連結して表示用データとし、運用端末30上のWebブラウザ等に表示するような既存の技術を利用することができる。 Furthermore, the display unit 26 visualizes and displays this on the graphical interface of the operation terminal 30 based on the processing configuration information acquired by the configuration analysis unit 25. Thereby, the processing configuration of asynchronous processing can be physically visualized. In the display unit 26, for example, any entity (in this embodiment, business APL15 or business server 10) related (in this embodiment, calling the business APL15) is linked with a line segment, an arrow, or the like. Thus, it is possible to use an existing technique for displaying the data for display on a Web browser or the like on the operation terminal 30.
<非同期処理の処理構成の把握手法>
図2は、本実施の形態における非同期処理の処理構成の例について概要を示した図である。本実施の形態では、上述したように、業務APL15が非同期処理として他の業務APL15を呼び出す際、ATxID発行部12によりATxIDが発行され、これをログ14に出力する。例えば、図中の業務サーバA(10a)では、業務APL A(15a)が業務サーバB(10b)の業務APL B(15b)を非同期処理として呼び出す際に、ATxID発行部12によりATxID=“A001”が発行され、この情報を追加した処理要求の電文をキュー16bに追加することで、業務APL B(15b)を呼び出す。
<Method of grasping the processing configuration of asynchronous processing>
FIG. 2 is a diagram showing an overview of an example of a processing configuration of asynchronous processing in the present embodiment. In the present embodiment, as described above, when the business APL 15 calls another business APL 15 as an asynchronous process, the ATxID issuance unit 12 issues an ATxID and outputs it to the log 14. For example, in the business server A (10a) in the figure, when the business APL A (15a) calls the business APL B (15b) of the business server B (10b) as an asynchronous process, the ATxID issuing unit 12 sets ATxID = "A001". "Is issued, and the transaction APL B (15b) is called by adding a processing request message with this information added to the queue 16b.
このとき、業務APL A(15a)は、このATxID=“A001”により非同期処理を呼び出した(開始した)旨をログA(14a)に記録する。なお、本実施の形態では、ATxIDは、例えば、各業務APL15を識別可能な文字列(“A”、“B”、…)にシーケンス番号(“001”、“002”、…)を付加したフォーマットとしている。 At this time, the business APL A (15a) records in the log A (14a) that the asynchronous process has been called (started) with this ATxID = "A001". In the present embodiment, for example, the ATxID adds a sequence number (“001”, “002”,...) To a character string (“A”, “B”,...) That can identify each business APL 15. The format is used.
業務サーバB(10b)では、業務APL B(15b)がキュー16bから処理要求の電文を随時取り出して処理を開始する。当該処理の中で、業務APL B(15b)は、業務サーバC(10c)の業務APL C(15c)を非同期処理として呼び出すため、処理要求の電文を業務サーバC(10c)(もしくは業務APL C(15c))のキュー16cに追加する。このとき、業務サーバB(10b)のATxID発行部12によりATxID=“B001”が発行され、このATxIDにより非同期処理を呼び出した(開始した)旨をログB(14b)に記録する。 In the business server B (10b), the business APL B (15b) retrieves a processing request message from the queue 16b as needed and starts processing. In this process, since the business APL B (15b) calls the business APL C (15c) of the business server C (10c) as an asynchronous process, the business request message is sent to the business server C (10c) (or business APL C). (15c)) is added to the queue 16c. At this time, ATxID = “B001” is issued by the ATxID issuing unit 12 of the business server B (10b), and the fact that asynchronous processing is called (started) by this ATxID is recorded in the log B (14b).
さらに、業務サーバD(10d)の業務APL D(15d)を非同期処理として呼び出すため、業務サーバD(10d)(もしくは業務APL D(15d))のキュー16dにも非同期処理の処理要求の電文を追加する。このとき、業務サーバB(10b)のATxID発行部12によりATxID=“B002”が発行され、このATxIDにより非同期処理を呼び出した(開始した)旨をログB(14b)に記録する。 Furthermore, in order to call the business APLD (15d) of the business server D (10d) as an asynchronous process, a message for an asynchronous processing request is also sent to the queue 16d of the business server D (10d) (or the business APL D (15d)). to add. At this time, ATxID = "B002" is issued by the ATxID issuing unit 12 of the business server B (10b), and the fact that asynchronous processing is called (started) by this ATxID is recorded in the log B (14b).
なお、ログB(14b)に非同期処理を呼び出した旨を記録する際、呼び出し元との連携の関係が把握可能となるよう、呼び出し元となった処理のATxID(図2の業務サーバB(10b)の例ではいずれも呼元ATxID=“A001”)の情報を追加して関連付ける。この呼び出し元となった処理のATxIDの情報を参照することにより、対象の業務処理における、各業務APL15間の処理の連携を追跡することが可能となる。 Note that when the fact that the asynchronous process is called is recorded in the log B (14b), the ATxID (the business server B (10b in FIG. 2) of the process that has called the caller so that the relation of cooperation with the caller can be grasped. In the example of (), the information of the caller ATxID = “A001”) is added and associated. By referring to the ATxID information of the process that is the caller, it is possible to trace the cooperation of the processes between the business APLs 15 in the target business process.
その後、業務APL B(15b)が業務APL A(15a)から呼び出された非同期処理を終了する際、その旨をログ14bに記録する。その際、当該処理のATxID=“A001”の情報についても記録する。以上の処理は、さらに非同期処理によって呼び出された業務APL C(15c)および業務APL D(15d)についても同様である。 Thereafter, when the business APL B (15b) terminates the asynchronous processing called from the business APL A (15a), the fact is recorded in the log 14b. At that time, the information of ATxID = “A001” of the process is also recorded. The above processing is the same for the business APLC (15c) and the business APL D (15d) called by the asynchronous processing.
ここで、例えば、「(業務APL A(15a)によって)売却した株式の金額が(業務APL D(15d)によって)口座に入金されるのはいつか?」というようなサービスレベルについての問い合わせに対して回答するような場合、業務APL A(15a)での処理の開始から、非同期処理による連携によって呼び出された業務APL D(15d)での処理の終了までの処理時間(の統計情報)を取得する必要がある。 Here, for example, in response to an inquiry about a service level, such as “When is the amount of stock sold (by business APL A (15a)) deposited in an account (by business APLD (15d)?”) To obtain the processing time (statistical information) from the start of the processing in the business APL A (15a) until the end of the processing in the business APL D (15d) called by cooperation by asynchronous processing There is a need to.
この処理時間を算出する手法としては種々のものが考え得るが、例えば、管理サーバ20の処理時間算出部24は、収集ログ23を参照し、まず、対象のサービスに係る非同期処理の連携における末尾の処理(当該例では業務APL D(15d))に対応する開始・終了のログを取得してその処理時間を算出する。また、収集ログ23から当該処理において出力された非同期処理の終了のログを検索して取得する。図2の例では、業務サーバD(10d)のログ14dに出力されたATxID=“B002”の終了ログが取得できる。 Various methods for calculating the processing time can be considered. For example, the processing time calculation unit 24 of the management server 20 refers to the collection log 23, and firstly, at the end of the asynchronous processing cooperation related to the target service. The start / end log corresponding to the process (business APLD (15d) in this example) is acquired and the processing time is calculated. In addition, the end log of the asynchronous process output in the process is retrieved from the collection log 23 and acquired. In the example of FIG. 2, an end log of ATxID = “B002” output to the log 14d of the business server D (10d) can be acquired.
次に、対象の処理について遡って、収集ログ23からATxID=“B002”の開始ログを検索して取得する。図2の例では、業務サーバB(10b)のログ14bに出力されたATxID=“B002”の開始ログが取得できる。ここで、当該開始ログに対応する業務処理(業務APL B(15b)での処理)の処理時間を、当該業務処理の開始・終了のログに基づいて算出する。 Next, the target process is traced and the start log of ATxID = “B002” is retrieved from the collection log 23 and acquired. In the example of FIG. 2, the start log of ATxID = “B002” output to the log 14b of the business server B (10b) can be acquired. Here, the processing time of the business process corresponding to the start log (the process in the business APL B (15b)) is calculated based on the start / end log of the business process.
図2の例では、当該開始ログにその呼び出し元がATxID=“A001”の処理である旨の情報が追加されている。従って、当該業務処理は、さらに呼び出し元の処理(ATxID=“A001”)から非同期処理によって呼び出されたものであることが分かる。 In the example of FIG. 2, information indicating that the caller is a process of ATxID = “A001” is added to the start log. Therefore, it is understood that the business process is further called by an asynchronous process from the caller process (ATxID = “A001”).
なお、本実施の形態では、当該開始ログに呼び出し元のATxIDの情報を追加することで関連付けるようにしているが、当該開始ログに対応する取引処理がさらに他の業務APL15から非同期処理により呼び出されたものである場合、当該取引処理の一連のログには、呼び出し元の非同期処理の終了ログ(図2の例ではログ14bにおけるATxID=“A001”の終了ログ)が出力されているはずである。従って、その有無を検索することによっても、当該取引処理が非同期処理として呼び出されたものであるか否かを判断することができる(すなわち、当該取引処理の一連のログの中に含まれている、ということによって黙示的に関連付けられる)。 In this embodiment, the information of the caller's ATxID is associated with the start log by adding the information, but the transaction process corresponding to the start log is further called from another business APL 15 by asynchronous processing. In this case, in the series of logs of the transaction process, an end log of the asynchronous process of the caller (in the example of FIG. 2, the end log of ATxID = “A001” in the log 14b) should be output. . Therefore, it is possible to determine whether or not the transaction process is called as an asynchronous process by searching for the presence / absence thereof (that is, included in a series of logs of the transaction process). , Implied by that).
次に、対象の処理についてさらに遡って、収集ログ23からATxID=“A001”の開始ログを検索して取得する。図2の例では、業務サーバA(10a)のログ14aに出力されたATxID=“A001”の開始ログが取得できる。ここで、当該開始ログに対応する業務処理(業務APL A(15a)での処理)の処理時間を、当該業務処理の開始・終了のログに基づいて算出する。ここで、業務APL A(15a)は、処理時間を求める対象である一連の非同期処理における先頭の処理であるため、ここで連携の追跡は終了する。 Next, going back further about the target process, the start log of ATxID = “A001” is retrieved from the collection log 23 and acquired. In the example of FIG. 2, the start log of ATxID = “A001” output to the log 14a of the business server A (10a) can be acquired. Here, the processing time of the business process corresponding to the start log (the process in the business APLA (15a)) is calculated based on the start / end log of the business process. Here, since the business APL A (15a) is the first process in a series of asynchronous processes for which the processing time is to be obtained, the tracking of cooperation ends here.
このとき、上記で算出した、業務APL D(15d)、業務APL B(15b)、業務APL A(15a)における各処理時間を合算することで、一連の非同期処理での連携における各業務サーバ10での処理時間の合計を得ることができる。 At this time, each processing server 10 in the cooperation in a series of asynchronous processing is obtained by adding the processing times in the business APL D (15d), the business APL B (15b), and the business APL A (15a) calculated above. Total processing time can be obtained.
なお、上記のような処理時間の算出方法では、業務サーバ10において実際に処理をしている時間の合計を得ることができるが、処理負荷が高いシステム環境などでは、各業務サーバ10での処理に時間を要し、各キュー16に処理要求の電文が滞留するという場合も生じ得る。このとき、上記のような処理時間の算出方法では、キュー16に処理要求の電文が滞留している時間が含まれない。そこで、上記の例では、一連の非同期処理の連携における末尾の業務処理(業務APL D(15d)での処理)の終了のログを取得し、非同期処理の連携を追跡して、その先頭の業務処理(業務APL A(15a)での処理)の開始のログを取得して、これらのログのタイムスタンプの差分によって全体での処理時間を算出することができる。 In the processing time calculation method as described above, the total time actually processed in the business server 10 can be obtained. However, in a system environment where the processing load is high, the processing in each business server 10 is performed. It may take a long time, and there may be a case where a processing request message stays in each queue 16. At this time, the processing time calculation method as described above does not include the time during which the processing request message stays in the queue 16. Therefore, in the above example, a log of the end of the last business process (process in the business APLD (15d)) in the cooperation of a series of asynchronous processes is obtained, the cooperation of the asynchronous processes is traced, and the first business process is traced. It is possible to obtain a log of the start of processing (processing in the business APL A (15a)) and calculate the total processing time based on the difference between the time stamps of these logs.
例えば、この全体での処理時間と、各業務サーバ10(業務APL15)での処理時間の合計との差分を求めることにより、キュー16に処理要求が滞留している時間を把握することができる。また、各業務処理でのログのタイムスタンプの差分を解析することにより、非同期処理毎の各キュー16での滞留時間を把握することも可能である。これらにより、一連の非同期処理におけるボトルネックの有無や、その場所等を解析するということも可能である。 For example, by obtaining the difference between the total processing time and the total processing time in each business server 10 (business APL 15), it is possible to grasp the time during which the processing request remains in the queue 16. It is also possible to grasp the residence time in each queue 16 for each asynchronous process by analyzing the difference in the log time stamp in each business process. Thus, it is possible to analyze the presence or absence of a bottleneck in a series of asynchronous processes, the location thereof, and the like.
また、管理サーバ20の構成解析部25は、各種の業務処理(サービス)について、例えば、対象範囲を限定せずに収集ログ23から一連の非同期処理の連携を上記と同様の手順によって追跡し、その関係を記録することで、各サービスについての非同期処理の処理構成に係る情報を得ることができる。また、表示部26は、構成解析部25によって得られた情報に基づいて、例えば、サービス毎に各業務APL15(もしくは業務サーバ10)とその連携の関係をフロー図のような形式で画面表示するなどにより可視化する。 The configuration analysis unit 25 of the management server 20 tracks, for example, a series of asynchronous processing linkages from the collection log 23 without limiting the target range for various business processes (services) by the same procedure as described above. By recording the relationship, information relating to the processing configuration of asynchronous processing for each service can be obtained. Further, based on the information obtained by the configuration analysis unit 25, the display unit 26 displays, for example, each business APL 15 (or the business server 10) and the cooperation relationship for each service in the form of a flow diagram. Visualize by such as.
以上に説明したように、本発明の一実施の形態である非同期処理サービス管理システム1によれば、各業務サーバ10(業務APL15)で非同期処理が発生する度に、これに対してATxIDを発行し、これをログ14やジャーナル等に出力する。呼び出された業務サーバ10(業務APL15)において、さらに非同期処理が発生する際、新たに発行したATxIDと、呼び出し元の業務サーバ10(業務APL15)で発行されたATxIDの情報とを関連付けてログ14に出力する。 As described above, according to the asynchronous processing service management system 1 which is an embodiment of the present invention, an ATxID is issued for each asynchronous processing that occurs in each business server 10 (business APL 15). This is output to the log 14 or journal. When further asynchronous processing occurs in the called business server 10 (business APL 15), the newly issued ATxID is associated with the ATxID information issued by the calling business server 10 (business APL 15) in the log 14 Output to.
管理サーバ20においてこれらのログ情報を収集し、解析して集計することで、一連の非同期処理での各業務サーバ10(業務APL15)の連携を追跡可能とし、これによって非同期処理の処理構成を可視化するとともに、サービスに係る一連の処理全体もしくはその一部における処理時間の情報を取得することが可能となる。 By collecting, analyzing and aggregating these log information in the management server 20, it is possible to track the cooperation of each business server 10 (business APL 15) in a series of asynchronous processing, thereby visualizing the processing configuration of asynchronous processing. At the same time, it is possible to acquire information on the processing time in the entire series of processes or a part of the processes.
これにより、運用担当者においてSLAの遵守状況をアプリケーション的な観点からもある程度把握することが可能となり、また、各業務APL15での処理時間に加えて非同期処理の際のキューでの滞留時間の情報などに基づいて、パフォーマンスやキャパシティ上のチューニングポイント(ボトルネック)等を把握することも可能となる。 This makes it possible for the operation staff to grasp the SLA compliance status to some extent from an application perspective. In addition to the processing time in each business APL 15, information on the residence time in the queue during asynchronous processing Based on the above, it is also possible to grasp performance and capacity tuning points (bottleneck).
また、既存の各業務APL15は、非同期処理により他の業務APL15を呼び出す際に、ATxID発行部12にATxIDの発行を依頼して取得し、これを含むログをログ14に出力するという微少な改修のみで容易に非同期処理サービス管理システム1での管理対象とすることが可能であり、各業務APL15の既存の処理への影響と、開発担当者・運用担当者の作業負荷を最小限に抑えることが可能である。 In addition, when each of the existing business APLs 15 calls another business APL 15 by asynchronous processing, the ATxID issuing unit 12 is requested to obtain an ATxID and is acquired, and a log including this is output to the log 14. It can be easily managed by the asynchronous processing service management system 1, and the impact on the existing processing of each business APL 15 and the workload of developers and operators can be minimized. Is possible.
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。 As mentioned above, the invention made by the present inventor has been specifically described based on the embodiment. However, the present invention is not limited to the embodiment, and various modifications can be made without departing from the scope of the invention. Needless to say.
本発明は、複数のサーバの各業務アプリケーションが非同期処理により連携して全体としてサービスを提供する情報処理システムにおける運用管理を行う非同期処理サービス管理システムに利用可能である。 The present invention can be used in an asynchronous processing service management system that performs operation management in an information processing system in which business applications of a plurality of servers cooperate in asynchronous processing to provide services as a whole.
1…非同期処理サービス管理システム、
10(10a〜d)…業務サーバ(A〜D)、11…基盤部、12…非同期処理トランザクションID(ATxID)発行部、13…ログ出力部、14(14a〜d)…ログ(A〜D)、15(15a〜d)…業務アプリケーション(APL)(A〜D)、16(16a〜d)…キュー、
20…管理サーバ、21…基盤部、22…ログ収集部、23…収集ログ、24…処理時間算出部、25…構成解析部、26…表示部、
30…運用端末、
41…内部ネットワーク、42…ネットワーク、
50…クライアント端末。
1 ... Asynchronous processing service management system,
10 (10a to d) ... business servers (A to D), 11 ... base part, 12 ... asynchronous processing transaction ID (ATxID) issuing part, 13 ... log output part, 14 (14a to d) ... log (A to D) ), 15 (15a to d) ... business application (APL) (A to D), 16 (16a to d) ... queue,
DESCRIPTION OF SYMBOLS 20 ... Management server, 21 ... Base part, 22 ... Log collection part, 23 ... Collection log, 24 ... Processing time calculation part, 25 ... Configuration analysis part, 26 ... Display part,
30: Operation terminal,
41 ... Internal network, 42 ... Network,
50: Client terminal.
Claims (4)
前記各業務サーバとネットワークを介して接続可能であり、前記各業務サーバ上でそれぞれ稼働する前記各業務アプリケーションの稼働状況を把握し管理する管理サーバを有し、
前記業務サーバは、
当該業務サーバ上で稼働する業務アプリケーションが、非同期処理により他の業務サーバ上の業務アプリケーションを呼び出す際に、当該業務サーバ上で稼働する業務アプリケーションからの要求により、非同期処理毎に識別可能な非同期処理トランザクションIDを発行する非同期処理トランザクションID発行部と、
当該業務サーバ上で稼働する業務アプリケーションからの要求により、ログ情報をログ記録装置に記録可能であるログ出力部とを有し、
第1の業務サーバ上で稼働する第1の業務アプリケーションは、非同期処理により第2の業務サーバ上で稼働する第2の業務アプリケーションから呼び出されたものである場合に、さらに非同期処理により第3の業務サーバ上で稼働する第3の業務アプリケーションを呼び出した際に、前記第1の業務サーバにおいて発行された第1の非同期処理トランザクションIDに係る情報を、呼び出し元の前記第2の業務サーバにおいて発行された第2の非同期処理トランザクションIDと関連付けて、前記第1の業務サーバ上の第1のログ出力部によって第1のログ記録装置に出力し、
前記管理サーバは、
前記各業務サーバの前記ログ記録装置に記録されたログ情報を収集して収集ログ記録装置に記録するログ収集部と、
前記収集ログ記録装置に記録されたログ情報を解析して、前記非同期処理トランザクションIDの関連付けの情報に基づいて、前記サービスを提供するための一連の非同期処理における前記各業務アプリケーション間の連携を追跡し、非同期処理の処理構成に係る情報を取得する構成解析部とを有することを特徴とする非同期処理サービス管理システム。 Asynchronous processing service management system that manages services provided by cooperation by asynchronous processing in each business application running on multiple business servers,
A management server that is connectable to each business server via a network, and that grasps and manages the operational status of each business application running on each business server;
The business server is
When a business application running on the business server calls a business application on another business server by asynchronous processing, an asynchronous process can be identified for each asynchronous process by a request from the business application running on the business server An asynchronous process transaction ID issuing unit for issuing a transaction ID;
A log output unit capable of recording log information in a log recording device in response to a request from a business application running on the business server;
When the first business application operating on the first business server is called from the second business application operating on the second business server by asynchronous processing, the third business application is further processed by asynchronous processing. When the third business application running on the business server is called, the information related to the first asynchronous processing transaction ID issued by the first business server is issued by the second business server that is the call source. In association with the second asynchronous processing transaction ID, the first log output unit on the first business server outputs to the first log recording device,
The management server
A log collection unit that collects log information recorded in the log recording device of each business server and records it in the collection log recording device;
The log information recorded in the collected log recording device is analyzed, and the linkage between the business applications in a series of asynchronous processing for providing the service is traced based on the information on association of the asynchronous processing transaction ID And an asynchronous processing service management system comprising: a configuration analysis unit that acquires information related to a processing configuration of asynchronous processing.
前記管理サーバは、さらに、前記サービスを提供するための一連の非同期処理の全体もしくは一部における前記各業務アプリケーションについての、前記ログ収集部に記録されたログ情報を解析して、前記非同期処理トランザクションIDの関連付けの情報に基づいて、前記各業務アプリケーション間の連携を追跡し、その処理時間の情報を取得する処理時間算出部を有することを特徴とする非同期処理サービス管理システム。 In the asynchronous processing service management system according to claim 1,
The management server further analyzes the log information recorded in the log collection unit for each business application in the whole or a part of a series of asynchronous processes for providing the service, and performs the asynchronous processing transaction. An asynchronous processing service management system comprising: a processing time calculation unit that tracks cooperation between the business applications based on ID association information and obtains processing time information.
前記管理サーバは、さらに、前記構成解析部によって取得された前記サービスを提供するための一連の非同期処理の処理構成に係る情報に基づいて、これを可視化して運用端末上に表示させる表示部を有することを特徴とする非同期処理サービス管理システム。 In the asynchronous processing service management system according to claim 1 or 2,
The management server further includes a display unit for visualizing and displaying the information on an operation terminal based on information related to a processing configuration of a series of asynchronous processes for providing the service acquired by the configuration analysis unit. An asynchronous processing service management system comprising:
前記管理サーバの前記処理時間算出部は、前記サービスを提供するための一連の非同期処理の全体もしくは一部における前記各業務アプリケーションについての、前記ログ収集部に記録されたログ情報におけるタイムスタンプの差分を解析することにより、前記各業務アプリケーション間の呼び出しに利用されるキューでの滞留時間を取得することを特徴とする非同期処理サービス管理システム。 In the asynchronous processing service management system according to claim 2,
The processing time calculation unit of the management server includes a time stamp difference in the log information recorded in the log collection unit for each business application in the whole or a part of a series of asynchronous processes for providing the service. The asynchronous processing service management system is characterized in that a residence time in a queue used for a call between the business applications is obtained by analyzing
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010212014A JP5475602B2 (en) | 2010-09-22 | 2010-09-22 | Asynchronous processing service management system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010212014A JP5475602B2 (en) | 2010-09-22 | 2010-09-22 | Asynchronous processing service management system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012068800A JP2012068800A (en) | 2012-04-05 |
JP5475602B2 true JP5475602B2 (en) | 2014-04-16 |
Family
ID=46166040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010212014A Expired - Fee Related JP5475602B2 (en) | 2010-09-22 | 2010-09-22 | Asynchronous processing service management system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5475602B2 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9189529B2 (en) * | 2013-02-14 | 2015-11-17 | Ab Initio Technology Llc | Queue monitoring and visualization |
JP2016062506A (en) * | 2014-09-19 | 2016-04-25 | 株式会社東芝 | Monitoring system, monitor and monitoring method |
JP7087921B2 (en) * | 2018-10-31 | 2022-06-21 | 富士通株式会社 | Processing framework linkage device, processing framework linkage method and processing framework linkage program |
JP7116318B2 (en) | 2019-02-15 | 2022-08-10 | 日本電信電話株式会社 | Processing system, processing method, upper system, lower system, upper program and lower program |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000315198A (en) * | 1999-05-06 | 2000-11-14 | Hitachi Ltd | Distributed processing system and its performance monitoring method |
JP2005338978A (en) * | 2004-05-25 | 2005-12-08 | Nippon Telegr & Teleph Corp <Ntt> | Method for collecting log information and content distribution system |
JP2010117757A (en) * | 2008-11-11 | 2010-05-27 | Nomura Research Institute Ltd | Performance monitoring system and performance monitoring method |
-
2010
- 2010-09-22 JP JP2010212014A patent/JP5475602B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012068800A (en) | 2012-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10348809B2 (en) | Naming of distributed business transactions | |
CN103002005B (en) | cloud service monitoring system | |
US11055619B2 (en) | Systems and methods for energy expert collaboration features | |
US20080092122A1 (en) | Automated performance monitoring | |
US8683587B2 (en) | Non-intrusive monitoring of services in a services-oriented architecture | |
CN104823188A (en) | Customized predictors for user actions in online system | |
US20140164840A1 (en) | Method and system for monitoring transaction execution on a computer network and computer storage medium | |
JP2010117757A (en) | Performance monitoring system and performance monitoring method | |
JP6423803B2 (en) | Queue monitoring and visualization | |
US8914798B2 (en) | Production control for service level agreements | |
US11650966B2 (en) | Assisted problem identification in a computing system | |
JP5475602B2 (en) | Asynchronous processing service management system | |
US20150012647A1 (en) | Router-based end-user performance monitoring | |
US20230117225A1 (en) | Automated workflow analysis and solution implementation | |
CN101120322B (en) | Method, system for estimating transaction response times | |
Bellini et al. | Managing cloud via smart cloud engine and knowledge base | |
Joshi et al. | Managing the quality of virtualized services | |
WO2020202433A1 (en) | Information processing device and api usage history display program | |
US11169905B2 (en) | Testing an online system for service oriented architecture (SOA) services | |
US20180260754A1 (en) | Systems and methods for managing resources in an information technology (it) infrastructure | |
KR102074419B1 (en) | Intelligent product information collection server and product information collect method using the same | |
CN110825749A (en) | Behavior trajectory analysis and display method and device, electronic equipment and storage medium | |
US11962659B1 (en) | Adaptive discovery process scheduling | |
Munawar | Adaptive Monitoring of Complex Software Systems using Management Metrics | |
Quadri | Cloud computing: migrating to the cloud, Amazon Web Services and Google Cloud Platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130312 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140121 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140206 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5475602 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |