🚀 جرب Zilliz Cloud، الـ Milvus المدارة بالكامل، مجاناً — تجربة أداء أسرع بـ 10 أضعاف! جرب الآن>>

milvus-logo
LFAI
الصفحة الرئيسية
  • دليل الإدارة
  • Home
  • Docs
  • دليل الإدارة

  • المراقبة والتنبيهات والسجلات

  • السجلات

  • تكوين سجلات الوصول

تكوين سجلات الوصول

تسمح ميزة سجلات الوصول في Milvus لمديري الخوادم بتسجيل وتحليل سلوك وصول المستخدم، مما يساعد في فهم جوانب مثل معدلات نجاح الاستعلام وأسباب الفشل.

يوفر هذا الدليل إرشادات مفصلة حول تكوين سجلات الوصول في ملفوس.

يعتمد تكوين سجلات الوصول على طريقة تثبيت ميلفوس:

خيارات التكوين

اختر من بين ثلاثة خيارات تكوين بناءً على احتياجاتك:

  • التكوين الأساسي: للأغراض العامة.
  • التكوين لملفات سجلات الوصول المحلية: لتخزين السجلات محلياً.
  • تكوين لتحميل سجلات الوصول المحلية إلى MinIO: للتخزين السحابي والنسخ الاحتياطي.

التكوين الأساسي

يتضمن التكوين الأساسي تمكين سجلات الوصول وتحديد اسم ملف السجل أو استخدام stdout.

proxy:
  accessLog:
    enable: true
    # If `filename` is emtpy, logs will be printed to stdout.
    filename: ""
    # Additional formatter configurations...
  • proxy.accessLog.enable: ما إذا كنت تريد تمكين ميزة سجل الوصول. الإعداد الافتراضي إلى خطأ.
  • proxy.accessLog.filename: اسم ملف سجل الوصول. إذا تركت هذه المعلمة فارغة، ستتم طباعة سجلات الوصول إلى stdout.

تكوين ملفات سجلات الوصول المحلية

تكوين التخزين المحلي لملفات سجلات الوصول مع معلمات تتضمن مسار الملف المحلي، وحجم الملف، والفاصل الزمني للتناوب:

proxy:
  accessLog:
    enable: true
    filename: "access_log.txt" # Name of the access log file
    localPath: "/var/logs/milvus" # Local file path where the access log file is stored
    maxSize: 500 # Max size for each single access log file. Unit: MB
    rotatedTime: 24 # Time interval for log rotation. Unit: seconds
    maxBackups: 7 # Max number of sealed access log files that can be retained
    # Additional formatter configurations...

يتم تحديد هذه المعلمات عندما يكون filename غير فارغ.

  • proxy.accessLog.localPath: مسار الملف المحلي حيث يتم تخزين ملف سجل الوصول.
  • proxy.accessLog.maxSize: الحجم الأقصى بالميغابايت المسموح به لملف سجل وصول واحد. إذا وصل حجم ملف السجل إلى هذا الحد، سيتم تشغيل عملية تدوير. تقوم هذه العملية بإغلاق ملف سجل الوصول الحالي وإنشاء ملف سجل جديد ومسح محتويات ملف السجل الأصلي.
  • proxy.accessLog.rotatedTime: الحد الأقصى للفاصل الزمني بالثواني المسموح به لتدوير ملف سجل وصول واحد. عند الوصول إلى الفاصل الزمني المحدد، يتم تشغيل عملية تدوير، مما يؤدي إلى إنشاء ملف سجل وصول جديد وإغلاق الملف السابق.
  • proxy.accessLog.maxBackups: الحد الأقصى لعدد ملفات سجلات الوصول المختومة التي يمكن الاحتفاظ بها. إذا تجاوز عدد ملفات سجلات الوصول المختومة هذا الحد، فسيتم حذف أقدمها.

تكوين لتحميل ملفات سجل الوصول المحلي إلى MinIO

قم بتمكين الإعدادات وتكوينها لتحميل ملفات سجل الوصول المحلي إلى MinIO:

proxy:
  accessLog:
    enable: true
    filename: "access_log.txt"
    localPath: "/var/logs/milvus"
    maxSize: 500
    rotatedTime: 24 
    maxBackups: 7
    minioEnable: true
    remotePath: "/milvus/logs/access_logs"
    remoteMaxTime: 0
    # Additional formatter configurations...

عند تكوين معلمات MinIO، تأكد من تعيين إما maxSize أو rotatedTime. قد يؤدي عدم القيام بذلك إلى عدم نجاح تحميل ملفات سجلات الوصول المحلية إلى MinIO.

  • proxy.accessLog.minioEnable: ما إذا كان سيتم تحميل ملفات سجلات الوصول المحلية إلى MinIO. الإعداد الافتراضي إلى خطأ.
  • proxy.accessLog.remotePath: مسار تخزين الكائن لتحميل ملفات سجلات الوصول.
  • proxy.accessLog.remoteMaxTime: الفاصل الزمني المسموح به لتحميل ملفات سجل الوصول. إذا تجاوز وقت تحميل ملف السجل هذا الفاصل الزمني، فسيتم حذف الملف. يؤدي تعيين القيمة إلى 0 إلى تعطيل هذه الميزة.

تكوين المنسق

تنسيق السجل الافتراضي المستخدم لجميع الأساليب هو التنسيق base ، والذي لا يتطلب اقترانات محددة للأسلوب. ومع ذلك، إذا كنت ترغب في تخصيص إخراج السجل لطرق محددة، يمكنك تحديد تنسيق سجل مخصص وتطبيقه على الطرق المرتبطة.

proxy:
  accessLog:
    enable: true
    filename: "access_log.txt"
    localPath: "/var/logs/milvus"
    # Define custom formatters for access logs with format and applicable methods
    formatters:
      # The `base` formatter applies to all methods by default
      # The `base` formatter does not require specific method association
      base: 
        # Format string; an empty string means no log output
        format: "[$time_now] [ACCESS] <$user_name: $user_addr> $method_name-$method_status-$error_code [traceID: $trace_id] [timeCost: $time_cost]"
      # Custom formatter for specific methods (e.g., Query, Search)
      query: 
        format: "[$time_now] [ACCESS] <$user_name: $user_addr> $method_status-$method_name [traceID: $trace_id] [timeCost: $time_cost] [database: $database_name] [collection: $collection_name] [partitions: $partition_name] [expr: $method_expr]"
        # Specify the methods to which this custom formatter applies
        methods: ["Query", "Search"]
  • proxy.accessLog.<formatter_name>.format: يحدد تنسيق السجل بمقاييس ديناميكية. لمزيد من المعلومات، راجع المقاييس المدعومة.
  • proxy.accessLog.<formatter_name>.methods: يسرد عمليات Milvus باستخدام هذا التنسيق. للحصول على أسماء الأساليب، راجع MilvusService في أساليب Milvus.

مرجع: المقاييس المدعومة

اسم المقياسالوصف
$method_nameاسم الأسلوب
$method_statusحالة الوصول موافق أو فشل
$method_exprالتعبير المستخدم في عمليات الاستعلام أو البحث أو الحذف
$trace_idمعرّف التتبع المرتبط بالوصول
$user_addrعنوان IP الخاص بالمستخدم
$user_nameاسم المستخدم
$response_sizeحجم بيانات الاستجابة
$error_codeرمز الخطأ الخاص بميلفوس
$error_msgرسالة الخطأ التفصيلية
$database_nameاسم قاعدة بيانات ملفوس المستهدفة
$collection_nameاسم مجموعة ملفوس المستهدفة
$partition_nameاسم أو أسماء قسم (أقسام) ملفوس المستهدفة
$time_costالوقت المستغرق لإكمال الوصول
$time_nowالوقت الذي تتم فيه طباعة سجل الوصول (عادةً ما يعادل $time_end)
$time_startالوقت الذي يبدأ فيه الوصول
$time_endالوقت الذي ينتهي فيه الوصول
$sdk_versionإصدار مجموعة أدوات تطوير البرمجيات Milvus SDK التي يستخدمها المستخدم

جرب Managed Milvus مجاناً

Zilliz Cloud خالي من المتاعب، ويعمل بواسطة Milvus ويعمل بسرعة 10 أضعاف.

ابدأ
التعليقات

هل كانت هذه الصفحة مفيدة؟