-
Notifications
You must be signed in to change notification settings - Fork 21.6k
Open
Labels
Description
The debug namespace is cluttered with a mix of methods used for low-level client debugging and anything that wasn't standardised into the eth namespace. Creating this issue to track and decide how to go forward with this.
I'll start with a list of all the methods (50 in total):
-
eth:- Public:
DumpBlock(can be potentially modified to make use of snapshots when available)AccountRange
- Private:
PreimageGetBadBlocksStorageRangeAtGetModifiedAccountsByNumberGetModifiedAccountsByHashGetAccessibleState
- Public:
-
les(private):FreezeClient
-
internal/ethapi:- Public:
GetHeaderRlpGetBlockRlpTestSignCliqueBlockPrintBlockSeedHash
- Private:
ChaindbProperty(we can list the possible properties on the website)ChaindbCompactSetHeadDbGet
- Public:
-
eth/tracers(private):TraceChainTraceBlockByNumberTraceBlockByHashTraceBlockTraceBlockFromFileTraceBadBlockStandardTraceBlockToFileIntermediateRootsStandardTraceBadBlockToFileTraceTransactionTraceCall
-
internal/debug:VerbosityVmoduleBacktraceAtMemStatsGcStatsCpuProfileStartCPUProfileStopCPUProfileGoTraceStartGoTraceStopGoTraceBlockProfileSetBlockProfileRateWriteBlockProfileMutexProfileSetMutexProfileFractionWriteMutexProfileWriteMemProfileStacksFreeOSMemorySetGCPercent
This is the list of methods not documented on the website:
['intermediateroots', 'tracebadblock', 'chaindbcompact', 'getheaderrlp', 'accountrange', 'setmutexprofilefraction', 'getmodifiedaccountsbyhash', 'mutexprofile', 'preimage', 'writemutexprofile', 'storagerangeat', 'freezeclient', 'printblock', 'chaindbproperty', 'dbget', 'testsigncliqueblock', 'getmodifiedaccountsbynumber', 'setgcpercent', 'freeosmemory', 'tracechain', 'getbadblocks', 'getaccessiblestate']Also
traceChainis not exposed to JS (Edit: Ah I remember/see now it's because traceChain returns a subscription)