IBM Support

REST API for Reverse Proxy Throughput returns 500

Question & Answer


Question

At the ISAM 8.0.1.3 Appliance, the REST API for Retrieving a summary of throughput for all Reverse Proxy instances will return a 500 response as shown below: $ curl -v -k -u admin:admin -H "Accept:application/json" -X GET https://192.168.136.10/an     alysis/reverse_proxy_traffic/throughput/?date=1453594869&duration=360 [1] 11148 $ * STATE: INIT => CONNECT handle 0x600056580; line 1028 (connection #-5000) * Hostname was NOT found in DNS cache *   Trying 192.168.136.10... * STATE: CONNECT => WAITCONNECT handle 0x600056580; line 1076 (connection #0) * Connected to 192.168.136.10 (192.168.136.10) port 443 (#0) * successfully set certificate verify locations: *   CAfile: /usr/ssl/certs/ca-bundle.crt   CApath: none * SSLv3, TLS handshake, Client hello (1): * STATE: WAITCONNECT => PROTOCONNECT handle 0x600056580; line 1189 (connection #0) * SSLv3, TLS handshake, Server hello (2): * SSLv3, TLS handshake, CERT (11): * SSLv3, TLS handshake, Server key exchange (12): * SSLv3, TLS handshake, Request CERT (13): * SSLv3, TLS handshake, Server finished (14): * SSLv3, TLS handshake, CERT (11): * SSLv3, TLS handshake, Client key exchange (16): * SSLv3, TLS change cipher, Client hello (1): * SSLv3, TLS handshake, Finished (20): * SSLv3, TLS change cipher, Client hello (1): * SSLv3, TLS handshake, Finished (20): * SSL connection using TLSv1.2 / DHE-RSA-AES256-SHA256 * Server certificate: *        subject: CN=SecondaryM.tivlab.austin.ibm.com *        start date: 2016-01-21 20:14:16 GMT *        expire date: 2017-01-21 20:14:16 GMT *        issuer: CN=SecondaryM.tivlab.austin.ibm.com *        SSL certificate verify result: self signed certificate (18), continuing anyway. * STATE: PROTOCONNECT => DO handle 0x600056580; line 1208 (connection #0) * Server auth using Basic with user 'admin' > GET /analysis/reverse_proxy_traffic/throughput/?date=1453594869 HTTP/1.1 > Authorization: Basic YWRtaW46YWRtaW4= > User-Agent: curl/7.37.1 > Host: 192.168.136.10 > Accept:application/json > * STATE: DO => DO_DONE handle 0x600056580; line 1281 (connection #0) * STATE: DO_DONE => WAITPERFORM handle 0x600056580; line 1407 (connection #0) * STATE: WAITPERFORM => PERFORM handle 0x600056580; line 1420 (connection #0) * HTTP 1.1 or later with persistent connection, pipelining supported < HTTP/1.1 500 Internal Server Error < X-FRAME-OPTIONS: SAMEORIGIN < Cache-Control: no-cache, no-store < Pragma: no-cache < Content-Type: application/json < Content-Language: en-US < Content-Length: 0 < Set-Cookie: LtpaToken2=TmwNkZQHbiywjZ5wWf3tB14KpCCTqj6acg3m35T7PJlK5KFmLhwuN5/vU6F9bhDt     7EJQ7GEjQiVzlzmcHjSF6kBoEwz8uoM8b/1y333MypkOR8zmiGUKSmtzgscWwSWDkQ8QVqijroopuj23pvFUJdt0X     qBxUL5ix3RrFyJHD/0dZx4BTa6x1mxAxttn3iVdUgJQHHzGPcBtr7T0Cy2sB36v5kTLpc8NzuC452c8Ee8glIy8Zh     z4JKsJ+cVgBeGvky+1SID7RxWsdsasSDWLLyFo5euABORCsVieVKCJuKK6ZK4fun2u06DQlcoOHrs; Path=/; S     ecure; HttpOnly < Set-Cookie: LtpaToken2=TmwNkZQHbiywjZ5wWf3tB14KpCCTqj6acg3m35T7PJlK5KFmLhwuN5/vU6F9bhDt     7EJQ7GEjQiVzlzmcHjSFwz8uoM8b/1y333sdajdMypkOR8zmiGUKSmtzgscWwSWDkQ8QVqijroopuj23pvFUJdt0X     qBxUL5ix3RrFyJHD/0dZx4BTa6x1mxAxttn3iVdUgJQHHzGPcBtr7T0Cy2sB36v5kTLpc8NzuC452c8Ee8glIy8Zh     z4JKsJ+cVgBeGvky+1SVV9GbvID7RxWSDWLLyFo5esdsdsuABORCsViKK6ZK4fun2u06DQlcoOHrs; Path=/; S     ecure; HttpOnly < Connection: Close < Date: Sun, 24 Jan 2016 19:15:11 GMT < Expires: Thu, 01 Dec 1994 16:00:00 GMT < * STATE: PERFORM => DONE handle 0x600056580; line 1590 (connection #0) * Closing connection 0 * The cache now contains 0 members * SSLv3, TLS alert, Client hello (1):

Cause

The issue in the documentation is as follows:

In Monitoring: Analysis and Diagnostics -> Reverse Proxy Graphs -> Reverse Proxy Throughput  -> Retrieving a summary of throughput for all Reverse Proxy Instances:

The request url should be : Https://{appliance_hostname}/analysis/reverse_proxy_traffic/throughput_widget?date={date}&duration={duration}

The response body should be:

"Instance" instead of "a"
"b", that is the interval of the records, doesn't appear to be returned anymore.
"total_hits" instead of "h"
"start_time" instead of "t".

Answer

Switch the endpoint request URL in the REST API fromhttps://{appliance_hostname}/analysis/reverse_proxy_traffic/throughput/?date={date}&duration={duration} to https://{appliance_hostname}/analysis/reverse_proxy_traffic/throughput_widget?date={date}&duration={duration}

This is an example return json


[{"start_time":1454378400,"instance":"test2","offset":36000000,"total_hits":0,"records":0,"tzname":"GMT","bucket_size":600}, {"start_time":1454378400,"instance":"test","offset":36000000,"total_hits":39,"records":{"t":1454460600,"e":39},"tzname":"GMT","bucket_size":600}]

[{"Product":{"code":"SSZU8Q","label":"IBM Security Access Manager"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"Documentation","Platform":[{"code":"PF004","label":"Appliance"}],"Version":"Version Independent","Edition":"","Line of Business":{"code":"LOB24","label":"Security Software"}},{"Product":{"code":"SSZU8Q","label":"IBM Security Access Manager"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":" ","Platform":[{"code":"","label":""}],"Version":"","Edition":"","Line of Business":{"code":"LOB24","label":"Security Software"}},{"Product":{"code":"SSPREK","label":"Tivoli Access Manager for e-business"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":" ","Platform":[{"code":"","label":""}],"Version":"","Edition":"","Line of Business":{"code":"LOB24","label":"Security Software"}}]

Document Information

Modified date:
16 June 2018

UID

swg21976954