الوصول إلى مقاييس أداء خادم Outline
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
يوفّر Outline مقاييس أداء مفصّلة من خلال
Prometheus، ما يتيح لك الحصول على إحصاءات متعمّقة
حول استخدام الخادم وصحته. وستتعرّف في هذا الدليل على خطوات
الحصول على هذه المقاييس والاطّلاع عليها.
ملاحظة مُهمّة: من المفترض أن يكون لديك فهم مبدئي لـ
Prometheus وPromQL من أجل استيعاب معلومات هذا الدليل. وإذا لم تكن على دراية بـ Prometheus، ننصحك بالاطّلاع على
المستندات والأدلّة التوجيهية قبل التعمّق في فهم مقاييس Outline.
المتطلّبات الأساسية
تفعيل مقاييس Prometheus على خادم Outline: تأكَّد من تفعيل مقاييس Prometheus على خادم Outline
الخاص بك. (يكون هذا هو الإعداد التلقائي عادةً).
إذن وصول بروتوكول النقل الآمن (SSH) إلى الخادم: ستحتاج إلى إذن وصول بروتوكول SSH لإعادة توجيه
منفذ Prometheus.
التعليمات
إعادة توجيه منفذ Prometheus
اتّصِل بالخادم باستخدام بروتوكول SSH ثم أعِد توجيه المنفذ 9090:
ssh root@your_server_ip -L 9090:localhost:9090
الوصول إلى واجهة ويب Prometheus
افتح متصفح الويب ثمّ انتقِل إلى الرابط http://localhost:9090/graph
للاطّلاع على "مقاييس طلب Prometheus" (Query Prometheus Metrics)
استخدام طلبات PromQL لإيجاد المقاييس المطلوبة
مثال على طلبات PromQL
الاستخدام
وحدات البايت للبيانات (حسب مفتاح الوصول والبروتوكول والاتجاه):
increase(shadowsocks_data_bytes[1d])
وحدات البايت للبيانات (مُجمعة حسب مفتاح الوصول):
sum(increase(shadowsocks_data_bytes[1d])) by (access_key)
وحدات البايت للبيانات (لحساب الحد الأقصى للبيانات):
sum(increase(shadowsocks_data_bytes{dir=~"c<p|p>t"}[30d])) by (access_key)
وحدات البايت للبيانات (حسب الموقع والبروتوكول والاتجاه):
increase(shadowsocks_data_bytes_per_location[1d])
مفاتيح الوصول النشطة
sum(max(max_over_time(shadowsocks_data_bytes{access_key!=""} [1h])) by (access_key) > bool 0)
اتصالات TCP
اتصالات TCP (حسب مفتاح الوصول والموقع والحالة):
increase(shadowsocks_tcp_connections_closed[1d])
اتصالات TCP (حسب الموقع):
increase(shadowsocks_tcp_connections_opened[1d])
UDP
حزم UDP (حسب الموقع والحالة):
increase(shadowsocks_udp_packets_from_client_per_location[1d])
روابط UDP (بدون تقسيم):
increase(shadowsocks_udp_nat_entries_added[1d])
استخدام وحدة المعالجة المركزية (CPU) (حسب العملية):
rate(process_cpu_seconds_total[10m])
الذاكرة (حسب العملية):
process_virtual_memory_bytes
Prometheus:
prometheus_build_info
outline-ss-server:
shadowsocks_build_info
Node.js:
nodejs_version_info
تتوفّر قائمة كاملة بالمقاييس المتاحة في رمز مصدر
outline-ss-server
.
إنّ محتوى هذه الصفحة مرخّص بموجب ترخيص Creative Commons Attribution 4.0 ما لم يُنصّ على خلاف ذلك، ونماذج الرموز مرخّصة بموجب ترخيص Apache 2.0. للاطّلاع على التفاصيل، يُرجى مراجعة سياسات موقع Google Developers. إنّ Java هي علامة تجارية مسجَّلة لشركة Oracle و/أو شركائها التابعين.
تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eOutline provides detailed performance metrics via Prometheus, offering insights into server usage and health.\u003c/p\u003e\n"],["\u003cp\u003eAccessing these metrics requires an Outline server with Prometheus enabled and SSH access to forward port 9090.\u003c/p\u003e\n"],["\u003cp\u003eYou can use PromQL queries to retrieve specific metrics, such as data bytes, active access keys, TCP connections, and UDP packets.\u003c/p\u003e\n"],["\u003cp\u003ePerformance metrics are also available for CPU usage and memory by process.\u003c/p\u003e\n"],["\u003cp\u003eBuild information for Prometheus, outline-ss-server, and Node.js are available as well, providing software versioning.\u003c/p\u003e\n"]]],["Performance metrics are accessed via Prometheus, requiring an Outline server with Prometheus enabled and SSH access. Port 9090 is forwarded via SSH to view metrics in a web browser at `http://localhost:9090/graph`. PromQL queries retrieve metrics like data bytes, active access keys, TCP connections, UDP packets/associations, and CPU/memory usage. Build information for Prometheus, `outline-ss-server`, and Node.js are also available. The source code provides a complete metrics list.\n"],null,["# Accessing Outline Server Performance Metrics\n\nOutline provides detailed performance metrics through\n[Prometheus](https://prometheus.io/), allowing you to gain deeper insights into\nyour server's usage and health. This guide will walk you through the process of\nretrieving and viewing these metrics.\n\n**Important Note:** This guide assumes you have a basic understanding of\nPrometheus and PromQL. If you're new to Prometheus, consider exploring its\ndocumentation and tutorials before diving into Outline's metrics.\n\nPrerequisites\n-------------\n\n- **Outline server with Prometheus enabled**: Ensure that your Outline server\n has Prometheus metrics enabled. (This is usually the default configuration).\n\n- **SSH access to your server**: You'll need SSH access to forward the\n Prometheus port.\n\nInstructions\n------------\n\n1. **Forward Prometheus Port**\n\n Connect to your server using SSH and forward port 9090: \n\n ssh root@your_server_ip -L 9090:localhost:9090\n\n2. **Access Prometheus Web Interface**\n\n Open your web browser and navigate to: \u003chttp://localhost:9090/graph\u003e\n Query Prometheus Metrics\n3. **Use PromQL queries to retrieve the specific metrics you're interested in.**\n\n### Example PromQL Queries\n\n#### Usage\n\n- **Data Bytes (by access key, protocol, and direction):**\n\n `increase(shadowsocks_data_bytes[1d])`\n- **Data Bytes (aggregated by access key):**\n\n `sum(increase(shadowsocks_data_bytes[1d])) by (access_key)`\n- **Data Bytes (for data limits calculation):**\n\n `sum(increase(shadowsocks_data_bytes{dir=~\"c\u003cp|p\u003et\"}[30d])) by (access_key)`\n- **Data Bytes (by location, protocol, and direction):**\n\n `increase(shadowsocks_data_bytes_per_location[1d])`\n\n#### Active Access Keys\n\n`sum(max(max_over_time(shadowsocks_data_bytes{access_key!=\"\"} [1h])) by (access_key) \u003e bool 0)`\n\n#### TCP Connections\n\n- **TCP Connections (by access key, location, and status):**\n\n `increase(shadowsocks_tcp_connections_closed[1d])`\n- **TCP Connections (by location):**\n\n `increase(shadowsocks_tcp_connections_opened[1d])`\n\n#### UDP\n\n- **UDP Packets (by location and status):**\n\n `increase(shadowsocks_udp_packets_from_client_per_location[1d])`\n- **UDP Associations (no breakdown):**\n\n `increase(shadowsocks_udp_nat_entries_added[1d])`\n\n#### Performance\n\n- **CPU Usage (by process):**\n\n `rate(process_cpu_seconds_total[10m])`\n- **Memory (by process):**\n\n `process_virtual_memory_bytes`\n\n#### Build Information\n\n- **Prometheus:**\n\n `prometheus_build_info`\n- **outline-ss-server:**\n\n `shadowsocks_build_info`\n- **Node.js:**\n\n `nodejs_version_info`\n\nThe complete list of available metrics can be found in the `outline-ss-server`\n[source code](https://github.com/Jigsaw-Code/outline-ss-server/blob/master/cmd/outline-ss-server/metrics.go)."]]