1
2
|
import
xmlrpclib
p
=
xmlrpclib.Server(
'http://localhost:9001/RPC2'
)
|
1
|
/usr/local/lib/python2
.7
/dist-packages/supervisor-3
.1.0-py2.7.egg
/supervisor/rpcinterface
.py
|
1
2
|
>>>server.system.listMethods()
[
'supervisor.addProcessGroup'
,
'supervisor.clearAllProcessLogs'
,
'supervisor.clearLog'
,
'supervisor.clearProcessLog'
,
'supervisor.clearProcessLogs'
,
'supervisor.getAPIVersion'
,
'supervisor.getAllConfigInfo'
,
'supervisor.getAllProcessInfo'
,
'supervisor.getIdentification'
,
'supervisor.getPID'
,
'supervisor.getProcessInfo'
,
'supervisor.getState'
,
'supervisor.getSupervisorVersion'
,
'supervisor.getVersion'
,
'supervisor.readLog'
,
'supervisor.readMainLog'
,
'supervisor.readProcessLog'
,
'supervisor.readProcessStderrLog'
,
'supervisor.readProcessStdoutLog'
,
'supervisor.reloadConfig'
,
'supervisor.removeProcessGroup'
,
'supervisor.restart'
,
'supervisor.sendProcessStdin'
,
'supervisor.sendRemoteCommEvent'
,
'supervisor.shutdown'
,
'supervisor.startAllProcesses'
,
'supervisor.startProcess'
,
'supervisor.startProcessGroup'
,
'supervisor.stopAllProcesses'
,
'supervisor.stopProcess'
,
'supervisor.stopProcessGroup'
,
'supervisor.tailProcessLog'
,
'supervisor.tailProcessStderrLog'
,
'supervisor.tailProcessStdoutLog'
,
'system.listMethods'
,
'system.methodHelp'
,
'system.methodSignature'
,
'system.multicall'
]
|
1
|
server.system.methodHelp(
'supervisor.startProcess'
)
|
1
2
3
|
[rpcinterface:myrpc]
supervisor.rpcinterface_factory = myrpc.rpc:my_rpc
args = 1
|
1
2
3
4
5
6
7
8
9
10
11
12
|
#!/usr/bin/env python
class
Rpc(
object
):
def
__init__(
self
,supervisord,args):
self
.supervisord
=
supervisord
self
.args
=
args
def
walk_args(
self
):
return
self
.walk
def
my_rpc(supervisord,
*
*
args):
return
Rpc(supervisord,args)
|