Really-amin's picture
Upload 317 files
eebf5c4 verified
|
raw
history blame
4.99 kB

🚀 راهنمای سریع شروع - Quick Start Guide

⚡ نصب و راه‌اندازی سریع

1️⃣ نصب وابستگی‌ها

pip install -r requirements.txt

2️⃣ Import منابع از فایل‌های JSON

python import_resources.py

این اسکریپت به‌طور خودکار همه منابع را از فایل‌های JSON موجود import می‌کند.

3️⃣ راه‌اندازی سرور

# روش 1: استفاده از اسکریپت راه‌انداز
python start_server.py

# روش 2: مستقیم
python api_server_extended.py

# روش 3: با uvicorn
uvicorn api_server_extended:app --reload --host 0.0.0.0 --port 8000

4️⃣ دسترسی به داشبورد

http://localhost:8000

📋 تب‌های داشبورد

📊 Market

  • آمار کلی بازار
  • لیست کریپتوکارنسی‌ها
  • نمودارها و ترندینگ

📡 API Monitor

  • وضعیت همه ارائه‌دهندگان
  • زمان پاسخ
  • Health Check

⚡ Advanced

  • Export JSON/CSV
  • Backup
  • Clear Cache
  • Activity Logs

⚙️ Admin

  • افزودن API جدید
  • تنظیمات
  • آمار کلی

🤗 HuggingFace

  • مدل‌های Sentiment Analysis
  • Datasets
  • جستجو در Registry

🔄 Pools

  • مدیریت Pool‌ها
  • افزودن/حذف اعضا
  • چرخش دستی

📋 Logs (جدید!)

  • نمایش لاگ‌ها با فیلتر
  • Export به JSON/CSV
  • جستجو و آمار

📦 Resources (جدید!)

  • مدیریت منابع API
  • Import/Export
  • Backup
  • فیلتر بر اساس Category

🔧 استفاده از API

دریافت لاگ‌ها

# همه لاگ‌ها
curl http://localhost:8000/api/logs

# فیلتر بر اساس Level
curl http://localhost:8000/api/logs?level=error

# جستجو
curl http://localhost:8000/api/logs?search=timeout

Export لاگ‌ها

# Export به JSON
curl http://localhost:8000/api/logs/export/json?level=error

# Export به CSV
curl http://localhost:8000/api/logs/export/csv

مدیریت منابع

# دریافت همه منابع
curl http://localhost:8000/api/resources

# Export منابع
curl http://localhost:8000/api/resources/export/json

# Backup
curl -X POST http://localhost:8000/api/resources/backup

# Import
curl -X POST "http://localhost:8000/api/resources/import/json?file_path=api-resources/crypto_resources_unified_2025-11-11.json&merge=true"

📝 مثال‌های استفاده

افزودن Provider جدید

from resource_manager import ResourceManager

manager = ResourceManager()

provider = {
    "id": "my_new_api",
    "name": "My New API",
    "category": "market_data",
    "base_url": "https://api.example.com",
    "requires_auth": False,
    "priority": 5,
    "weight": 50,
    "free": True
}

manager.add_provider(provider)
manager.save_resources()

ثبت لاگ

from log_manager import log_info, log_error, LogCategory

# لاگ Info
log_info(LogCategory.PROVIDER, "Provider health check completed", 
         provider_id="coingecko", response_time=234.5)

# لاگ Error
log_error(LogCategory.PROVIDER, "Provider failed", 
          provider_id="etherscan", error="Timeout")

استفاده از Provider Manager

from provider_manager import ProviderManager
import asyncio

async def main():
    manager = ProviderManager()
    
    # Health Check
    await manager.health_check_all()
    
    # دریافت Provider از Pool
    provider = manager.get_next_from_pool("primary_market_data_pool")
    if provider:
        print(f"Selected: {provider.name}")
    
    await manager.close_session()

asyncio.run(main())

🐳 استفاده با Docker

# Build
docker build -t crypto-monitor .

# Run
docker run -p 8000:8000 crypto-monitor

# یا با docker-compose
docker-compose up -d

🔍 عیب‌یابی

مشکل: Port در حال استفاده است

# تغییر پورت
uvicorn api_server_extended:app --port 8001

مشکل: فایل‌های JSON یافت نشد

# بررسی وجود فایل‌ها
ls -la api-resources/
ls -la providers_config*.json

مشکل: Import منابع ناموفق

# بررسی ساختار JSON
python -m json.tool api-resources/crypto_resources_unified_2025-11-11.json | head -20

📚 مستندات بیشتر

🆘 پشتیبانی

در صورت بروز مشکل:

  1. لاگ‌ها را بررسی کنید: logs/app.log
  2. از تب Logs در داشبورد استفاده کنید
  3. آمار سیستم را بررسی کنید: /api/status

موفق باشید! 🚀