Questa è una versione SQL del Report Dashboard per le Richieste API consolidate.
Questo report mostra le statistiche di utilizzo dell’API per data, monitorando sia le richieste API regolari che le richieste API utente. Questo report ti aiuta a monitorare i pattern di utilizzo dell’API sulla tua istanza Discourse nel tempo. Distingue tra richieste API regolari e richieste API utente, mostrando entrambe separatamente insieme al conteggio totale combinato.
I dati provengono dalla tabella application_requests che tiene traccia di diversi tipi di richieste in tutto il sistema. Per l’utilizzo dell’API, ci concentriamo sui tipi di richiesta 11 (API regolare) e 12 (API utente).
-- [params]
-- date :start_date = 2023-01-01
-- date :end_date = 2025-12-31
SELECT
ar.date,
-- Richieste API
SUM(CASE WHEN ar.req_type = 11 THEN ar.count ELSE 0 END) AS api,
SUM(CASE WHEN ar.req_type = 12 THEN ar.count ELSE 0 END) AS user_api,
-- Richieste API totali
SUM(CASE WHEN ar.req_type IN (11, 12) THEN ar.count ELSE 0 END) AS total_api_requests
FROM
application_requests ar
WHERE
ar.date BETWEEN :start_date AND :end_date
GROUP BY
ar.date
ORDER BY
ar.date DESC
Parametri:
- La query accetta due parametri,
:start_datee:end_date, che definiscono l’intervallo di date per il report. Entrambi i parametri di data accettano il formato dataAAAA-MM-GG.
Risultati
- date: Data dei conteggi delle richieste
- api: Conteggio delle richieste API regolari (req_type = 11)
- user_api: Conteggio delle richieste API utente (req_type = 12)
- total_api_requests: Somma di tutte le richieste API
Qual è la differenza tra richieste API regolari e richieste API utente?
- Richieste API regolari (req_type = 11): Queste sono chiamate API effettuate al sistema che non richiedono l’autenticazione dell’utente. Includono endpoint API pubblici, integrazioni di sistema o servizi di terze parti che accedono a dati pubblici.
- Richieste API utente (req_type = 12): Queste sono chiamate API effettuate con l’autenticazione dell’utente, rappresentano tipicamente azioni eseguite per conto di utenti specifici e richiedono l’uso di una chiave API.
Risultati di esempio
| date | api | user_api | total_api_requests |
|---|---|---|---|
| 2023-09-15 | 34,582 | 7,249 | 41,831 |
| 2023-09-14 | 32,104 | 6,893 | 38,997 |
| 2023-09-13 | 33,756 | 7,122 | 40,878 |
| 2023-09-12 | 35,122 | 8,562 | 43,684 |
| 2023-09-11 | 36,475 | 9,234 | 45,709 |
| 2023-09-10 | 12,563 | 3,298 | 15,861 |
| 2023-09-09 | 10,782 | 2,982 | 13,764 |
| 2023-09-08 | 33,892 | 7,456 | 41,348 |
| 2023-09-07 | 31,765 | 7,120 | 38,885 |
| 2023-09-06 | 32,451 | 7,321 | 39,772 |