Accesso alle metriche sulle prestazioni del server Outline
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Outline fornisce metriche dettagliate sulle prestazioni tramite
Prometheus, consentendoti di ottenere informazioni più approfondite sull'utilizzo e lo stato di salute del tuo server. Questa guida ti guiderà attraverso il processo di
recupero e visualizzazione di queste metriche.
Nota importante: questa guida presuppone che tu abbia una conoscenza di base di
Prometheus e PromQL. Se sei nuovo di Prometheus, prendi in considerazione di esplorare la sua
documentazione e i suoi tutorial prima di immergerti nelle metriche di Outline.
Prerequisiti
Server Outline con Prometheus abilitato: assicurati che il tuo server Outline
abbia le metriche Prometheus abilitate (di solito questa è la configurazione predefinita).
Accesso SSH al tuo server: avrai bisogno dell'accesso SSH per inoltrare la porta
di Prometheus.
Istruzioni
Inoltra la porta Prometheus
Connettiti al tuo server tramite SSH e inoltra la porta 9090:
ssh root@your_server_ip -L 9090:localhost:9090
Accedi all'interfaccia web di Prometheus
Apri il tuo browser web e vai su: http://localhost:9090/graph
Interroga le metriche di Prometheus
Utilizza le query PromQL per recuperare le metriche specifiche che ti interessano.
Esempio di query PromQL
Utilizzo
Byte di dati (tramite chiave di accesso, protocollo e direzione):
increase(shadowsocks_data_bytes[1d])
Byte di dati (aggregati in base alla chiave di accesso):
sum(increase(shadowsocks_data_bytes[1d])) by (access_key)
Byte di dati (per il calcolo dei limiti dei dati):
sum(increase(shadowsocks_data_bytes{dir=~"c<p|p>t"}[30d])) by (access_key)
Byte di dati (in base a località, protocollo e direzione):
increase(shadowsocks_data_bytes_per_location[1d])
Chiavi di accesso attive
sum(max(max_over_time(shadowsocks_data_bytes{access_key!=""} [1h])) by (access_key) > bool 0)
Connessioni TCP
Connessioni TCP (in base a chiave di accesso, località e stato):
increase(shadowsocks_tcp_connections_closed[1d])
Connessioni TCP (in base alla località):
increase(shadowsocks_tcp_connections_opened[1d])
UDP
Pacchetti UDP (in base a località e stato):
increase(shadowsocks_udp_packets_from_client_per_location[1d])
Associazioni UDP (nessuna suddivisione):
increase(shadowsocks_udp_nat_entries_added[1d])
Utilizzo CPU (in base al processo):
rate(process_cpu_seconds_total[10m])
Memoria (in base al processo):
process_virtual_memory_bytes
Prometheus:
prometheus_build_info
outline-ss-server:
shadowsocks_build_info
Node.js:
nodejs_version_info
L'elenco completo delle metriche disponibili è disponibile
nel codice sorgente outline-ss-server
.
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-07-25 UTC.
[null,null,["Ultimo aggiornamento 2025-07-25 UTC."],[[["\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)."]]