Exemple #1
0
 def run(self, params):
     log.info("Getting context info...")
     return {
         "job_id": get_current_job().id,
         "worker_id": get_current_worker().id,
         "config": get_current_config()
     }
Exemple #2
0
    def flush(self, w=0):

        # We may log some stuff before we are even connected to Mongo!
        if not self.collection:
            return

        inserts = [{
            "worker": k,
            "logs": "\n".join(v) + "\n"
        } for k, v in iteritems(self.buffer["workers"])
                   ] + [{
                       "job": k,
                       "logs": "\n".join(v) + "\n"
                   } for k, v in iteritems(self.buffer["jobs"])]

        if len(inserts) == 0:
            return

        self.reset()

        try:
            self.collection.insert(inserts, w=w)
        except Exception as e:  # pylint: disable=broad-except
            from mrq.context import get_current_worker
            self.log("debug",
                     "Log insert failed: %s" % e,
                     worker=get_current_worker())
Exemple #3
0
 def run(self, params):
     log.info("Getting context info...")
     return {
         "job_id": get_current_job().id,
         "worker_id": get_current_worker().id,
         "config": get_current_config()
     }
Exemple #4
0
    def handler(self):
        if self._handler:
            return self._handler

        # Import here to avoid import loop
        from .context import get_current_worker
        worker = get_current_worker()

        if worker:
            return worker.log_handler
        else:
            self._handler = LogHandler(quiet=self.quiet)
            return self._handler
Exemple #5
0
    def handler(self):
        if self._handler:
            return self._handler

        # Import here to avoid import loop
        from .context import get_current_worker
        worker = get_current_worker()

        if worker:
            return worker.log_handler
        else:
            self._handler = LogHandler(quiet=self.quiet)
            return self._handler
Exemple #6
0
    def flush(self, w=0):

        # We may log some stuff before we are even connected to Mongo!
        if not self.collection:
            return

        inserts = [{
            "worker": k,
            "logs": "\n".join(v) + "\n"
        } for k, v in iteritems(self.buffer["workers"])] + [{
            "job": k,
            "logs": "\n".join(v) + "\n"
        } for k, v in iteritems(self.buffer["jobs"])]

        if len(inserts) == 0:
            return

        self.reset()

        try:
            self.collection.insert(inserts, w=w)
        except Exception as e:  # pylint: disable=broad-except
            from mrq.context import get_current_worker
            self.log("debug", "Log insert failed: %s" % e, worker=get_current_worker())
Exemple #7
0
  def flush(self, w=0):

    # We may log some stuff before we are even connected to Mongo!
    if not self.collection:
      return

    inserts = [{
      "worker": k,
      "logs": "\n".join(v) + "\n"
    } for k, v in self.buffer["workers"].iteritems()] + [{
      "job": k,
      "logs": "\n".join(v) + "\n"
    } for k, v in self.buffer["jobs"].iteritems()]

    if len(inserts) == 0:
      return

    self.reset()

    try:
      self.collection.insert(inserts, w=w)
    except pymongo.errors.AutoReconnect:
      from mrq.context import get_current_worker
      self.log("debug", "Log insert failed.", worker=get_current_worker())