Actions

Adding Benchmarking to your Routing scripts: Difference between revisions

No edit summary
(Added end in do loop)
Line 18: Line 18:
Three lines need to be added. <br>
Three lines need to be added. <br>
At the start of the script:<br>  
At the start of the script:<br>  
<pre>require 'benchmark'
  require 'benchmark'
</pre>
In the main class, before the function to evaluate:<br>  
In the main class, before the function to evaluate:<br>  
<pre>
  # Start benchmarking
   bm = Benchmark.measure do
   bm = Benchmark.measure do
</pre>
In the main class, after the function to evaluate:<br>  
In the main class, after the function to evaluate:<br>  
<pre>
  end #End benchamrking 
   log_trace 3, "It took #{bm.real.to_s[0..7]} seconds to do this function"
   log_trace 3, "It took #{bm.real.to_s[0..7]} seconds to do this function"
</pre>
This will print in the gateway application log the time it took to run this function.
This will print in the gateway application log the time it took to run this function.


<br>
<br>
Click here to know [[How_to_troubleshoot_call_routing#Using_the_applications_log_files|how to get the log files]]
Click here to know [[How_to_troubleshoot_call_routing#Using_the_applications_log_files|how to get the log files]]

Revision as of 08:25, 31 March 2021

This article applies to: Product Version
ProSBC 3.1
Tmedia 2.9, 2.10, 3.0, 3.2

Routing scripts need to be well designed to allow for maximum performance of a system.
To help evaluating the performance of a script (or part of a script), you can use this benchmarking tool.

Three lines need to be added.
At the start of the script:

 require 'benchmark'

In the main class, before the function to evaluate:

 # Start benchmarking
 bm = Benchmark.measure do

In the main class, after the function to evaluate:

 end #End benchamrking  
 log_trace 3, "It took #{bm.real.to_s[0..7]} seconds to do this function"

This will print in the gateway application log the time it took to run this function.


Click here to know how to get the log files