how can we get the avg time execution min time execution and total hit of a particular service

Hello All,

please help me create the service which return the total hit, avg execution time, max execution time min exection time on particular IS.

Thanks in advance.

Are you looking for a particular custom flow service that you need the execution time for the session?

You can check the internal services that IS does with in the WmRoot package wm.server services and make use of pub.math services for the logic.

HTH,
RMG

Thanks rmg. I will check.

Happy Holidays!

Happy Holiday…

Hi All,

I had almost same kind of requirement where in I need the average time taken by few particular services.
I have checked services folder of WmRoot package but i couldn’t find anything helpful. I mean i am not getting any mathematical values over which i could have performed some calculations.

Regards,
Syed Ahmed

Hi,

You can use WmPublic/pub.date:getCurrentDateString at start and end of a service to get the execution time (ms) taken for the service by doing some mathematical operation (startTime-endTime)

For other parameters like total hit, avg time execution we should think of writing custom services :slight_smile:

On IS page (Service Usage) we can see Cache and Prefetch Information like Last Cache Hit, Cache Hits, Cache Hits/
Total Count and so on.

Let me know if others have a different ideas or views.

Thanks for the reply Mahesh,

But my requirement is a bit different like i want to know is there any in-Built service/Coustum Service using which we can get the Avg time taken by any other serivce which is present on our IS.

We can’t implement this Date Scenario in each and every service right.

Waiting for an intresting reply from you :smiley:

Regards,
Syed Ahmed

for each service, you can change the audit settings. Once turned on, it will log the start end time in the service log. to mine useful info from service log won’t be very easy.
Not sure this will work for you.
Most likely you have to build tracking code, and call it from each service you are interested.
HTH,

Yes enable service auditing would be the easiest way to capture the time stamps but having said that this requires having MWS/Monitor components installed for accessing audit portal.

HTH,
RMG

@Tong Wang: Many thanks for the input. So, in that case we need to build a custom tracking code? Am i right?
like for each service implement logging(Using WriteToFile Append) and save it into a file and get the details using custom Service and do the neccesary things?

@rmg: if we enable Service audting we will have performance issues i believe there are lot of services and if we save those details in Db then we will have a big impact on server performance.

Regards,
Syed Ahmed

Yes enable auditing gives pros and cons and ofcourse you only need to do the only services you want.

For getting response times yes you need to write the session info into the custom logs/file and capture it begin and end of service with appropriate file name.

HTH,
RMG

Syed,
I think you should go with ‘Service auditing’ keeping the following in mind…

  1. Overall performance - yes, there will be an impact, but even if you write a custom logic, you would want to capture service start, end, logging fields etc.,

  2. Service log - You can avoid database & choose flat file to capture service log. Even if you go with custom logic, you would want to capture these info into file system, which does IO operations over network.

  3. You could enable auditing only for the top-level service, which will avoid doing this for all the other services.

  4. You can’t anyway save the pipeline info into flat file

  5. You can log selected fields from your service signature.

  6. Custom value for auditing context, which is useful while searching for specific transactions through WmMonitor page.

If you write to custom log file, it just not stops there. You would have to think of archiving the log files, think of how to search for specific transaction, build a UI, search functionality (if not CAF UI, this would be manual which support team have to handle, knowledge transfer, maintenance, risk of not using public services etc.,

When something is already available, and choose options carefully, you don’t have to reinvent the whole wheel again.

HTH
Senthil

Have a look at WMSERVICE table if service audit is enabled for monitoring

Take a look at this code sample package RichStatistics. I tried it in my local instance and it works well.

http://techcommunity.softwareag.com/web/guest/pwiki/-/wiki/Main/RichStatistics%20-%20how%20to%20easly%20monitor%20the%20service%20activity%20on%20your%20Integration%20Server

Thankyou all for helping me out :slight_smile:

@Mangat: Thanks for the link it would be verymuch helpful :slight_smile: