def run_parser(self, stdout, stderr):
        """
        Run parser on given stdout/stderr
        Raise exceptions if anything happen
        """
        lg.debug("Plugin %s: running parser %s" % (self.name, self.params['Parser']))

        if stdout:
            lg.debug("Plugin %s: stdout: %s" % (self.name, stdout.strip()))
        if stderr:
            lg.debug("Plugin %s: stderr: %s" % (self.name, stderr.strip()))

        try:
            parser = __import__(self.params['Parser'], globals(), locals(), ['Parser'], -1)
        except __HOLE__ as e:
            lg.error("Plugin %s: can't load parser %s: %s" % (self.name, self.params['Parser'], e))
            raise

        try:
            parser = parser.Parser(stdout, stderr)
        except Exception as e:
            lg.error("Plugin %s: can't initialize parser: %s" % (self.name, e))
            lg.exception(e)
            raise

        try:
            result = parser.parse()
        except Exception as e:
            lg.error("Plugin %s: parser execution failed: %s" % (self.name, e))
            lg.exception(e)
            raise

        return result
dataset/ETHPy150Open gooddata/smoker/smoker/server/plugins/__init__.py/PluginWorker.run_parser