1. A computer-implemented method, comprising: operating an application server instance having a plurality of worker nodes, including for each of the plurality of worker nodes, managing one or more worker threads by a thread manager of the worker node, executing at least one program on a Java virtual machine (“JVM”) of the worker node to service a respective work request received by the application server instance, assigning to a worker thread of the worker node a task of the respective work request, the assigned worker thread generating status information based on a performance of the task assigned to the worker thread, and the assigned worker thread reporting the generated status information into a shared memory of the application server instance, the shared memory external to and shared by the plurality of worker nodes; wherein a first work request of the work requests received by the application server instance requests a performance of a first task having a stack of multiple subtasks, each subtask of the task corresponding to a respective depth in the stack; wherein a first worker thread in a first worker node of the plurality of worker nodes is assigned to the first task; wherein the first worker thread is instantiated by the thread manager of the first worker node to perform both reporting tasks and the subtasks in an interleaved manner; wherein the performing of reporting tasks includes the first worker thread reporting into the shared memory first status information generated based on a performance of one of the multiple subtasks, the reporting the first status information based on a selectable reporting depth and the corresponding depth in the stack of the one of the multiple subtasks; and exchanging status information in the shared memory from the application server instance to a monitoring console for monitoring of the application server instance.