هذا هو إصدار SQL لتقرير لوحة المعلومات لطلبات واجهة برمجة التطبيقات المجمعة.
يوضح هذا التقرير إحصائيات استخدام واجهة برمجة التطبيقات حسب التاريخ، ويتتبع كلاً من طلبات واجهة برمجة التطبيقات العادية وطلبات واجهة برمجة التطبيقات للمستخدم. يساعدك هذا التقرير على مراقبة أنماط استخدام واجهة برمجة التطبيقات على مثيل Discourse الخاص بك بمرور الوقت. يميز بين طلبات واجهة برمجة التطبيقات العادية وطلبات واجهة برمجة التطبيقات للمستخدم، ويعرض كلاهما بشكل منفصل مع العدد الإجمالي المجمع.
يتم الحصول على البيانات من جدول application_requests الذي يتتبع أنواع الطلبات المختلفة عبر النظام. بالنسبة لاستخدام واجهة برمجة التطبيقات، نركز على أنواع الطلبات 11 (واجهة برمجة تطبيقات عادية) و 12 (واجهة برمجة تطبيقات للمستخدم).
-- [params]
-- date :start_date = 2023-01-01
-- date :end_date = 2025-12-31
SELECT
ar.date,
-- API requests
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,
-- Total API requests
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
المعلمات:
- يقبل الاستعلام معلمتين،
:start_dateو:end_date، اللتين تحددان النطاق الزمني للتقرير. تقبل كلتا معلمتي التاريخ تنسيق التاريخYYYY-MM-DD.
النتائج
- date: تاريخ عدد الطلبات
- api: عدد طلبات واجهة برمجة التطبيقات العادية (req_type = 11)
- user_api: عدد طلبات واجهة برمجة التطبيقات للمستخدم (req_type = 12)
- total_api_requests: مجموع جميع طلبات واجهة برمجة التطبيقات
ما الفرق بين طلبات واجهة برمجة التطبيقات العادية وطلبات واجهة برمجة التطبيقات للمستخدم؟
- طلبات واجهة برمجة التطبيقات العادية (req_type = 11): هذه هي استدعاءات واجهة برمجة التطبيقات التي يتم إجراؤها على النظام والتي لا تتطلب مصادقة المستخدم. وهي تشمل نقاط نهاية واجهة برمجة التطبيقات العامة، وتكاملات النظام، أو خدمات الطرف الثالث التي تصل إلى البيانات العامة.
- طلبات واجهة برمجة التطبيقات للمستخدم (req_type = 12): هذه هي استدعاءات واجهة برمجة التطبيقات التي يتم إجراؤها مع مصادقة المستخدم، وتمثل عادةً الإجراءات التي يتم تنفيذها نيابة عن مستخدمين محددين وتتطلب استخدام مفتاح واجهة برمجة التطبيقات.
نتائج مثال
| 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 |