DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
The instant application having application No. 18/224,279 filed on July 20, 2023, presents claims 1-20 for examination. The case does not have priority data.
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 7/20/2023 was filed before the mailing date of the Non-Final Office Action. The submission is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
Examiner Notes
Examiner cites particular columns, paragraphs, figures and line numbers in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in their entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the examiner.
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
Claim Objections
Claims 4-5 and 15-16 are objected to because of the following informalities:
Claim 4, line 2, “a suspected methods tree”, suggestion: -a suspected method
Claim 15 has the same issue as claim 4 and is objected to for the same reason.
Claims 5 and 16 are objected to for the same reason because they depend from claims 4 or 15 respectively.
Appropriate correction is required.
Allowable Subject Matter
Claims 4-5 and 15-16 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1, 6-10, and 12 are rejected under 35 U.S.C. 103 as being unpatentable over Mohanty et al. (US 20230385143 A1, hereinafter “Mohanty”) in view of Balasubramanian et al. (US 20200409831 A1, hereinafter “Balasubramanian”), Sakai et al. (US 20240086300 A1, hereinafter “Sakai”) and Lundberg et al. (US 20130268260 A1, hereinafter “Lundberg”).
With respect to claim 1, Mohanty discloses A computer-implemented method, comprising:
monitoring, by a processor set, at least one microservice within a container for a failure (e.g. Fig. 15, para [0084], “…. With reference to FIG. 15, a process 1500 for anomaly detection and resolution as shown includes steps 1502 through 1510, and is suitable for use in the system 100 but is more generally applicable to other types of information processing systems comprising an anomaly detection and resolution platform configured for proactive detection and resolution of microservice issues.”);
collecting, by the processor set, logged data in response to the at least one microservice having the failure (e.g. para [0085], “In step 1502, parameters corresponding to at least one microservice operation processed by a first instance of a microservice are collected. …” para [0086], “In step 1504, the parameters are analyzed using one or more machine learning algorithms. …”);
Mohanty does not appear to explicitly disclose
checking, by the processor set, the logged data to determine that an existing tree is not built for the logged data;
performing, by the processor set, telemetry tracing on the at least one microservice in response to the existing tree not being built for the logged data;
collecting, by the processor set, logged tracing data based on performing the telemetry tracing on the at least one microservice;
visualizing, by the processor set, an actual flow of the collected logged tracing data; and
fixing, by the processor set, the at least one microservice on the visualized actual flow of the collected logged tracing data.
However, in analogous art, Balasubramanian discloses
checking, by the processor set, the logged data to determine that an existing tree is not built for the logged data (e.g. para [0121], “… At step 855, the monitoring device may determine a problem dependency that has an unhealthy operating status. …” wherein a problem dependency suggests a tree is not built. See para [0113-0114] for building dependency map);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine the invention of Mohanty with the invention of Balasubramanian because it provides techniques for facilitating improved monitoring of system health based on application dependencies, and allowing for reduced incident recovery time and increased system resiliency. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for facilitating improved monitoring of system health based on application dependencies, and allowing for reduced incident recovery time and increased system resiliency as suggested by Balasubramanian (see para [0007-0008]).
Mohanty as modified by Balasubramanian does not appear to explicitly disclose
performing, by the processor set, telemetry tracing on the at least one microservice in response to the existing tree not being built for the logged data;
collecting, by the processor set, logged tracing data based on performing the telemetry tracing on the at least one microservice;
visualizing, by the processor set, an actual flow of the collected logged tracing data; and
fixing, by the processor set, the at least one microservice on the visualized actual flow of the collected logged tracing data.
However, in analogous art, Sakai discloses
performing, by the processor set, telemetry tracing on the at least one microservice in response to the existing tree not being built for the logged data (e.g. para [0030], “The service monitoring device 20 is a device for monitoring the monitored service 100 at an application level, and for visualizing traces of the components for one request. ….” Balasubramanian cited above teaches the existing tree not being built for the logged data);
collecting, by the processor set, logged tracing data based on performing the telemetry tracing on the at least one microservice (e.g. para [0031], “The monitoring data distribution device 30 receives the monitoring data from the service monitoring device 20, and distributes the monitoring data to the service graph generation device 40 or to the service graph analysis device 10 according to an operation phase of the maintenance control system …”);
visualizing, by the processor set, an actual flow of the collected logged tracing data (e.g. para [0030], “…. For example, the service monitoring device 20 records processing in each component of the monitored service 100 as a span element, and visualizes a flow of operations in the monitored service 100 for one request as trace data …. The service monitoring device 20 displays the visualized trace data to a maintenance engineer. ...”), also see para [0033]);
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the invention of Sakai because it provides techniques for monitoring applications to support anomaly detection and root cause analysis in a complicated microservice. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for monitoring applications to support anomaly detection and root cause analysis in a complicated microservice as suggested by Sakai (see para [0002, 0012]).
Mohanty as modified by Balasubramanian and Sakai does not appear to explicitly disclose
fixing, by the processor set, the at least one microservice on the visualized actual flow of the collected logged tracing data.
However, this is taught in analogous art, Lundberg (e.g. Fig. 10E, para [0163], “… In step 3906, when words present in end user interaction logs are unmatched by any language object (particularly those unmatched words that occur frequently), optimization tools 747 may automatically identify candidates for new LEX or SYN language objects; on receiving such identifications (which can be viewed as recommendations), a developer is typically provided with an option to open a dialog box or other user interface element that enables them to specify details of the new language object (see for example the discussion pertaining to FIG. 12, below). …”)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the invention of Lundberg because it provides techniques for automatically generating and tuning code for natural language interaction applications. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for automatically generating and tuning code for natural language interaction applications as suggested by Lundberg (see para [0009-0012]).
With respect to claim 6, Mohanty as modified by Balasubramanian, Sakai and Lundberg discloses The computer-implemented method of claim 1, Lundberg further discloses wherein the failure comprises a functional exception (e.g. para [0163], “… In step 3906, when words present in end user interaction logs are unmatched by any language object (particularly those unmatched words that occur frequently), optimization tools 747 may automatically identify candidates for new LEX or SYN language objects; …” this paragraph suggest a functional exception. For motivation to combine, please refer to office action regarding claim 1).
With respect to claim 7, Mohanty as modified by Balasubramanian, Sakai and Lundberg discloses The computer-implemented method of claim 1, Lundberg further discloses wherein the failure comprises a logical error (e.g. para [0121], “… At step 855, the monitoring device may determine a problem dependency that has an unhealthy operating status. …” wherein a problem dependency reads on a logical error. For motivation to combine, please refer to office action regarding claim 1).
With respect to claim 8, Mohanty as modified by Balasubramanian, Sakai and Lundberg discloses The computer-implemented method of claim 1, Lundberg further discloses wherein the actual flow of the collected logged tracing data is visualized through a user interface (UI) (e.g. para [0051], “… One example of a report provided to users may be system status window 443, which may comprise a visualization of application 401
and its dependencies in the same manner as FIG. 3B. …”. For motivation to combine, please refer to office action regarding claim 1).
With respect to claim 9, Mohanty discloses wherein the at least one microservice is contained in a cloud-based system (e.g. para [0037], “… The host devices 103 may be, for example, cloud servers. …”).
With respect to claim 10, Mohanty discloses wherein the collected logged tracing data is a subset of data corresponding to the at least one microservice (e.g. para [0085], “In step 1502, parameters corresponding to at least one microservice operation processed by a first instance of a microservice are collected. …”).
With respect to claim 12, it is directed to A computer program product to implement the method disclosed in claim 1, please see the rejections directed to claim 1 above which also cover the limitations recited in claim 12. Note that, Mohanty teaches A computer program product comprising one or more computer readable storage media having program instructions collectively stored on the one or more computer readable storage media, the program instructions executable to (e.g. Fig. 17).
Claims 2, and 13 are rejected under 35 U.S.C. 103 as being unpatentable over Mohanty in view of Balasubramanian, Sakai and Lundberg as applied to claims 1, 12 respectively, in further view of Siddaraju (US 20240168872 A1, hereinafter “Siddaraju”).
With respect to claim 2, Mohanty as modified by Balasubramanian, Sakai and Lundberg discloses The computer-implemented method of claim 1, but does not appear to explicitly disclose further comprising: determining that the failure is similar to a historical failure; and fixing the at least one microservice according to the historical failure. However, this is taught in analogous art, Siddaraju (e.g. para [0061], “In block 518, the client device 116 can provide the user 142, via the graphical user interface 118, with a graphical option to automatically resolve an operational error 134. …. The strategy can be determined based on historical data related to changes made to an application to resolve the same or a similar operational error. …”)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the invention of Siddaraju because it provides techniques for generating Log data as a byproduct of executing the software applications in the distributed computing environments and using log data for debugging problems with the execution of the software applications. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for generating Log data as a byproduct of executing the software applications in the distributed computing environments and using log data for debugging problems with the execution of the software applications as suggested by Siddaraju (see para [0002-0003]).
With respect to claim 13, it recites same features as claim 2, and is rejected for the same reason.
Claims 3, and 14 are rejected under 35 U.S.C. 103 as being unpatentable over Mohanty in view of Balasubramanian, Sakai and Lundberg as applied to claims 1, 12 respectively, in further view of Mo et al. (“The Existence and Co-Modification of Code Clones within or across Microservices”, hereinafter “Mo”).
With respect to claim 3, Mohanty as modified by Balasubramanian, Sakai and Lundberg discloses The computer-implemented method of claim 1, but does not appear to explicitly disclose further comprising: determining that the existing tree is built for the logged data; and fixing the at least one microservice according to the existing tree. However, this is taught in analogous art, Mo (e.g. section 2.3. “… Figure 3 is an example of a pair of cloned fragments with co-modifications. …. When the project was updated to version 6.2.2, two lines of code in these two methods were modified. ...” wherein code clone is analogous to the existing tree is built for the logged data, renders the claim feature obvious.)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the invention of Mo because it provides techniques for making consistent changes for code clones in microservices. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for making consistent changes for code clones in microservices as suggested by Mo (see section 2.3).
With respect to claim 14, it recites same features as claim 3, and is rejected for the same reason.
Claims 11, and 17-20 are rejected under 35 U.S.C. 103 as being unpatentable over Mohanty et al. (US 20230385143 A1, hereinafter “Mohanty”) in view of Balasubramanian et al. (US 20200409831 A1, hereinafter “Balasubramanian”), Sakai et al. (US 20240086300 A1, hereinafter “Sakai”), Lundberg et al. (US 20130268260 A1, hereinafter “Lundberg”) and WUHIB et al. (US 20230011129 A1, hereinafter “WUHIB”).
With respect to claim 11, Mohanty as modified by Balasubramanian, Sakai and Lundberg discloses The computer-implemented method of claim 1, but does not appear to explicitly disclose wherein the existing tree comprises a historical tree which corresponds with a previous failure of a previous microservice. However, this is taught in analogous art, WUHIB (e.g. para [0226], “Some embodiments of the present disclosure may provide a system for detecting faults in computer systems from the log output by the system. The system may include one or more of the following three methods: [0227] a method that builds a tree-based representation to capture the structure of the log output by the system from its historical log output; [0228] a method that uses the tree built by the above method to classify log outputs as anomalous or normal; ….”)
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the invention of WUHIB because it provides techniques for efficiently detecting fault using logs. A person having ordinary skill in the art would have been motivated to make this combination, with a reasonable expectation of success, for the purpose of providing techniques for efficiently detecting fault using logs as suggested by WUHIB (see para [0019-0022]).
With respect to claim 17, it recites same features as claim 11, i.e. it recites features in claim 1 and claim 11, it is rejected for the same reason as for claim 11.
With respect to claim 18, Mohanty as modified by Balasubramanian, Sakai, Lundberg and WUHIB discloses The computer-implemented method of claim 17, Lundberg further discloses wherein the failure comprises a functional exception (e.g. para [0163], “… In step 3906, when words present in end user interaction logs are unmatched by any language object (particularly those unmatched words that occur frequently), optimization tools 747 may automatically identify candidates for new LEX or SYN language objects; …” this paragraph suggest a functional exception. For motivation to combine, please refer to office action regarding claim 1).
With respect to claim 19, Mohanty as modified by Balasubramanian, Sakai, Lundberg and WUHIB discloses The computer-implemented method of claim 17, Lundberg further discloses wherein the failure comprises a logical error (e.g. para [0121], “… At step 855, the monitoring device may determine a problem dependency that has an unhealthy operating status. …” wherein a problem dependency reads on a logical error. For motivation to combine, please refer to office action regarding claim 1).
With respect to claim 20, Mohanty as modified by Balasubramanian, Sakai, Lundberg and WUHIB discloses The computer-implemented method of claim 17, Lundberg further discloses wherein the actual flow of the collected logged tracing data is visualized through a user interface (UI) (e.g. para [0051], “… One example of a report provided to users may be system status window 443, which may comprise a visualization of application 401 and its dependencies in the same manner as FIG. 3B. …”. For motivation to combine, please refer to office action regarding claim 1).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. For example, Szigeti et al., US 20240378033 A1 teaches control flow analysis of a microservice-based application using a common cpu hardware telemetry format.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Zengpu Wei whose telephone number is 571-270-1302. The examiner can normally be reached on Monday to Friday from 8:00AM to 5:00 PM.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Bradley Teets, can be reached on 571-272-3338. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://portal.uspto.gov/external/portal. Should you have questions about access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
/ZENGPU WEI/
Examiner, Art Unit 2197