Opened at 2010-11-21T01:06:18Z
Closed at 2020-01-16T20:13:51Z
#1267 closed defect (duplicate)
support twistd's --profiler= and --debug options when starting a node
Reported by: | davidsarah | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | undecided |
Component: | code-nodeadmin | Version: | 1.8.0 |
Keywords: | performance easy profiling | Cc: | |
Launchpad Bug: |
Description (last modified by exarkun)
tahoe start and tahoe run should take a --profile option, like the twistd command, so that you don't have to run twistd directly when profiling.
twistd's --debug option might also be useful.
Change History (6)
comment:1 Changed at 2010-11-21T01:10:52Z by davidsarah
comment:2 Changed at 2010-11-21T01:26:04Z by davidsarah
- Summary changed from support twistd's --profile option when starting a node to support twistd's --profiler= and --debug options when starting a node
Oh, it already does support the --profile option, but not overriding the profiler:
$ bin/tahoe start --help Usage: tahoe <command> [command options] start [options] Options: [...] -p, --profile Run under the Python profiler, putting results in 'profiling_results.prof'.
src/allmydata/scripts/startstop_node.py@4765#L57:
if opts["profile"]: args.extend(["--profile=profiling_results.prof", "--savestats",])
comment:3 Changed at 2010-11-24T00:09:22Z by davidsarah
According to francois in ticket:1264#comment:7, the -n or --nodaemon option to twistd is necessary in order to save profile output.
comment:4 follow-up: ↓ 5 Changed at 2010-11-27T09:37:42Z by warner
What if we accepted a syntax like "tahoe start DIR -- ARG1 ARG2" or "tahoe start -- ARG1 ARG2", and passed all the extra ARG1/ARG2 strings into twistd.run()? I'd really like if it we had a way to pass arbitrary twistd arguments, rather than having to hand-code support for each one.
comment:5 in reply to: ↑ 4 Changed at 2011-09-26T07:18:32Z by zooko
Replying to warner:
What if we accepted a syntax like "tahoe start DIR -- ARG1 ARG2" or "tahoe start -- ARG1 ARG2", and passed all the extra ARG1/ARG2 strings into twistd.run()? I'd really like if it we had a way to pass arbitrary twistd arguments, rather than having to hand-code support for each one.
Created #1546 for this.
comment:6 Changed at 2020-01-16T20:13:51Z by exarkun
- Description modified (diff)
- Resolution set to duplicate
- Status changed from new to closed
ticket:1546 would seem to completely supersede this one since it suggests allowing any options to be passed through to twistd and the profiler and debugger options fall into the set of "any options".
Not sure why this was left open or why that other ticket was created instead of this one being resolved. Resolving this one as a duplicate now.
From the output of twistd --help: