גישה למדדי הביצועים של שרת Outline

Outline מספק מדדי ביצועים מפורטים באמצעות Prometheus, ומאפשר לכם לקבל תובנות מעמיקות יותר לגבי השימוש והמצב של השרת. במדריך הזה נסביר איך לאחזר את המדדים האלה ולהציג אותם.

הערה חשובה: המדריך הזה מבוסס על ההנחה שיש לכם הבנה בסיסית של Prometheus ו-PromQL. אם זו הפעם הראשונה שאתם משתמשים ב-Prometheus, כדאי לבדוק את מסמכי התיעוד והמדריכים שלו לפני שממשיכים למדדים של Outline.

דרישות מוקדמות

  • שרת Outline עם Prometheus מופעל: מוודאים שבשרת Outline מופעלים מדדי Prometheus. (בדרך כלל זו הגדרות ברירת המחדל).

  • גישת SSH לשרת: צריך גישת SSH כדי להעביר את יציאת Prometheus.

הוראות

  1. יציאת פרומתאוס פורוורד

    מתחברים לשרת באמצעות SSH ומעבירים את יציאת 9090:

    ssh root@your_server_ip -L 9090:localhost:9090
    
  2. גישה לממשק האינטרנט של Prometheus

    פותחים את דפדפן האינטרנט ועוברים לכתובת: http://localhost:9090/graph שליחת שאילתות למדדי Prometheus

  3. משתמשים בשאילתות 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])

ביצועים

  • שימוש במעבד (לפי תהליך):

    rate(process_cpu_seconds_total[10m])

  • זיכרון (לפי תהליך):

    process_virtual_memory_bytes

פרטי ה-Build

  • פרומתאוס:

    prometheus_build_info

  • outline-ss-server:

    shadowsocks_build_info

  • Node.js:

    nodejs_version_info

הרשימה המלאה של המדדים הזמינים מופיעה בקוד המקור של outline-ss-server.