Skip to main content
#P1638

GET /v2/redis-accounting/stats

Get Redis Statistics

این اندپوینت آمار کلی Redis را در حوزه سیستم حسابداری استخراج می‌کند. شامل تعداد اسناد، تعداد ایندکس‌ها، تعداد مانده‌ها و میزان حافظه مصرف شده Redis. این روت برای استفاده داخلی (Ops, Engineering, Monitoring) طراحی شده است.

Request Overview

URL: /v2/redis-accounting/stats
Method: GET
Middleware: authWithJwt, shamsiDate
Controller: RedisAccountingController@getRedisStats

Authentication

این اندپوینت کاملاً محافظت‌شده است. فقط کاربران احراز هویت شده و دارای JWT معتبر دسترسی دارند.

Request Parameters

بدون ورودی. این روت هیچ query یا body ندارد.

Response (Success)

Field Type Description
success boolean True در صورت موفقیت
data.total_documents integer تعداد کل اسناد ذخیره‌شده در Redis (کلیدهای accounting:doc:*)
data.total_indexes integer تعداد کل ایندکس‌های Redis (کلیدهای accounting:docs:*)
data.total_balances integer تعداد کل کلیدهای مانده (balance:*)
data.memory_usage string حجم حافظه مصرف‌شده Redis به صورت human-readable (مثلاً 5.21M)
{
  "success": true,
  "data": {
    "total_documents": 3412,
    "total_indexes": 128,
    "total_balances": 904,
    "memory_usage": "6.12M"
  }
}
  

Response (Server Error)

{
  "success": false,
  "message": "خطا در دریافت آمار: Redis connection lost"
}
  

Internal Architecture Notes

برای استخراج آمار، سرویس داخلی redisAccountingService از دستور Redis::keys استفاده می‌کند. این عملیات نمایی و غیرمقیاس‌پذیر است و فقط برای محیط‌های داخلی مناسب است (Production-safe only when dataset is controlled).

Category Key Pattern Description
Documents accounting:doc:* سندهای ذخیره‌شده
Indexes accounting:docs:* تمام ZSetها و مجموعه‌های ایندکسی
Balances balance:* مانده‌های سطوح مختلف