跳转到主要内容

Django模型实例的简单审计。

项目描述

此应用程序旨在审计模型的更改并维护其日志。

https://travis-ci.org/gizmag/django-simple-audit.svg?branch=master

安装

您可以通过两种方式安装django-simple-audit:使用pip或通过setup.py install。

$ pip install django-simple-audit

然后修改您的settings.py文件,在INSTALLED_APPS中添加包simple_audit,并在MIDDLEWARE_CLASSES中添加simple_audit.middleware.TrackingRequestOnThreadLocalMiddleware

INSTALLED_APPS = [
    '...',
    'simple_audit',
]

MIDDLEWARE_CLASSES = [
     '...',
     'simple_audit.middleware.TrackingRequestOnThreadLocalMiddleware',
]

使用方法

跟踪模型变更

要审计模型,您需要导入simple_audit并注册要审计的模型。

from django.db import models
import simple_audit


class Message(models.Model):

    title = models.CharField(max_length=50, blank=False)
    text = models.TextField(blank=False)

    def __unicode__(self):
        return self.text


class Owner(models.Model):

    name = models.CharField(max_length=50, blank=False)

    def __unicode__(self):
        return self.name


class VirtualMachine(models.Model):

    name = models.CharField(max_length=50, blank=False)
    cpus = models.IntegerField()
    owner = models.ForeignKey(Owner)
    so = models.CharField(max_length=100, blank=False)
    started = models.BooleanField()

    def __unicode__(self):
        return self.name


simple_audit.register(Message, Owner, VirtualMachine)

高级使用(不使用httprequest或我们的中间件)

您可以在没有http请求的情况下使用django-simple-audit(例如在管理命令中)。在这种情况下,线程上下文中没有http请求。为了确保收集单个AuditRequest上的所有修改,您可以指定它

AuditRequest.new_request(path, user, ip)
try:
    # my code... in same thread
finally:
    AuditRequest.cleanup_request()

跟踪m2m字段变更

跟踪m2m字段变更仍然是实验性的,但您可以使用以下变量启用它

DJANGO_SIMPLE_AUDIT_M2M_FIELDS = True

您需要在您的django设置中至少设置一个缓存后端,否则之前的设置将被设置为False。

CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
        'LOCATION': 'unique',
        'TIMEOUT': 300,
    }
}

依赖关系

  • Django >= 1.8

  • django.contrib.contenttypes已安装到INSTALLED_APPS中

待办事项

  • 改进测试

变更日志

  • 0.2.2
    • 添加对Django 1.9的支持。

  • 0.2.1
    • 删除South,要求Django 1.8或更高版本。

  • 0.2.0
    • 使用South进行迁移

  • 0.1.12
    • 创建了一些简单的测试

    • 启用多对多字段跟踪(见使用方法)

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分发

django-simple-audit-gizmag-0.2.2.tar.gz (22.3 kB 查看哈希值)

上传时间

构建分发

django_simple_audit_gizmag-0.2.2-py2-none-any.whl (20.6 kB 查看哈希值)

上传时间 Python 2

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面