mirror of
https://github.com/octoleo/syncthing.git
synced 2024-12-31 22:11:51 +00:00
ffe7a2fcd7
This adds a config to enable debug functions on the API server, which is by default disabled. When enabled, the /rest/debug things become available and become available without requiring a CSRF token (although authentication is required if configured). We also add a new endpoint /rest/debug/cpuprof?duration=15s (with the duration being configurable, defaulting to 30s). This runs a CPU profile for the duration and returns it as a file. It sets headers so that a browser will save the file with an informative name. The same is done for heap profiles, /rest/debug/heapprof, which does not take any parameters. The purpose of this is that any user can enable debugging under advanced, then point their browser to the endpoint above and get a file that contains a CPU or heap profile we can use, with the filename telling us what version and architecture the profile is from. On the command line, this becomes curl -O -J http://localhost:8082/rest/debug/cpuprof?duration=5s curl: Saved to filename 'syncthing-cpu-darwin-amd64-v0.14.3+4-g935bcc0-110307.pprof' GitHub-Pull-Request: https://github.com/syncthing/syncthing/pull/3467 |
||
---|---|---|
.. | ||
auto | ||
beacon | ||
config | ||
connections | ||
db | ||
dialer | ||
discover | ||
events | ||
ignore | ||
logger | ||
model | ||
nat | ||
osutil | ||
pmp | ||
protocol | ||
rand | ||
rc | ||
relay | ||
scanner | ||
signature | ||
stats | ||
symlinks | ||
sync | ||
tlsutil | ||
upgrade | ||
upnp | ||
util | ||
versioner |