Certains contenus de cette application ne sont pas disponibles pour le moment.
Si cette situation persiste, veuillez nous contacter àObservations et contact
1. (WO2019005330) ENREGISTREMENT ET RELECTURE DE TRACES DE DÉPLACEMENT TEMPOREL DISTRIBUÉES
Note: Texte fondé sur des processus automatiques de reconnaissance optique de caractères. Seule la version PDF a une valeur juridique

CLAIMS

1. A system that performs a distributed trace recording, comprising:

a first computer system comprising computer-executable instructions configured to perform at least the following, when executed:

record a first trace of execution of a first entity at one or more processors the first computer system, including recording into the first trace a first plurality of orderable events that occur during execution of the first entity, the first trace recorded at fidelity that enables complete replay of the recorded execution of the first entity;

identify sending of a message from the first entity to a second entity external to the first computer system; and

based on identifying the sending of the message, record first information into the first trace that at least partially orders sending of the message among the first plurality of orderable events; and

a second computer system comprising computer-executable instructions configured to perform at least the following, when executed:

concurrent to the first computer system recording the first trace of execution of the first entity, record a second trace of execution of the second entity at one or more processors of the second computer system, including recording into the second trace a second plurality of orderable events that occur during execution of the second entity, the second trace recorded at fidelity that enables complete replay of the recorded execution of the second entity;

identify receipt of the message by the second entity; and

based on identifying the receipt of the message, record second information into the second trace that at least partially orders receipt of the message among the second plurality of orderable events, and wherein the first information and the second information identify at least a partial ordering of the first plurality of orderable events versus the second plurality of orderable events.

2. The system of claim 1, wherein recording the first trace of execution of the first entity comprises concurrently recording at least one other entity executing at the first computer system, and wherein at least two of the first plurality of orderable events order events across the first entity and the at least one other entity.

3. The system of claim 1, wherein recording the first trace of execution of the first entity comprises recording less than an entire execution of the first entity.

4. The system of claim 1, wherein recording the second trace of execution of the second entity comprises recording a subset of the execution of the second entity corresponding to code executed to receive the message, while refraining from recording at least a portion of the execution of the second entity.

5. The system of claim 1, wherein recording the first information into the first trace comprises inserting a message identifier into the message and recording the message identifier into the first trace, and wherein recording the second information into the second trace comprises extracting the message identifier from the message and recording the message identifier into the second trace.

6. The system of claim 5, wherein inserting the message identifier into the message comprises one of:

inserting the message identifier by the first entity;

inserting the message identifier by a library used by the first entity; or

inserting the message identifier by a debugger.

7. The system of claim 1, wherein recording the first information into the first trace comprises recording into the first trace an identification of an application programming interface (API) call used to send the message and one or more parameters used in the call, and wherein recording the second information into the second trace comprises recording into the second trace the identification of the API call used to send the message and the one or more parameters used in the call.

8. The system of claim 7, wherein recording the one or more parameters comprises at least one of:

recording one or more values that were passed to a function; or

recording one or more implicit parameters.

9. The system of claim 1, the second computer system also comprising computer-executable instructions configured to perform at least the following, when executed:

identify sending of a reply message from the second entity to the first entity; and based on identifying the sending of the reply message, record third information into the second trace that at least partially orders sending of the reply message among the second plurality of orderable events and the receipt of the message.

10. The system of claim 9, the first computer system also comprising computer-executable instructions configured to perform at least the following, when executed:

identify receipt of the reply message by the first entity; and

based on identifying receipt of the reply message, record fourth information into the first trace that at least partially orders receipt of the reply message among the first plurality of orderable events and the sending of the message.

11. The system of claim 10, the first computer system also comprising computer-executable instructions configured to perform at least the following, when executed:

match the message with the reply message one or more of the first information, the second information, the third information, or the fourth information.

12. The system of claim 1, wherein a machine boundary between the first computer system and the second computer system comprises a hypervisor, and wherein the first plurality of orderable events and the second plurality of orderable events share a set of sequencing numbers when recorded in the first and second traces.

13. A computer system, comprising:

one or more processors; and

one or more computer-readable media having stored thereon computer-executable instructions that are executable by the one or more processors to replay a distributed trace recording, including computer-executable instructions that are executable to perform at least the following:

receive a first trace of execution of a first entity at a first computer system, the first trace including a first plurality of orderable events that occurred during execution of the first entity at the first computer system, the first trace recorded at fidelity that enables complete replay of the recorded execution of the first entity, the first trace including first information that at least partially orders, among the first plurality of orderable events, sending of a message to a second entity at a second computer system;

receive a second trace of execution of the second entity at the second computer system, the second trace including a second plurality of orderable events that occurred during execution of the second entity at the second computer system, the second trace recorded at fidelity that enables complete replay of the recorded execution of the second entity, the second trace including second information that at least partially orders, among the second plurality of orderable events, receipt of the message from the first entity at the first computer system; and

based on the first trace and the second trace, replay execution of at least a portion of the first entity and the second entity, including presenting at least one of the first plurality of orderable events relative to at least one of the second plurality of orderable events based on the first information in the first trace and the second information in the second trace.

14. The computer system of claim 13, the computer-executable instructions also being executable to match sending of the message from the first entity with receipt of the message by the second entity.

15. The computer system of claim 13, wherein the first trace also includes third information that at least partially orders receipt of a reply message by the first entity and the second trace also includes fourth information that at least partially orders sending of the reply message by the second entity, and wherein the computer-executable instructions are also executable to match at least one of:

sending of the message by the first entity with receipt of the reply message by the first entity; or

sending of the message by the first entity with sending of the reply message by the second entity.