We have integrated a package called monkit in all storage nodes. It is very usefull for debuging. By default it will open a random port.
In order to connect to the debug port you will need to:
debug.addr: ":7777"to the config file. Now the port is fixed and will not change on every restart.
-p 127.0.0.1:7777:7777to the docker run command.
- Ready for action!
You can request the following informations:
Find out how long a function like
GetExpiredneeds to execute.
What is running at the moment and how long is it running.
Full stacktrace with everything that is running.
curl localhost:7777/mon/trace/svg?regex=Upload > upload.svg
Wait for the next call of the specific function and create a tracefile.
curl localhost:7777/debug/pprof/heap > heap
This is just a quick introduction out of my head. The more advanced calls are missing right now. Feed free to add them.