[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [tor-bugs] #28390 [Obfuscation/Snowflake]: Snowflake stuck at "Loading relay information..."
#28390: Snowflake stuck at "Loading relay information..."
-----------------------------------+------------------------
Reporter: cypherpunks3 | Owner: (none)
Type: defect | Status: closed
Priority: Medium | Milestone:
Component: Obfuscation/Snowflake | Version:
Severity: Normal | Resolution: fixed
Keywords: | Actual Points:
Parent ID: | Points:
Reviewer: | Sponsor:
-----------------------------------+------------------------
Changes (by dcf):
* status: reopened => closed
* resolution: => fixed
Comment:
The problem was a full disk, just like in #26661. The bridge and the
fallback proxies are currently hosted on the same machine, so when the
proxies filled up the disk with logs, it stopped the bridge running as
well. The end of one of the log files was (timestamps are UTC)
{{{
2018/11/16 15:10:27 broker returns: 504
2018/11/16 15:10:38 broker returns: 504
2018/11/16 15:10:48 broker returns: 504
2018/11/16 15:10:58 broker returns: 504
2018/11/16 15:11:08 broker returns: 504
2018/11/16 15:11:18 broker returns: 504
2018/11/16 15:11:28 broker returns: 504
2018/11/16 15:11
}}}
I compressed the logs to make some space (they compress to around 1% of
their original size, as they mostly contain those `broker returns: 504`
lines). Then I did what I should have done after #26661, which is activate
log rotation to prevent this from happening again. We're using runit to
manage the proxies, which comes with a program
[http://smarden.org/runit/svlogd.8.html svlogd] to manage log files. I
added a `log/run` script to each service directory containing:
{{{
#!/bin/sh
exec chpst -u snowflake-proxy svlogd snowflake-proxy-xxx.log.d
}}}
In each service `run` script, I removed the `-log` option from the
snowflake-proxy command, so that it will log to stderr. Then, in each
snowflake-proxy-xxx.log.d directory, I made a file `config` that contains:
{{{
# http://smarden.org/runit/svlogd.8.html
# size of log file before rotation (10 MB)
s10000000
# don't delete old logs
n0
# unless the filesystem is full
N1
# compress old logs
!xz
}}}
What this means is, when a log file reaches 10 MB, it will be compressed
and archived. Keep archived log files, but delete the oldest ones if the
disk is full.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/28390#comment:6>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs