lite-xmlrpc.py now uses api.bootstrap() property, logs to api.logger

This commit is contained in:
Jason Gerard DeRose 2008-10-28 02:10:56 -06:00
parent a9f1c74a7f
commit fbcb55bd11
4 changed files with 14 additions and 30 deletions

View File

@ -89,7 +89,8 @@ DEFAULT_CONFIG = (
)
LOGGING_CONSOLE_FORMAT = ' '.join([
LOGGING_CONSOLE_FORMAT = ': '.join([
'%(name)s',
'%(levelname)s',
'%(message)s',
])

View File

@ -744,7 +744,7 @@ class API(DictProxy):
self.env.log,
self.env.verbose,
)
object.__setattr__(self, 'log', 'logger')
object.__setattr__(self, 'logger', logger)
def load_plugins(self):
"""

View File

@ -114,10 +114,10 @@ def configure_logging(log_file, verbose):
level -= 10
log = logging.getLogger('ipa')
log.setLevel(level)
# Configure console handler
console = logging.StreamHandler()
console.setLevel(level)
console.setFormatter(logging.Formatter(LOGGING_CONSOLE_FORMAT))
log.addHandler(console)
@ -130,7 +130,6 @@ def configure_logging(log_file, verbose):
log.warn('Could not create log_dir %r', log_dir)
return log
file_handler = logging.FileHandler(log_file)
file_handler.setLevel(level)
file_handler.setFormatter(logging.Formatter(LOGGING_FILE_FORMAT))
log.addHandler(file_handler)

View File

@ -38,11 +38,6 @@ from ipalib.util import xmlrpc_unmarshal
import traceback
import krbV
api.load_plugins()
PORT=8888
class StoppableXMLRPCServer(SimpleXMLRPCServer.SimpleXMLRPCServer):
"""Override of TIME_WAIT"""
allow_reuse_address = True
@ -155,37 +150,26 @@ class LoggingSimpleXMLRPCRequestHandler(SimpleXMLRPCServer.SimpleXMLRPCRequestHa
if __name__ == '__main__':
# Set up our logger
logger = logging.getLogger('xmlrpcserver')
hdlr = logging.FileHandler('xmlrpcserver.log')
formatter = logging.Formatter("%(asctime)s %(levelname)s %(message)s")
hdlr.setFormatter(formatter)
logger.addHandler(hdlr)
logger.setLevel(logging.INFO)
api.bootstrap(context='server', verbose=True)
logger = api.logger
# Set up the server
XMLRPCServer = StoppableXMLRPCServer(("",PORT), LoggingSimpleXMLRPCRequestHandler)
XMLRPCServer = StoppableXMLRPCServer(
('', api.env.lite_xmlrpc_port),
LoggingSimpleXMLRPCRequestHandler
)
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
api.finalize()
for cmd in api.Command:
logger.info("registering %s" % cmd)
logger.debug('registering %s', cmd)
XMLRPCServer.register_function(api.Command[cmd], cmd)
funcs = XMLRPCServer.funcs
print "Listening on port %d" % PORT
logger.info('Listening on port %d', api.env.lite_xmlrpc_port)
try:
XMLRPCServer.serve_forever()
except KeyboardInterrupt:
XMLRPCServer.server_close()
print "Server shutdown."
logger.info('Server shutdown.')