Dynamic Logic Statistics

This integration point delivers statistics about the run of dynamic logic units. The statistics are gathered while the Oracle Health Insurance applications are running. This integration point can be used to get insight into the statistics.

The following use cases are supported:

  • Retrieve the top-N of the most run dynamic logics, where N is a configurable number. If not specified, N=10.

  • Retrieve the top-N of the longest running dynamic logics, where N is a configurable number. If not specified, N=10.

  • Retrieve the top-N of the allocated memory, where N is a configurable number. If not specified, N=10.

  • Retrieve the top-N of the retrieved rows, where N is a configurable number. If not specified, N=10.

  • Restrict to a single dynamic logic code.

The statistics presented are for all the nodes in the cluster together.

The integration point provides HTTP status codes as defined in the Response Messages page of the Developer Guide.

Operations

GET

/dynamiclogicstatistics retrieves the different links to see the dynamic logic statistics.

GET

/dynamiclogicstatistics/{dynamicLogicCode} retrieves the dynamic logic statistics based on provided Dynamic Logic Code.

GET

/dynamiclogicstatistics/elapsed retrieves Dynamic Logic Statistic data sorted over total elapsed time.

GET

/dynamiclogicstatistics/executions retrieves Dynamic Logic Statistics data sorted over total number of dynamic logic executions.

GET

/dynamiclogicstatistics/allocatedmemory retrieves Dynamic Logic Statistics data sorted over over total memory allocated.

GET

/dynamiclogicstatistics/reset clears the cache for Dynamic Logic Statistics data.

Statistics Overview

The GET request on http://[hostName]:[portNumber]/[api-context-root]/dynamiclogicstatistics retrieves an overview of the dynamic logic statistics.

Example Response Message for Dynamic Logic Statistics
{
  "items": [
    {
      "name": "elapsed",
      "links": [
        {
          "rel": "canonical",
          "href": "{apiurl}/dynamiclogicstatistics/elapsed?numberOfResults=\{numberOfResults}",
          "templated": true
        }
      ]
    },
    {
      "name": "executions",
      "links": [
        {
          "rel": "canonical",
          "href": "{apiurl}/dynamiclogicstatistics/executions?numberOfResults=\{numberOfResults}",
          "templated": true
        }
      ]
    },
    {
      "name": "allocatedmemory",
      "links": [
        {
          "rel": "canonical",
          "href": "{apiurl}/dynamiclogicstatistics/allocatedmemory?numberOfResults=\{numberOfResults}",
          "templated": true
        }
      ]
    },
    {
      "name": "retrievedrows",
      "links": [
        {
          "rel": "canonical",
          "href": "{apiurl}/dynamiclogicstatistics/retrievedrows?numberOfResults=\{numberOfResults}",
          "templated": true
        }
      ]
    },
    {
      "name": "single",
      "links": [
        {
          "rel": "canonical",
          "href": "{apiurl}/dynamiclogicstatistics/\{dynamicLogicCode}",
          "templated": true
        }
      ]
    },
    {
      "name": "reset",
      "links": [
        {
          "rel": "dynamiclogicstatistics:reset",
          "href": "{apiurl}/dynamiclogicstatistics/reset"
        }
      ]
    }
  ],
  "links": [
    {
      "rel": "self",
      "href": "<self link>"
    }
  ]
}

Statistics By Total Elapsed Time

The GET request on http://[hostName]:[portNumber]/[api-context-root]/dynamiclogicstatistics/elapsed retrieves the statistics ordered by total elapsed time per dynamic logic code.

The optional request parameter numberOfResults controls the number of items to be returned. The top numberOfResults with the highest total is returned in descending order of total run time. When not specified, 10 results are returned.

The request returns the following attributes per dynamic logic.

Table 1. Dynamic Logic Statistics by Elapsed Time
Attribute Description

code

<dynamicLogicCode>

totalElapsedTime

total elapsed time in milliseconds

totalExecutions

total number of dynamic logic runs

averageElapsedTime

<average elapsed time in nanoseconds

executionCount0

total number of dynamic logic runs with elapsed time < 0.1 milliseconds

executionCount1

total number of dynamic logic runs with elapsed time >= 0.1 and < 1 milliseconds

executionCount10

total number of dynamic logic runs with elapsed time >= 1 and < 10 milliseconds

executionCount100

total number of dynamic logic runs with elapsed time >= 10 and < 100 milliseconds

executionCount1000

total number of dynamic logic runs with elapsed time >= 100 and < 1000 milliseconds

executionCount10000

total number of dynamic logic runs with elapsed time >= 1000 and < 10000 milliseconds

executionCountLong

total number of dynamic logic runs with elapsed time >= 10000 milliseconds

totalAllocatedMemory

total amount of memory allocated in kilobytes by dynamic logic for all the runs

maxAllocatedMemory

highest amount of memory allocated in kilobytes by dynamic logic in a single run

averageAllocatedMemory

average amount of memory allocated in kilobytes by dynamic logic for all the runs

queryCount

total number of queries started while running the dynamic logic

retrievedRowsCount

total number of rows retrieved for all the queries run while running the dynamic logic

maxResultSetSize

highest number of rows retrieved among all the queries run

averageRowsCount

average number of rows retrieved while running the dynamic logic

Example Response Message for top Dynamic Logic Statistics
    "items": [
        {
            "averageElapsedTime": 440772,
            "maxResultSetSize": 0,
            "code": "DYLO_CODE_1",
            "totalExecutions": 40,
            "maxAllocatedMemory": 585,
            "queryCount": 0,
            "executionCount100": 0,
            "executionCount1000": 0,
            "averageAllocatedMemory": 27,
            "executionCount10000": 0,
            "executionCountLong": 0,
            "executionCount10": 2,
            "totalElapsedTime": 17,
            "executionCount1": 24,
            "averageRowsCount": 0,
            "retrievedRowsCount": 0,
            "executionCount0": 14,
            "totalAllocatedMemory": 1095
        },
        {
            "averageElapsedTime": 2734205,
            "maxResultSetSize": 0,
            "code": "DYLO_CODE_2",
            "totalExecutions": 5,
            "maxAllocatedMemory": 2327,
            "queryCount": 0,
            "executionCount100": 0,
            "executionCount1000": 0,
            "averageAllocatedMemory": 552,
            "executionCount10000": 0,
            "executionCountLong": 0,
            "executionCount10": 2,
            "totalElapsedTime": 13,
            "executionCount1": 3,
            "averageRowsCount": 0,
            "retrievedRowsCount": 0,
            "executionCount0": 0,
            "totalAllocatedMemory": 2759
        }
    ]

Possible return statuses:

  • 200: The dynamic logic statistics does exist.

  • 204: The dynamic logic statistics does not exist.

Statistics By Total Run Count

The GET request on http://[hostName]:[portNumber]/[api-context-root]/dynamiclogicstatistics/executions retrieves statistics ordered by the total number of runs per dynamic logic code.

The request parameters and response message are same as described in the previous section. The only difference is the ordering. The response now contains the statistics in descending order of total number of runs per dynamic logic code.

Statistics By Total Allocated Memory

The GET request on http://[hostName]:[portNumber]/[api-context-root]/dynamiclogicstatistics/allocatedmemory retrieves the dynamic logic statistics ordered by total allocated memory per dynamic logic code.

The request parameters and response message are same as described in the previous section. The only difference is the ordering. The response now contains the statistics in descending order of allocated memory.

Statistics By Retrieved Rows Count

The GET request on http://[hostName]:[portNumber]/[api-context-root]/dynamiclogicstatistics/retrievedrows retrieves the dynamic logic statistics ordered by retrieved rows count per dynamic logic code.

The request parameters and response message are same as described in the previous section. The only difference is the ordering. The response now contains the statistics in descending order of allocated memory.

Statistics for a Single Dynamic Logic

The GET request on http://[hostName]:[portNumber]/[api-context-root]/dynamiclogicstatistics/{dynamicLogicCode} retrieves the dynamic logic statistics for a single dynamic logic.

This call retrieves the dynamic logic statistics for the given dynamic logic code. The response is same as described in the previous section.

Possible return statuses:

  • 200: The dynamic logic code does exist.

  • 404: The dynamic logic code does not exist.

    • This status is also used if the dynamic logic code did not run.

Reset Statistics

The POST request on http://[hostName]:[portNumber]/[api-context-root]/dynamiclogicstatistics/reset clears all the existing statistics and resets them. The system does not return a response. The status is 204.

Authorization

This API requires a grant for access restriction 'dynamiclogicstatistics IP'.