# Tuiscint a fháil ar stádas "ró-ualaithe" agus conas é a dhiagnóisiú

Ar chuardach sealaíochta taispeánaimid ponc ómra in aice le leasainm an sealaíochta nuair a bhíonn sé ró-ualaithe. Ciallaíonn sé seo gur cuireadh ceann amháin nó níos mó de na méadrachtaí ualaigh seo a leanas i ngníomh:

- Aon ghlaoch Tor OOM mar gheall ar bhrú cuimhne
- Bailítear aon chraicinn oinniún ntor
- ídiú calafoirt TCP]

Tabhair faoi deara, má shroicheann athsheachadán staid ró-ualaithe, go dtaispeánfaimid é ar feadh 72 uair an chloig tar éis don athsheachadán téarnamh.

Má thugann tú faoi deara go bhfuil ró-ualach ar do shealaín le do thoil:

1. Seiceáil https://status.torproject.org/ le haghaidh aon fhadhbanna aitheanta sa chatagóir "líonra Tor".
2. Smaoinigh ar `sysctl` do chóras a thiúnadh le haghaidh ualach líonra, cuimhne agus LAP.
3. Smaoinigh ar `MetricsPort` a chumasú chun tuiscint a fháil ar a bhfuil ag tarlú.

## Ag coigeartú `sysctl` le haghaidh ualach líonra, cuimhne agus LAP

### Ídiú calafoirt TCP

Má tá tú ag fulaingt ó ídiú calafoirt TCP, smaoinigh ar do raon calafoirt áitiúil a leathnú. Is féidir leat é sin a dhéanamh le

`# sysctl -w net.ipv4.ip_local_port_range="15000 64000"`

nó

`# echo 15000 64000 > /proc/sys/net/ipv4/ip_local_port_range`

Coinnigh i gcuimhne nach bhfuil an tiúnáil `sysctl` mar a thuairiscítear buan agus go gcaillfear é nuair a atosófar é. Ní mór duit an chumraíocht a chur le `/etc/sysctl.conf` nó le comhad i `/etc/sysctl.d/` chun í a dhéanamh buan.

## MetricsPort

Chun folláine athsheachadáin Tor agus líonra Tor a thuiscint, tá sé ríthábhachtach méadrachtaí athsheachadáin a sholáthar agus rochtain a bheith agat orthu. Cuireadh faisnéis ró-ualaigh athsheachadáin le tuairiscí athsheachadáin ó 0.4.6+ ach níorbh é go dtí Tor >= 0.4.7.1-alpha a raibh comhéadan ar fáil leis na méadrachtaí athsheachadáin bhunúsacha: an port méadrachtaí.

### Cumasú MetricsPort

Cuireann Tor rochtain ar fáil ar an gcalafort metrics trí rogha cumraíochta torrc ar a dtugtar `MetricsPort`.

Tá sé tábhachtach a thuiscint go bhfuil an tor MetricsPort á nochtadh go poiblí contúirteach d'úsáideoirí líonra Tor, agus is é sin an fáth nach bhfuil an calafort sin cumasaithe de réir réamhshocraithe agus go gcaithfidh beartas rochtana a rochtain a rialú. Bí cúramach agus réamhchúram breise agus an calafort seo á oscailt agat, agus dún é nuair a bheidh tú críochnaithe leis an dífhabhtú.

Glacaimis leis gurb tusa an t-aon úsáideoir ar fhreastalaí a ritheann athsheoladh Tor. Is féidir leat an port méadrachtaí a chumasú agus é seo a chur le do chomhad torrc:

    MetricsPort 127.0.0.1:9035
    MetricsPortPolicy accept 127.0.0.1

Agus ansin beidh tú in ann na méadrachtaí a aisghabháil go héasca le:

`# curl http://127.0.0.1:9035/metrics`

atá de réir réamhshocraithe i bhformáid Prometheus.

Nóta: Beidh gach úsáideoir ar an bhfreastalaí sin in ann rochtain a fháil ar na méadrachtaí athsheolta sin sa sampla thuas. Go ginearálta, socraigh polasaí rochtana an-dian le `MetricsPortPolicy` agus smaoinigh ar ghnéithe balla dóiteáin do chórais oibriúcháin a úsáid le haghaidh cosanta domhain.

Chun míniú níos mine a fháil faoi `MetricsPort` agus `MetricsPortPolicy` féach leathanach fear na tor.

### Aschur MetricsPort

Seo sampla den aschur a ghinfidh cumasú `MetricsPort` (fhágamar ar lár aon mhéadrachtaí a bhaineann le rialú plódaithe mar ní mór dúinn an comhéadan sin a chobhsú fós):

    # HELP tor_relay_connections Total number of opened connections
    # TYPE tor_relay_connections gauge
    tor_relay_connections{type="OR listener",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="OR listener",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="OR listener",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="OR listener",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="OR",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="OR",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="OR",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="OR",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Exit",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Exit",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Exit",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Exit",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Socks listener",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Socks listener",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Socks listener",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Socks listener",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Socks",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Socks",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Socks",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Socks",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Directory listener",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Directory listener",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Directory listener",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Directory listener",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Directory",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Directory",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Directory",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Directory",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Control listener",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Control listener",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Control listener",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Control listener",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Control",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Control",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Control",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Control",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Transparent pf/netfilter listener",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Transparent pf/netfilter listener",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Transparent pf/netfilter listener",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Transparent pf/netfilter listener",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Transparent natd listener",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Transparent natd listener",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Transparent natd listener",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Transparent natd listener",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="DNS listener",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="DNS listener",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="DNS listener",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="DNS listener",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Extended OR",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Extended OR",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Extended OR",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Extended OR",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Extended OR listener",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Extended OR listener",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Extended OR listener",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Extended OR listener",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="HTTP tunnel listener",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="HTTP tunnel listener",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="HTTP tunnel listener",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="HTTP tunnel listener",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Metrics listener",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Metrics listener",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Metrics listener",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Metrics listener",direction="received",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Metrics",direction="initiated",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Metrics",direction="initiated",state="opened",family="ipv6"} 0
    tor_relay_connections{type="Metrics",direction="received",state="opened",family="ipv4"} 0
    tor_relay_connections{type="Metrics",direction="received",state="opened",family="ipv6"} 0
    # HELP tor_relay_connections_total Total number of created/rejected connections
    # TYPE tor_relay_connections_total counter
    tor_relay_connections_total{type="OR listener",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="OR listener",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="OR listener",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="OR listener",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="OR listener",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="OR listener",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="OR",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="OR",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="OR",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="OR",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="OR",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="OR",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Exit",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Exit",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Exit",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Exit",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Exit",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Exit",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Socks listener",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Socks listener",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Socks listener",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Socks listener",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Socks listener",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Socks listener",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Socks",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Socks",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Socks",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Socks",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Socks",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Socks",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Directory listener",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Directory listener",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Directory listener",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Directory listener",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Directory listener",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Directory listener",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Directory",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Directory",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Directory",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Directory",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Directory",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Directory",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Control listener",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Control listener",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Control listener",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Control listener",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Control listener",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Control listener",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Control",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Control",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Control",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Control",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Control",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Control",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Transparent pf/netfilter listener",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Transparent pf/netfilter listener",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Transparent pf/netfilter listener",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Transparent pf/netfilter listener",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Transparent pf/netfilter listener",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Transparent pf/netfilter listener",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Transparent natd listener",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Transparent natd listener",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Transparent natd listener",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Transparent natd listener",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Transparent natd listener",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Transparent natd listener",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="DNS listener",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="DNS listener",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="DNS listener",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="DNS listener",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="DNS listener",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="DNS listener",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Extended OR",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Extended OR",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Extended OR",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Extended OR",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Extended OR",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Extended OR",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Extended OR listener",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Extended OR listener",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Extended OR listener",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Extended OR listener",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Extended OR listener",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Extended OR listener",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="HTTP tunnel listener",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="HTTP tunnel listener",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="HTTP tunnel listener",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="HTTP tunnel listener",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="HTTP tunnel listener",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="HTTP tunnel listener",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Metrics listener",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Metrics listener",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Metrics listener",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Metrics listener",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Metrics listener",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Metrics listener",direction="received",state="rejected",family="ipv6"} 0
    tor_relay_connections_total{type="Metrics",direction="initiated",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Metrics",direction="initiated",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Metrics",direction="received",state="created",family="ipv4"} 0
    tor_relay_connections_total{type="Metrics",direction="received",state="created",family="ipv6"} 0
    tor_relay_connections_total{type="Metrics",direction="received",state="rejected",family="ipv4"} 0
    tor_relay_connections_total{type="Metrics",direction="received",state="rejected",family="ipv6"} 0
    # HELP tor_relay_flag Relay flags from consensus
    # TYPE tor_relay_flag gauge
    tor_relay_flag{type="Fast"} 0
    tor_relay_flag{type="Exit"} 0
    tor_relay_flag{type="Authority"} 0
    tor_relay_flag{type="Stable"} 0
    tor_relay_flag{type="HSDir"} 0
    tor_relay_flag{type="Running"} 0
    tor_relay_flag{type="V2Dir"} 0
    tor_relay_flag{type="Sybil"} 0
    tor_relay_flag{type="Guard"} 0
    # HELP tor_relay_circuits_total Total number of circuits
    # TYPE tor_relay_circuits_total gauge
    tor_relay_circuits_total{state="opened"} 0
    # HELP tor_relay_streams_total Total number of streams
    # TYPE tor_relay_streams_total counter
    tor_relay_streams_total{type="BEGIN"} 0
    tor_relay_streams_total{type="BEGIN_DIR"} 0
    tor_relay_streams_total{type="RESOLVE"} 0
    # HELP tor_relay_traffic_bytes Traffic related counters
    # TYPE tor_relay_traffic_bytes counter
    tor_relay_traffic_bytes{direction="read"} 0
    tor_relay_traffic_bytes{direction="written"} 0
    # HELP tor_relay_dos_total Denial of Service defenses related counters
    # TYPE tor_relay_dos_total counter
    tor_relay_dos_total{type="circuit_rejected"} 0
    tor_relay_dos_total{type="circuit_killed_max_cell"} 0
    tor_relay_dos_total{type="circuit_killed_max_cell_outq"} 0
    tor_relay_dos_total{type="marked_address"} 0
    tor_relay_dos_total{type="marked_address_maxq"} 0
    tor_relay_dos_total{type="conn_rejected"} 0
    tor_relay_dos_total{type="concurrent_conn_rejected"} 0
    tor_relay_dos_total{type="single_hop_refused"} 0
    tor_relay_dos_total{type="introduce2_rejected"} 0
    # HELP tor_relay_load_onionskins_total Total number of onionskins handled
    # TYPE tor_relay_load_onionskins_total counter
    tor_relay_load_onionskins_total{type="tap",action="processed"} 0
    tor_relay_load_onionskins_total{type="tap",action="dropped"} 0
    tor_relay_load_onionskins_total{type="fast",action="processed"} 0
    tor_relay_load_onionskins_total{type="fast",action="dropped"} 0
    tor_relay_load_onionskins_total{type="ntor",action="processed"} 0
    tor_relay_load_onionskins_total{type="ntor",action="dropped"} 0
    tor_relay_load_onionskins_total{type="ntor_v3",action="processed"} 0
    tor_relay_load_onionskins_total{type="ntor_v3",action="dropped"} 0
    # HELP tor_relay_exit_dns_query_total Total number of DNS queries done by this relay
    # TYPE tor_relay_exit_dns_query_total counter
    tor_relay_exit_dns_query_total 0
    # HELP tor_relay_exit_dns_error_total Total number of DNS errors encountered by this relay
    # TYPE tor_relay_exit_dns_error_total counter
    tor_relay_exit_dns_error_total{reason="success"} 0
    tor_relay_exit_dns_error_total{reason="format"} 0
    tor_relay_exit_dns_error_total{reason="serverfailed"} 0
    tor_relay_exit_dns_error_total{reason="notexist"} 0
    tor_relay_exit_dns_error_total{reason="notimpl"} 0
    tor_relay_exit_dns_error_total{reason="refused"} 0
    tor_relay_exit_dns_error_total{reason="truncated"} 0
    tor_relay_exit_dns_error_total{reason="unknown"} 0
    tor_relay_exit_dns_error_total{reason="tor_timeout"} 0
    tor_relay_exit_dns_error_total{reason="shutdown"} 0
    tor_relay_exit_dns_error_total{reason="cancel"} 0
    tor_relay_exit_dns_error_total{reason="nodata"} 0
    # HELP tor_relay_load_oom_bytes_total Total number of bytes the OOM has freed by subsystem
    # TYPE tor_relay_load_oom_bytes_total counter
    tor_relay_load_oom_bytes_total{subsys="cell"} 0
    tor_relay_load_oom_bytes_total{subsys="dns"} 0
    tor_relay_load_oom_bytes_total{subsys="geoip"} 0
    tor_relay_load_oom_bytes_total{subsys="hsdir"} 0
    # HELP tor_relay_load_socket_total Total number of sockets
    # TYPE tor_relay_load_socket_total gauge
    tor_relay_load_socket_total{state="opened"} 0
    tor_relay_load_socket_total 0
    # HELP tor_relay_load_tcp_exhaustion_total Total number of times we ran out of TCP ports
    # TYPE tor_relay_load_tcp_exhaustion_total counter
    tor_relay_load_tcp_exhaustion_total 0
    # HELP tor_relay_load_global_rate_limit_reached_total Total number of global connection bucket limit reached
    # TYPE tor_relay_load_global_rate_limit_reached_total counter
    tor_relay_load_global_rate_limit_reached_total{side="read"} 0
    tor_relay_load_global_rate_limit_reached_total{side="write"} 0

Faigh amach cad is brí le cuid de na línte seo i ndáiríre:

### tor_relay_load_onionskins_total{type="ntor",action="dropped"} 0

Nuair a thosaíonn athsheachadán ag feiceáil "tite", is fadhb LAP/RAM í de ghnáth.

Ar an drochuair, is snáithe aonair é Tor ach amháin nuair a bhíonn na "craicne oinniúin" á phróiseáil. Is iad na "craicne oinniúin" an obair chripteagrafach a chaithfear a dhéanamh ar na "sraitheanna oinniúin" cáiliúla i ngach ciorcad.

Nuair a phróiseálann Tor na sraitheanna úsáidimid linn snáithe agus cuirimid an obair sin ar fad ar foinsiú allamuigh chuig an linn sin. D’fhéadfadh sé tarlú go dtosaíonn an linn snámha seo ag titim oibre mar gheall ar bhrú cuimhne nó LAP agus go gcuirfidh sé seo tús le staid ró-ualaigh.

Más rud é go bhfuil do fhreastalaí ag feidhmiú ag a acmhainn is dócha go gcuirfear seo i ngníomh.

### tor_relay_exit_dns_error_total{...}

Léiríonn aon chuntar sa réimse "*_dns_error_total" (seachas an ceann le haghaidh fiosruithe rathúla) fadhb fhéideartha a bhaineann le DNS. Mar sin féin, thuigeamar le linn thimthriall scaoilte 0.4.7 go bhfuil earráidí DNS i bhfad ró-ghlórach agus go bhfuil an iomarca torthaí dearfacha bréagacha iontu le bheith úsáideach chun críocha tuairiscithe ró-ualaigh. Dá bhrí sin, ní úsáidimid iad a thuilleadh chun na críche sin ag tosú le 0.4.6.9 agus 0.4.7.4-alpha. Mar sin féin, coimeádaimid méadrachtaí DNS fós timpeall chun léargas a thabhairt don oibreoir athsheolta ar a bhfuil ag tarlú lena n-athsheoladh.

Ní bhaineann fadhbanna agus earráidí DNS le nóid Scoir ach amháin.

### tor_relay_load_oom_bytes_total{...}

Léiríonn glao Gan Cuimhne fadhb RAM. B’fhéidir go mbeadh níos mó RAM ag teastáil ón athsheachadán nó go bhfuil cuimhne ag sceitheadh aige. Má thug tú faoi deara go bhfuil an próiseas tor ag sceitheadh cuimhne, cuir an fhadhb in iúl trí Tor GitLab nó trí ríomhphost a sheoladh chuig an liosta ríomhphoist tor-relays.

Tá a láimhseálaí OOM féin ag Tor agus glaotar air nuair a shroichtear 75% den chuimhne iomlán a cheapann Tor atá ar fáil. Mar sin, abair go gceapann tor gur féidir leis 2GB a úsáid san iomlán ansin ag 1.5GB d'úsáid cuimhne, tosóidh sé ag saoradh cuimhne. Meastar gur staid ró-ualaigh é sin.

Chun meastachán a dhéanamh ar an méid cuimhne atá ar fáil, nuair a thosaíonn tor, úsáidfidh sé `MaxMemInQueues` nó, mura bhfuil sé socraithe, féachfaidh sé ar an RAM iomlán atá ar fáil ar an gcóras agus cuirfidh sé an algartam seo i bhfeidhm:

    if RAM >= 8GB {
    memory = RAM * 40%
    } else {
    memory = RAM * 75%
    }
    /* Caipínithe. */
    memory = min(memory, 8GB) -> [8GB on 64bit and 2GB on 32bit)
    /* An luach íosta. */
    memory = max(250MB, memory)

Chun staid ró-ualaithe a sheachaint, molaimid athsheachadán os cionn 2GB RAM a rith ar 64giotán. Moltar 4GB, cé nach ndéanann sé dochar ar ndóigh níos mó RAM a chur leis más féidir leat. Nóta: Má tá freastalaí cumhachtach á rith agat le neart RAM, d’fhéadfá a bheith i riocht ró-ualaithe mar gheall ar an teorainn réamhshocraithe ar mhéid na scuaine de 8GB, cé go bhfuil neart RAM fós gan úsáid agat. Cuir iontráil chuí `MaxMemInQueues` le do chumraíocht `torrc` sa chás sin.

B’fhéidir go dtabharfadh duine faoi deara gur féidir leis an láimhseálaí OS OOM féin glaoch ar tor. Ós rud é go nglacann tor an chuimhne iomlán ar an gcóras nuair a thosaíonn sé, má tá go leor feidhmchlár eile ag rith ag baint úsáide as RAM ar an gcóras iomlán, críochnaíonn sé ag ithe an iomarca cuimhne. Sa chás seo, d'fhéadfadh an córas oibriúcháin OOM tor, gan tor fiú brú cuimhne a thabhairt faoi deara.

### tor_relay_load_socket_total

Más ionann líon na soicéad oscailte agus líon iomlán na soicéad atá ar fáil, nó gar dó, léiríonn sé seo go bhfuil an t-athsheoltóir ag rith as soicéid. Is é an réiteach ná `ulimit -n` a mhéadú don phróiseas tor.

### tor_relay_load_tcp_exhaustion_total

Léiríonn na línte seo go bhfuil an t-athsheoltóir ag rith as calafoirt TCP.

Déan iarracht `sysctl` a choigeartú mar a thuairiscítear thuas.

### tor_relay_load_global_rate_limit_reached_total

Má mhéadaítear an cuntar seo faoi luach suntasach éigin thar thréimhse ghearr ama, bíonn an t-athsheoltóir plódaithe. Is dócha go bhfuil sé á úsáid mar Gharda ag seirbhís mhór oinniún nó le haghaidh DDoS leanúnach ar an líonra.

Má tá ró-ualaithe fós ar do athsheachadán agus mura bhfuil a fhios agat cén fáth, téigh i dteagmháil le network-report@torproject.org. Is féidir leat do ríomhphost a chriptiú ag baint úsáide as eochair OpenPGP network-report.