Policy Module first commit
[osm/MON.git] / policy_module / osm_policy_module / cmd / policy_module_agent.py
1 import argparse
2 import logging
3 import sys
4
5 from osm_policy_module.core.config import Config
6
7 from osm_policy_module.core.agent import PolicyModuleAgent
8
9
10 def main():
11 cfg = Config.instance()
12 parser = argparse.ArgumentParser(prog='pm-scaling-config-agent')
13 parser.add_argument('--config-file', nargs='?', help='Policy module agent configuration file')
14 args = parser.parse_args()
15 if args.config_file:
16 cfg.load_file(args.config_file)
17 if cfg.get('policy_module', 'log_dir') == 'stdout':
18 logging.basicConfig(stream=sys.stdout,
19 format='%(asctime)s %(message)s',
20 datefmt='%m/%d/%Y %I:%M:%S %p',
21 level=logging._nameToLevel[cfg.get('policy_module', 'log_level')])
22 else:
23 logging.basicConfig(filename=cfg.get('policy_module', 'log_dir') + 'pm_agent.log',
24 format='%(asctime)s %(message)s',
25 datefmt='%m/%d/%Y %I:%M:%S %p', filemode='a',
26 level=logging._nameToLevel[cfg.get('policy_module', 'log_level')])
27 log = logging.getLogger(__name__)
28 log.info("Starting policy module agent...")
29 agent = PolicyModuleAgent()
30 agent.run()