def __init__(self, app_namespace, input_name): super(BaseModInput, self).__init__() self._canceled = False self.input_name = None self.input_stanzas = {} self.context_meta = {} self.namespace = app_namespace # redirect all the logging to one file Logs.set_context(namespace=app_namespace, root_logger_log_file=input_name) self.logger = logging.getLogger() self.logger.setLevel(logging.INFO) self.http_session = None self.requests_proxy = None # check point self.ckpt = None # try to load the setup util module self.setup_util_module = None self.setup_util = None try: self.setup_util_module = importlib.import_module(self.namespace + "_setup_util") except ImportError as ie: # Commented this out to reduce noise in ModInput log # self.logger.info("Can not import package:" + # self.namespace + "_setup_util") pass
def __init__(self, alert_name): self._alert_name = alert_name # self._logger_name = "modalert_" + alert_name self._logger_name = alert_name + "_modalert" self._logger = Logs().get_logger(self._logger_name) super(ModularAlertBase, self).__init__(sys.stdin.read(), self._logger, alert_name)
def get_logger(name): log_obj = Logs() logger = log_obj.get_logger(name) ch = logging.StreamHandler(sys.stderr) ch.setLevel(logging.DEBUG) formatter = logging.Formatter( "%(asctime)s %(levelname)s pid=%(process)d tid=%(threadName)s " "file=%(filename)s:%(funcName)s:%(lineno)d | %(message)s") ch.setFormatter(formatter) logger.addHandler(ch) return logger
def __init__(self, app_namespace, input_name, use_single_instance=False): super().__init__() self.use_single_instance = use_single_instance self._canceled = False self.input_type = input_name self.input_stanzas = {} self.context_meta = {} self.namespace = app_namespace # redirect all the logging to one file Logs.set_context(namespace=app_namespace, root_logger_log_file=input_name) self.logger = logging.getLogger() self.logger.setLevel(logging.INFO) self.rest_helper = TARestHelper(self.logger) # check point self.ckpt = None self.setup_util = None
class ModularAlertBase(ModularAction): def __init__(self, alert_name): self._alert_name = alert_name # self._logger_name = "modalert_" + alert_name self._logger_name = alert_name + "_modalert" self._logger = Logs().get_logger(self._logger_name) super(ModularAlertBase, self).__init__( sys.stdin.read(), self._logger, alert_name) def log_error(self, msg): self._logger.error(msg) def log_info(self, msg): self._logger.info(msg) def log_debug(self, msg): self._logger.debug(msg) def get_param(self, param_name): return self.configuration.get(param_name) def dowork(self, result): raise NotImplemented() def run(self, argv): if len(argv) < 2 or argv[1] != "--execute": msg = 'Error: argv="{}", expected="--execute"'.format(argv) print(msg, file=sys.stderr) sys.exit(1) try: try: rh = gzip.open(self.results_file, 'rt') except ValueError: # Workaround for Python 2.7 on Windows rh = gzip.open(self.results_file, 'r') for num, result in enumerate(csv.DictReader(rh)): result.setdefault('rid', str(num)) self.update(result) self.dowork(result) except Exception as e: self._logger.error(self.message(e, 'failure')) self._logger.exception("exception=") sys.exit(2) finally: if rh: rh.close()
def get_logger(name): return Logs().get_logger(name)