US 9,811,434 B1
Predictive management of on-demand code execution
Timothy Allen Wagner, Seattle, WA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Dec. 16, 2015, as Appl. No. 14/971,882.
Int. Cl. G06F 9/45 (2006.01); G06F 9/455 (2006.01); G06F 9/46 (2006.01); G06F 11/30 (2006.01); G06F 9/50 (2006.01); G06F 9/54 (2006.01)
CPC G06F 11/30 (2013.01) [G06F 8/43 (2013.01); G06F 8/433 (2013.01); G06F 8/443 (2013.01); G06F 8/4441 (2013.01); G06F 9/455 (2013.01); G06F 9/45516 (2013.01); G06F 9/5077 (2013.01); G06F 9/54 (2013.01); G06F 11/301 (2013.01); G06F 11/3003 (2013.01); G06F 11/3006 (2013.01)] 23 Claims
OG exemplary drawing
 
1. A computer-implemented method for monitoring code execution in an on-demand code execution environment, the on-demand code execution environment comprising at least one virtual machine instance executing an initialized operating system and awaiting requests to execute user-specified code within that operating system, the method comprising:
as implemented by one or more computing devices configured with specific computer-executable instructions,
determining a task on the on-demand code execution environment to be actively monitored, wherein the task corresponds to a set of user-defined code executable by the virtual machine instance, and wherein the task is determined based at least in part on a frequency of service calls to the task received at the on-demand code execution environment, each service call requesting execution of the task at the on-demand code execution environment;
associating an individual execution of the task on the on-demand code execution environment with active monitoring information, wherein the active monitoring information identifies the individual execution of the task;
modifying a service call, generated by the individual execution of the task, to include the active monitoring information, wherein the service call invokes at least one of an external service or the on-demand code execution environment;
identifying subsequent service calls, received at the on-demand code execution environment, that include the active monitoring information;
associating the subsequent service calls that include the active monitoring information with the individual execution of the task;
receiving a request to generate a profile from the task;
generating a task profile based at least in part on the individual execution of the task and on the subsequent service calls that include the active monitoring information, wherein the task profile indicates a relationship between the individual execution and the subsequent service calls; and
transmitting the task profile to a computing device of a requesting user for display to the requesting user.