Exemple #1
0
class Play(mongo.Document):
    title = mongo.StringField()
    channel = mongo.StringField()
    performer = mongo.StringField()
    start = mongo.DateTimeField()
    end = mongo.DateTimeField()

    meta = {'indexes': ['title', 'channel']}
class Tasks(db.Document):
    """任务表"""

    id = db.UUIDField(primary_key=True, verbose_name="任务")
    name = db.StringField(verbose_name="任务名称")
    kwargs = db.StringField(verbose_name="额外参数")
    delivery_info = db.DictField(verbose_name="分发消息")
    args = db.StringField(verbose_name="参数")
    task_type = db.StringField(verbose_name="类型")
    hostname = db.StringField(verbose_name="主机名")
    time_start = db.ArrowField(verbose_name="开始时间")
    acknowledged = db.BooleanField()
    status = db.StringField(verbose_name="状态")
    state = db.StringField(verbose_name="执行状态")
    result = db.DynamicField(verbose_name="结果")
    date_done = db.ArrowField(verbose_name="结束时间")
    traceback = db.StringField(verbose_name="追踪信息")
    checked = db.BooleanField(verbose_name="是否已读")
    parent_id = db.UUIDField(verbose_name="父任务")
    children = db.DynamicField(verbose_name="子任务")

    meta = {"collection": "celery_taskmeta"}

    @classmethod
    def get_by_id_str(cls, task_id):
        """根据id字符串获取对象"""
        return cls.objects.get(id=UUID(task_id))
Exemple #3
0
class Message(db.Document):
    """
    消息日志表

    :attr module:StringField 模块
    :attr line:IntField 行号
    :attr level:StringField 日志等级
    :attr message:StringField 内容
    :attr created:ArrowField 创建时间
    """

    module = db.StringField(verbose_name="模块")
    line = db.IntField(verbose_name="行号")
    level = db.StringField(verbose_name="日志等级")
    message = db.StringField(verbose_name="内容")
    created = db.ArrowField(default=localnow, verbose_name="创建时间")
Exemple #4
0
class Log(db.Document):
    """
    请求日志表

    :attr arguments:DynamicField 参数
    :attr message:StringField 消息
    :attr created:ArrowField 创建时间
    :attr method:StringField 方法
    :attr module:StringField 模块
    :attr status_code:IntField 状态码
    :attr url:StringField 地址
    :attr ip:StringField ip地址
    :attr level:StringField 等级
    """

    arguments = db.DynamicField(verbose_name="参数")
    message = db.StringField(verbose_name="消息")
    created = db.ArrowField(verbose_name="创建时间", default=localnow)
    method = db.StringField(verbose_name="方法")
    module = db.StringField(verbose_name="模块")
    status_code = db.IntField(verbose_name="状态码")
    url = db.StringField(verbose_name="地址")
    ip = db.StringField(verbose_name="ip地址")
    level = db.StringField(verbose_name="等级")
Exemple #5
0
class Performer(mongo.Document):
    name = mongo.StringField()

    meta = {'indexes': ['name']}
Exemple #6
0
class Channel(mongo.Document):
    name = mongo.StringField()

    meta = {'indexes': ['name']}
Exemple #7
0
class Song(mongo.Document):
    title = mongo.StringField()
    performer = mongo.StringField()

    meta = {'indexes': ['title', 'performer']}