IP Library Granted Patent US 9,170,917
Granted Patent B2
US 9,170,917 · App. 13/078,677 · Granted Oct 27, 2015

Flow tracing though diverse logical and physical application and infrastructure layers/dependencies

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,170,917
App. No.
13/078,677
Granted
Oct 27, 2015
Kind
B2
Abstract

In various exemplary embodiments, a system and a related method and a related computer-readable medium to perform the method, for tracking numerous software calls in an enterprise environment is provided. The method includes tracking, during a runtime operation of the enterprise environment, layers through which each of the software calls passes. The tracking includes logging each of a multitude of physical components involved in each of the software calls, annotating each of the physical components with associated metadata, logging each of a multitude of logical components involved in the software calls, annotating each of the logical components with associated metadata, and logging a reliance of each of the physical components and the logical components on other physical and logical components. A dependency map is generated indicating the layers tracked in each of the software calls.

Claims (65)

1. A method of tracking a plurality of software calls in an enterprise environment, the method comprising:

tracking, during a runtime operation of the enterprise environment, layers through which each of the plurality of software calls passes, the tracking including

logging each of a plurality of physical components involved in each of the plurality of software calls;

annotating each of the plurality of physical components with metadata associated with and directly indicative of each of the plurality of physical components;

logging each of a plurality of logical components involved in each of the plurality of software calls;

annotating each of the plurality of logical components with metadata associated with and directly indicative of each of the plurality of logical components;

logging a reliance of each of the plurality of the physical components and the logical components on others of the plurality of the physical components and the logical components; and

making a determination of any errors encountered in the plurality of physical components and the plurality of logical components during the tracking; and

generating, using one or more processors, a dependency map indicating the layers tracked in each of the plurality of software calls.

2. The method of claim 1 , wherein the dependency map further includes indicating the reliance of each of the plurality of the physical components and the logical components on others of the plurality of the physical components and the logical components underlying each of the plurality of software calls.

3. The method of claim 1 , wherein the dependency map further indicates each of the plurality of physical components and the logical components tracked in the plurality of software calls.

4. The method of claim 1 , further comprising:

logging each of a plurality of geographical regions for each of the plurality of physical components involved in each of the plurality of software calls; and

annotating each of the plurality of geographical regions with metadata associated with each of the plurality of geographical regions.

5. The method of claim 4 , wherein the dependency map further indicates each of the plurality of geographical regions tracked in each of the plurality of software calls.

6. The method of claim 1 , wherein the annotating of each of the plurality of physical components with metadata includes:

recording a version of code under which each of the plurality of physical components is running; and

recording each of one or more applications running on each of the plurality of physical components.

7. The method of claim 1 , wherein the annotating further includes:

determining and recording a path accessed by each of the plurality of software calls to a subsequent one of the plurality of the physical components and the logical components from a prior component; and

recording a time to access each path.

8. The method of claim 1 , further comprising based on the determination that errors were encountered, logging each of the errors.

9. The method of claim 1 , wherein each of the plurality of software calls can be tracked beginning at any point within the enterprise environment.

10. The method of claim 1 , further comprising:

assigning a unique identifier to at least ones of the plurality of software calls; and

performing statistical analysis on the at least ones of the plurality of software calls.

11. The method of claim 1 , further comprising:

preparing an aggregated call-trace output from the tracking; and

preparing generalized statistics regarding the enterprise environment.

12. A system to track a plurality of software calls in an enterprise environment, the system comprising:

a cluster of harvesters, each harvester having one or more hardware processors to track, during a runtime operation of the enterprise environment, layers through which each of the plurality of software calls passes, the tracking to include

logging each of a plurality of physical components involved in each of the plurality of software calls;

annotating each of the plurality of physical components with metadata associated with and directly indicative of each of the plurality of physical components;

logging each of a plurality of logical components involved in each of the plurality of software calls;

annotating each of the plurality of logical components with metadata associated with and directly indicative of each of the plurality of logical components;

logging a reliance of each of the plurality of the physical components and the logical components on others of the plurality of the physical components and the logical components; and

making a determination of any errors encountered in the plurality of physical components and the plurality of logical components during the tracking; and

one or more reporters in electronic communication with the cluster of harvesters to generate a dependency map indicating the layers tracked in each of the plurality of software calls.

13. The system of claim 12 , further comprising a data analysis service module to perform statistical analysis on at least one of the plurality of software calls, the statistical analysis being based on the tracked layers within the enterprise environment.

14. The system of claim 12 , wherein the one or more reporters is further to include in the dependency map the reliance of each of the plurality of the physical components and the logical components on others of the plurality of the physical components and the logical components underlying each of the plurality of software calls.

15. The system of claim 12 , wherein the one or more reporters is further to include in the dependency map each of the plurality of physical components and the logical components tracked in the plurality of software calls.

16. The system of claim 12 , wherein the cluster of harvesters is further to:

determine and record a path accessed by each of the plurality of software calls to a subsequent one of the plurality of the physical components and the logical components from a prior component; and

record a time to access each path.

17. A method of tracking a plurality of software calls in an enterprise environment, the method comprising:

tracking, during a runtime operation of the enterprise environment, layers through which each of the plurality of software calls passes, the tracking including

logging each of a plurality of physical components involved in each of the plurality of software calls;

logging each of a plurality of logical components involved in each of the plurality of software calls; and

logging a reliance of each of the plurality of the physical components and the logical components on others of the plurality of the physical components and the logical components; and

generating, using one or more processors, a dependency map indicating the layers tracked in each of the plurality of software calls.

18. A tangible computer-readable storage medium storing instructions, the tangible computer-readable medium not comprising any transitory components, the instructions, when executed by one or more processors, cause the one or more processors to perform operations comprising:

tracking, during a runtime operation of the enterprise environment, layers through which each of a plurality of software calls passes, the tracking including

logging each of a plurality of physical components involved in each of the plurality of software calls;

annotating each of the plurality of physical components with metadata associated with and directly indicative of each of the plurality of physical components;

logging each of a plurality of logical components involved in each of the plurality of software calls;

annotating each of the plurality of logical components with metadata associated with and directly indicative of each of the plurality of logical components;

logging a reliance of each of the plurality of the physical components and the logical components on others of the plurality of the physical components and the logical components; and

making a determination of any errors encountered in the plurality of physical components and the plurality of logical components during the tracking; and

generating, using the one or more processors, a dependency map indicating the layers tracked in each of the plurality of software calls.

19. The tangible computer-readable storage medium of claim 18 , wherein the operations further comprise:

logging each of a plurality of geographical regions for each of the plurality of physical components involved in each of the plurality of software calls; and

annotating each of the plurality of geographical regions with metadata associated with each of the plurality of geographical regions.

20. The tangible computer-readable storage medium of claim 18 , wherein the operations further comprise:

determining and recording a path accessed by each of the plurality of software calls to a subsequent one of the plurality of the physical components and the logical components from a prior component; and

recording a time to access each path.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 23, 2015
From: EBAY INC.
To: PAYPAL, INC.
Reel/Frame 036169/0707 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 1, 2011
From: KUMAR, ABHINAV; AVALANI, BHAVEN
To: EBAY INC.
Reel/Frame 026063/0433 →