123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- from django.db import models
- from django.conf import settings
- from django.utils.translation import ugettext_lazy as _
- try:
- from idmapper.models import SharedMemoryModel as Model
- except ImportError:
- Model = models.Model
- import datetime
- from manager import DBLogManager
- __all__ = ('Error', 'ErrorBatch')
- class ErrorBatch(Model):
- class_name = models.CharField(_('Type'), max_length=128)
- message = models.TextField()
- traceback = models.TextField()
- is_resolved = models.BooleanField(default=False)
- times_seen = models.PositiveIntegerField(default=1)
- last_seen = models.DateTimeField(default=datetime.datetime.now)
- first_seen = models.DateTimeField(default=datetime.datetime.now)
- url = models.URLField(verify_exists=False, null=True, blank=True)
- server_name = models.CharField(max_length=128, db_index=True)
- checksum = models.CharField(max_length=32, db_index=True)
- objects = DBLogManager()
- class Meta:
- unique_together = (('class_name', 'server_name', 'checksum'),)
- verbose_name_plural = 'Error batches'
-
- def __unicode__(self):
- return "(%s) %s: %s" % (self.times_seen, self.class_name, self.message)
- class Error(Model):
- class_name = models.CharField(_('type'), max_length=128)
- message = models.TextField()
- traceback = models.TextField()
- datetime = models.DateTimeField(default=datetime.datetime.now)
- url = models.URLField(verify_exists=False, null=True, blank=True)
- server_name = models.CharField(max_length=128, db_index=True)
- objects = DBLogManager()
- def __unicode__(self):
- return "%s: %s" % (self.class_name, self.message)
|