Is there a way to Identify from the webMethods side for all the live APIs (Majorly Rest APIs) how we can identify the timings and which API is taking more time and other information?
Identify all the webMethods API timings, required for performance analysis.
Can we get the history of current/live all wM APIs for the last year?
Hi. Yes, you can turn on service logging globally from the IS Administrator. The breadcrumb trail is
Administration > Logging configuration > View service logger details > Edit service logger details
Set the Level field to Brief. Here is what the online help says about that field:
Note also there is HTTP logging that can be enabled with watt.server.httplog. In 10.5 it does not include elapsed time, but as of IS_10.15_Core_Fix6, it can be extended with a set of predefined fields, including elapsedTime. See the documentation for watt.server.httplog.fields.
Are you troubleshooting a performance issue or are you planning on actively and continuously monitoring the performance of your APIs?
I ask because, in addition to the options discussed here, you also have a couple of other options.
If you’re trying to find the root cause of a particular performance issue, then you may want to consider using a webMethods profiler. If, however, you’re hoping to monitor the performance of your APIs continuously, then using an observability agent on your Integration Server to send the data to an APM platform may be of interest. Depending on the agent, you may even get insights similar to what you would get from a profiler.
Full disclosure: I work for a company that offers both and I’d be happy to chat more if you have any questions.
For example, here’s a screenshot from Grafana + Tempo showing a list of API’s and top-level services executed on webMethods sorted by Duration: