mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
lite-xmlrpc.py now uses api.bootstrap() property, logs to api.logger
This commit is contained in:
parent
a9f1c74a7f
commit
fbcb55bd11
@ -89,7 +89,8 @@ DEFAULT_CONFIG = (
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
LOGGING_CONSOLE_FORMAT = ' '.join([
|
LOGGING_CONSOLE_FORMAT = ': '.join([
|
||||||
|
'%(name)s',
|
||||||
'%(levelname)s',
|
'%(levelname)s',
|
||||||
'%(message)s',
|
'%(message)s',
|
||||||
])
|
])
|
||||||
|
@ -744,7 +744,7 @@ class API(DictProxy):
|
|||||||
self.env.log,
|
self.env.log,
|
||||||
self.env.verbose,
|
self.env.verbose,
|
||||||
)
|
)
|
||||||
object.__setattr__(self, 'log', 'logger')
|
object.__setattr__(self, 'logger', logger)
|
||||||
|
|
||||||
def load_plugins(self):
|
def load_plugins(self):
|
||||||
"""
|
"""
|
||||||
|
@ -114,10 +114,10 @@ def configure_logging(log_file, verbose):
|
|||||||
level -= 10
|
level -= 10
|
||||||
|
|
||||||
log = logging.getLogger('ipa')
|
log = logging.getLogger('ipa')
|
||||||
|
log.setLevel(level)
|
||||||
|
|
||||||
# Configure console handler
|
# Configure console handler
|
||||||
console = logging.StreamHandler()
|
console = logging.StreamHandler()
|
||||||
console.setLevel(level)
|
|
||||||
console.setFormatter(logging.Formatter(LOGGING_CONSOLE_FORMAT))
|
console.setFormatter(logging.Formatter(LOGGING_CONSOLE_FORMAT))
|
||||||
log.addHandler(console)
|
log.addHandler(console)
|
||||||
|
|
||||||
@ -130,7 +130,6 @@ def configure_logging(log_file, verbose):
|
|||||||
log.warn('Could not create log_dir %r', log_dir)
|
log.warn('Could not create log_dir %r', log_dir)
|
||||||
return log
|
return log
|
||||||
file_handler = logging.FileHandler(log_file)
|
file_handler = logging.FileHandler(log_file)
|
||||||
file_handler.setLevel(level)
|
|
||||||
file_handler.setFormatter(logging.Formatter(LOGGING_FILE_FORMAT))
|
file_handler.setFormatter(logging.Formatter(LOGGING_FILE_FORMAT))
|
||||||
log.addHandler(file_handler)
|
log.addHandler(file_handler)
|
||||||
|
|
||||||
|
@ -38,11 +38,6 @@ from ipalib.util import xmlrpc_unmarshal
|
|||||||
import traceback
|
import traceback
|
||||||
import krbV
|
import krbV
|
||||||
|
|
||||||
api.load_plugins()
|
|
||||||
|
|
||||||
|
|
||||||
PORT=8888
|
|
||||||
|
|
||||||
class StoppableXMLRPCServer(SimpleXMLRPCServer.SimpleXMLRPCServer):
|
class StoppableXMLRPCServer(SimpleXMLRPCServer.SimpleXMLRPCServer):
|
||||||
"""Override of TIME_WAIT"""
|
"""Override of TIME_WAIT"""
|
||||||
allow_reuse_address = True
|
allow_reuse_address = True
|
||||||
@ -155,37 +150,26 @@ class LoggingSimpleXMLRPCRequestHandler(SimpleXMLRPCServer.SimpleXMLRPCRequestHa
|
|||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
# Set up our logger
|
api.bootstrap(context='server', verbose=True)
|
||||||
logger = logging.getLogger('xmlrpcserver')
|
logger = api.logger
|
||||||
hdlr = logging.FileHandler('xmlrpcserver.log')
|
|
||||||
formatter = logging.Formatter("%(asctime)s %(levelname)s %(message)s")
|
|
||||||
hdlr.setFormatter(formatter)
|
|
||||||
logger.addHandler(hdlr)
|
|
||||||
logger.setLevel(logging.INFO)
|
|
||||||
|
|
||||||
# Set up the server
|
# Set up the server
|
||||||
XMLRPCServer = StoppableXMLRPCServer(("",PORT), LoggingSimpleXMLRPCRequestHandler)
|
XMLRPCServer = StoppableXMLRPCServer(
|
||||||
|
('', api.env.lite_xmlrpc_port),
|
||||||
|
LoggingSimpleXMLRPCRequestHandler
|
||||||
|
)
|
||||||
XMLRPCServer.register_introspection_functions()
|
XMLRPCServer.register_introspection_functions()
|
||||||
|
|
||||||
api.finalize()
|
|
||||||
|
|
||||||
# Initialize our environment
|
|
||||||
config.set_default_env(api.env)
|
|
||||||
env_dict = config.read_config()
|
|
||||||
env_dict['server_context'] = True
|
|
||||||
api.env.update(env_dict)
|
|
||||||
|
|
||||||
# Get and register all the methods
|
# Get and register all the methods
|
||||||
|
api.finalize()
|
||||||
for cmd in api.Command:
|
for cmd in api.Command:
|
||||||
logger.info("registering %s" % cmd)
|
logger.debug('registering %s', cmd)
|
||||||
XMLRPCServer.register_function(api.Command[cmd], cmd)
|
XMLRPCServer.register_function(api.Command[cmd], cmd)
|
||||||
|
|
||||||
funcs = XMLRPCServer.funcs
|
funcs = XMLRPCServer.funcs
|
||||||
|
|
||||||
print "Listening on port %d" % PORT
|
logger.info('Listening on port %d', api.env.lite_xmlrpc_port)
|
||||||
try:
|
try:
|
||||||
XMLRPCServer.serve_forever()
|
XMLRPCServer.serve_forever()
|
||||||
except KeyboardInterrupt:
|
except KeyboardInterrupt:
|
||||||
XMLRPCServer.server_close()
|
XMLRPCServer.server_close()
|
||||||
print "Server shutdown."
|
logger.info('Server shutdown.')
|
||||||
|
Loading…
Reference in New Issue
Block a user