gmyth-stream/server/0.3/lib/log.py
branchtrunk
changeset 832 daa61fffb811
parent 831 e2baa6947dbf
child 833 7d4d75351461
     1.1 --- a/gmyth-stream/server/0.3/lib/log.py	Wed Aug 29 14:29:24 2007 +0100
     1.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.3 @@ -1,109 +0,0 @@
     1.4 -#!/usr/bin/env python
     1.5 -
     1.6 -__author__ = "Artur Duque de Souza"
     1.7 -__author_email__ = "artur.souza@indt.org.br"
     1.8 -__license__ = "GPL"
     1.9 -__version__ = "0.1"
    1.10 -
    1.11 -import os
    1.12 -import logging
    1.13 -
    1.14 -__all__ = ("Log", "log_structure")
    1.15 -
    1.16 -class log_structure(object):
    1.17 -    """Structure to hold log info."""
    1.18 -
    1.19 -    def __init__(self, log=None):
    1.20 -        self.log = log
    1.21 -        self.history = []
    1.22 -    # __init__()
    1.23 -
    1.24 -# log_structure()
    1.25 -
    1.26 -class Log(object):
    1.27 -    """This class implements a log where we can store status of
    1.28 -    all transcoders (even from those that are not running any more)."""
    1.29 -
    1.30 -    ## key = tid
    1.31 -    ## item = ls
    1.32 -    logs = {}
    1.33 -
    1.34 -    def insert(self, tid, name):
    1.35 -        """Insert a given tid on the log structure"""
    1.36 -        if not self.logs.has_key(tid):
    1.37 -            self.logs[tid] = log_structure(logging.getLogger(name))
    1.38 -            return True
    1.39 -        else:
    1.40 -            return False
    1.41 -    # insert()
    1.42 -
    1.43 -    def remove(self, tid=None):
    1.44 -        """Cleans up all log stored for a
    1.45 -        given tid or for all transcodes."""
    1.46 -        if not tid:
    1.47 -            self.logs = {}
    1.48 -        else:
    1.49 -            del(self.logs[tid])
    1.50 -
    1.51 -        return True
    1.52 -    # clean()
    1.53 -
    1.54 -    def get_status(self, tid=None, all=False):
    1.55 -        """Get the status of all transcoders or
    1.56 -        of just one of them if it's given an tid."""
    1.57 -        if not tid:
    1.58 -            ret = {}
    1.59 -            for tids, logs in self.logs.items():
    1.60 -                if len(logs.history) > 0:
    1.61 -                    if not all:
    1.62 -                        ret[tids] = logs.history[-1]
    1.63 -                    else:
    1.64 -                        ret[tids] = logs.history
    1.65 -            return ret
    1.66 -        elif self.logs.has_key(tid) and len(self.logs[tid].history) > 0:
    1.67 -            if not all:
    1.68 -                return self.logs[tid].history[-1]
    1.69 -            else:
    1.70 -                return self.logs[tid].history
    1.71 -
    1.72 -        return False
    1.73 -    # get_status()
    1.74 -
    1.75 -    def _update_status(self, tid=None, msg=""):
    1.76 -        """Update the status of a given tid. Private method that
    1.77 -        is only called inside error/info/debug wrappers"""
    1.78 -        if msg != "":
    1.79 -            self.logs[tid].history.append(msg)
    1.80 -            return True
    1.81 -        else:
    1.82 -            return False
    1.83 -    # update_status()
    1.84 -
    1.85 -    def error(self, tid, msg):
    1.86 -        """Python's Log.error wrapper"""
    1.87 -        if self.logs.has_key(tid):
    1.88 -            self.logs[tid].log.error("%s" % msg)
    1.89 -            return self._update_status(tid, msg)
    1.90 -        else:
    1.91 -            return False
    1.92 -    # error()
    1.93 -
    1.94 -    def info(self, tid, msg):
    1.95 -        """Python's Log.info wrapper"""
    1.96 -        if self.logs.has_key(tid):
    1.97 -            self.logs[tid].log.info("%s" % msg)
    1.98 -            self._update_status(tid, msg)
    1.99 -            return True
   1.100 -        else:
   1.101 -            return False
   1.102 -    # info()
   1.103 -
   1.104 -    def debug(self, tid, msg):
   1.105 -        """Python's Log.debug wrapper"""
   1.106 -        if self.logs.has_key(tid):
   1.107 -            self.logs[tid].log.debug("%s" % msg)
   1.108 -            self._update_status(tid, msg)
   1.109 -            return True
   1.110 -        else:
   1.111 -            return False
   1.112 -    # debug()