Endpoint performance
This report provides a summary of the average and maximum runtime for each endpoint over the past 8 days. It helps in analyzing the performance of endpoints by comparing daily runtime metrics.
Key Components:
Endpoint (max 100 chars):
Displays the endpoint's name or identifier, truncated to a maximum of 100 characters.
Daily Metrics:
Today AVG / MAX: Shows the average and maximum runtime for today.
Yesterday AVG / MAX: Shows the average and maximum runtime for yesterday.
2 days ago AVG / MAX: Shows the average and maximum runtime for two days ago.
…
8 days ago AVG / MAX: Shows the average and maximum runtime for eight days ago.
This report allows users to monitor and compare the performance of endpoints over the last eight days. By providing both average and maximum runtime for each day, it helps identify trends, detect anomalies, and assess the performance consistency of different endpoints.

Oracle
SELECT
SUBSTR(ENDPOINT, 1, 100) AS "ENDPOINT (max 100 chars)",
CAST(ROUND(AVG(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) THEN RUNTIME END), 2) AS VARCHAR2(20))
|| ' / ' ||
CAST(ROUND(MAX(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) THEN RUNTIME END), 2) AS VARCHAR2(20)) AS "Today AVG / MAX",
CAST(ROUND(AVG(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 1 THEN RUNTIME END), 2) AS VARCHAR2(20))
|| ' / ' ||
CAST(ROUND(MAX(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 1 THEN RUNTIME END), 2) AS VARCHAR2(20)) AS "Yesterday AVG / MAX",
CAST(ROUND(AVG(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 2 THEN RUNTIME END), 2) AS VARCHAR2(20))
|| ' / ' ||
CAST(ROUND(MAX(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 2 THEN RUNTIME END), 2) AS VARCHAR2(20)) AS "2 days ago AVG / MAX",
CAST(ROUND(AVG(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 3 THEN RUNTIME END), 2) AS VARCHAR2(20))
|| ' / ' ||
CAST(ROUND(MAX(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 3 THEN RUNTIME END), 2) AS VARCHAR2(20)) AS "3 days ago AVG / MAX",
CAST(ROUND(AVG(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 4 THEN RUNTIME END), 2) AS VARCHAR2(20))
|| ' / ' ||
CAST(ROUND(MAX(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 4 THEN RUNTIME END), 2) AS VARCHAR2(20)) AS "4 days ago AVG / MAX",
CAST(ROUND(AVG(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 5 THEN RUNTIME END), 2) AS VARCHAR2(20))
|| ' / ' ||
CAST(ROUND(MAX(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 5 THEN RUNTIME END), 2) AS VARCHAR2(20)) AS "5 days ago AVG / MAX",
CAST(ROUND(AVG(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 6 THEN RUNTIME END), 2) AS VARCHAR2(20))
|| ' / ' ||
CAST(ROUND(MAX(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 6 THEN RUNTIME END), 2) AS VARCHAR2(20)) AS "6 days ago AVG / MAX",
CAST(ROUND(AVG(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 7 THEN RUNTIME END), 2) AS VARCHAR2(20))
|| ' / ' ||
CAST(ROUND(MAX(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 7 THEN RUNTIME END), 2) AS VARCHAR2(20)) AS "7 days ago AVG / MAX",
CAST(ROUND(AVG(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 8 THEN RUNTIME END), 2) AS VARCHAR2(20))
|| ' / ' ||
CAST(ROUND(MAX(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) - 8 THEN RUNTIME END), 2) AS VARCHAR2(20)) AS "8 days ago AVG / MAX"
FROM
LOG_ENDPOINT
WHERE
TIME_CREATED >= TRUNC(SYSDATE) - 8
GROUP BY
SUBSTR(ENDPOINT, 1, 100)
ORDER BY
MAX(CASE WHEN TRUNC(TIME_CREATED) = TRUNC(SYSDATE) THEN RUNTIME END) DESC
MSSQL
SELECT
SUBSTRING(ENDPOINT, 1, 100) AS [ENDPOINT (max 100 chars)],
CAST(ROUND(AVG(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(GETDATE() AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20))
+ ' / ' +
CAST(ROUND(MAX(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(GETDATE() AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20)) AS [Today AVG / MAX],
CAST(ROUND(AVG(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -1, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20))
+ ' / ' +
CAST(ROUND(MAX(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -1, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20)) AS [Yesterday AVG / MAX],
CAST(ROUND(AVG(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -2, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20))
+ ' / ' +
CAST(ROUND(MAX(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -2, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20)) AS [2 days ago AVG / MAX],
CAST(ROUND(AVG(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -3, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20))
+ ' / ' +
CAST(ROUND(MAX(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -3, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20)) AS [3 days ago AVG / MAX],
CAST(ROUND(AVG(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -4, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20))
+ ' / ' +
CAST(ROUND(MAX(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -4, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20)) AS [4 days ago AVG / MAX],
CAST(ROUND(AVG(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -5, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20))
+ ' / ' +
CAST(ROUND(MAX(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -5, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20)) AS [5 days ago AVG / MAX],
CAST(ROUND(AVG(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -6, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20))
+ ' / ' +
CAST(ROUND(MAX(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -6, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20)) AS [6 days ago AVG / MAX],
CAST(ROUND(AVG(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -7, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20))
+ ' / ' +
CAST(ROUND(MAX(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -7, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20)) AS [7 days ago AVG / MAX],
CAST(ROUND(AVG(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -8, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20))
+ ' / ' +
CAST(ROUND(MAX(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(DATEADD(DAY, -8, GETDATE()) AS DATE) THEN RUNTIME END), 2) AS VARCHAR(20)) AS [8 days ago AVG / MAX]
FROM
LOG_ENDPOINT
WHERE
TIME_CREATED >= DATEADD(DAY, -8, GETDATE())
GROUP BY
SUBSTRING(ENDPOINT, 1, 100)
ORDER BY
MAX(CASE WHEN CAST(TIME_CREATED AS DATE) = CAST(GETDATE() AS DATE) THEN RUNTIME END) DESC