Let us consider the example of a web application, where the following transactions are slow.
From the transaction flow, it is evident that the transaction slowed down on the Apache web server, PHP_BTM:8055. The question now is what type of processing on the Apache web server delayed the transaction in question. A closer look at the Apache web server icon in Figure 2 will answer this question as well! As indicated by Figure 2, the PHP_BTM:8055 server processed PHP methods for 22157 milliseconds. But which exact PHP method is increasing the processing time of the transaction on the server? To identify the same, let us zoom into the Apache web server by clicking on it in Figure 5.
This will invoke the Execution Analysis window of Figure 6. From the distribution pie chart in Figure 6, it is evident that over 50% of the transaction time was spent in PHP processing. The table below the pie chart in Figure 6 lists the exact methods that performed PHP processing or made the remote calls. A quick look at this table reveals that the Root PHP method, invoked a series of child methods and external calls, which together took nearly 42000 milliseconds to execute. However, the method itself took no time to execute (self execution time)!
Browsing the child methods called by the parent method reveals that the transaction spent nearly 35% of its time - i.e., 15000 ms - on the PHP method, ''sleep" (see Figure 7). This means that this is the method that is delaying the specialoffers transaction.
This way, the eG PHP profiler enables you to diagnose the root-cause of slowness in your PHP method calls using just a few mouse clicks!