Logging endpoint in an on-demand code execution system
First Claim
1. A system comprising:
- a non-transitory data store including user-submitted code executable within an isolated execution environment on an on-demand code execution system, wherein the code includes a reference to a logging endpoint;
a computing device providing the isolated execution environment and configured to execute the user-submitted code, wherein execution of the user-submitted code causes the one or more computing devices to generate log data regarding the execution within the isolated execution environment and to transmit the log data to the logging endpoint;
a computing device comprising a processor and implementing the logging endpoint, wherein implementation of the logging endpoint is causes the computing device to;
receive the log data from the execution of the user-submitted code within the isolated execution environment;
in response to receiving the log data;
determine state information regarding a state of the on-demand code execution system at a time of receiving the log data from the execution of the user-submitted code within the isolated execution environment, the state information being inaccessible to the execution of the of the user-submitted code;
combine the received log data with the state information regarding the state of the on-demand code execution system at the time of receiving the log data to result in enriched log data;
determine an output location for the enriched log data; and
store the enriched log data at the determined output location.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are described for providing logging functionalities to code executing in an on-demand code execution system while minimizing the need to define such functionalities within the code. A logging endpoint is provided that can be called by an execution of code and passed information for logging. The logging endpoint can enrich the information with additional information, such as information regarding a state of an execution environment for the code (which additional information may not be accessible to the execution of code itself). The logging endpoint can then facilitate storage of the enriched logging information, such as by handling authentication to a storage endpoint. Thus, users of the system may author code that provides robust logging functionalities while minimizing the implementation of such functionalities within the authored code.
546 Citations
20 Claims
-
1. A system comprising:
-
a non-transitory data store including user-submitted code executable within an isolated execution environment on an on-demand code execution system, wherein the code includes a reference to a logging endpoint; a computing device providing the isolated execution environment and configured to execute the user-submitted code, wherein execution of the user-submitted code causes the one or more computing devices to generate log data regarding the execution within the isolated execution environment and to transmit the log data to the logging endpoint; a computing device comprising a processor and implementing the logging endpoint, wherein implementation of the logging endpoint is causes the computing device to; receive the log data from the execution of the user-submitted code within the isolated execution environment; in response to receiving the log data; determine state information regarding a state of the on-demand code execution system at a time of receiving the log data from the execution of the user-submitted code within the isolated execution environment, the state information being inaccessible to the execution of the of the user-submitted code; combine the received log data with the state information regarding the state of the on-demand code execution system at the time of receiving the log data to result in enriched log data; determine an output location for the enriched log data; and store the enriched log data at the determined output location. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer-implemented method comprising:
-
executing, within an isolated execution environment of an on-demand code execution system, user-submitted code, wherein the code includes a reference to a logging endpoint, and wherein execution of the user-submitted code causes generation of log data regarding the execution within the isolated execution environment and transmission of the log data to the logging endpoint; receiving, at the logging endpoint, the log data regarding the execution of the user-submitted code within the isolated execution environment; in response to receiving the log data; determining, at the logging endpoint, state information regarding a state of the on-demand code execution system at a time of receiving the log data from the execution of the user-submitted code within the isolated execution environment; combining, at the logging endpoint, the received log data with the state information regarding the state of the on-demand code execution system at the time of receiving the log data to result in enriched log data; and transmitting, from the logging endpoint, the enriched log data to an output location. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13)
-
-
14. Non-transitory computer-readable media comprising computer-executable instructions that, when executed on an on-demand code execution system comprising a processor, cause the on-demand code execution system to implement a logging endpoint configured to:
-
obtain log data transmitted from an isolated execution environment of the on-demand code execution system during execution of user-submitted code within the execution environment, wherein the user-submitted code includes a reference to a logging endpoint, and wherein execution of the user-submitted code causes generation of the log data regarding the execution within the isolated execution environment and transmission of the log data to the logging endpoint; in response to receiving the log data; determine state information regarding a state of the on-demand code execution system at a time of receiving the log data from the execution of the user-submitted code within the isolated execution environment; combine the received log data with the state information regarding the state of the on-demand code execution system at the time of receiving the log data to result in enriched log data; and transmit the enriched log data to an output location. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification