class UnixApplicationRunner(app.ApplicationRunner): (source)
| Method | daemonize |
Daemonizes the application on Unix. This is done by the usual double forking approach. |
| Method | postApplication |
To be called after the application is created: start the application and run the reactor. After the reactor stops, clean up PID files and such. |
| Method | preApplication |
Do pre-application-creation setup. |
| Method | removePID |
Remove the specified PID file, if possible. Errors are logged, not raised. |
| Method | setupEnvironment |
Set the filesystem root, the working directory, and daemonize. |
| Method | shedPrivileges |
Change the UID and GID or the EUID and EGID of this process. |
| Method | startApplication |
Configure global process state based on the given application and run the application. |
| Instance Variable | oldstderr |
Undocumented |
| Instance Variable | oldstdout |
Undocumented |
| Method | _formatChildException |
No summary |
| Method | _waitForStart |
Wait for the daemonization success. |
Inherited from ApplicationRunner:
| Method | __init__ |
Undocumented |
| Method | createOrGetApplication |
Create or load an Application based on the parameters found in the given ServerOptions instance. |
| Method | run |
Run the application. |
| Method | startReactor |
Run the reactor with the given configuration. Subclasses should probably call this from postApplication. |
| Instance Variable | application |
Available in postApplication, but not preApplication. This is the application object. |
| Instance Variable | config |
The config object, which provides a dict-like interface. |
| Instance Variable | logger |
Instance provided by loggerFactory. |
| Instance Variable | loggerFactory |
Factory for creating object responsible for logging. |
| Instance Variable | profiler |
Instance provided by profilerFactory. |
| Instance Variable | profilerFactory |
Factory for creating a profiler object, able to profile the application if options are set accordingly. |
| Instance Variable | _exitSignal |
Undocumented |
| Parameters | |
| reactor | The reactor in use. If it provides IReactorDaemonize, its daemonization-related callbacks will be invoked. |
| Returns | |
| int | A writable pipe to be used to report errors. |
| See Also | |
| http://code.activestate.com/recipes/278731/ | |
| W. Richard Stevens, "Advanced Programming in the Unix Environment", 1992, Addison-Wesley, ISBN 0-201-56317-7 | |
| Parameters | |
| pidfile:str | The path to the PID tracking file. |
| Parameters | |
chroot:str or None | If not None, a path to use as the filesystem root (using os.chroot). |
| rundir:str | The path to set as the working directory. |
| nodaemon:bool | A flag which, if set, indicates that daemonization should not be done. |
umask:int or None | The value to which to change the process umask. |
pidfile:str or None | If not None, the path to a file into which to put the PID of this process. |
| Parameters | |
| application | An object which can be adapted to service.IProcess and service.IService. |
Format the exception in preparation for writing to the status pipe. This does the right thing on Python 2 if the exception's message is Unicode, and in all cases limits the length of the message afte* encoding to 100 bytes.
This means the returned message may be truncated in the middle of a unicode escape.
| Parameters | |
exception:Exception | The exception to format. |
| Returns | |
bytes | The formatted message, suitable for writing to the status pipe. |