0

I try to make Django Logging to log error from server. Now my code:

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'handlers': {
        'file': {
            'level': 'DEBUG',
            'class': 'logging.FileHandler',
            'filename': os.path.join(PROJECT_LOCAL_URL, 'mylog.log'),
        },
    },
    'loggers': {
        'django': {
            'handlers': ['file'],
            'level': 'DEBUG',
            'propagate': True,
        },
    },
}

When I check mylog.log, it have too many sql queries string - SELECT FROM, which I want not to see. How can I config this?

enter image description here

How can I remove all sql queries in logging file?

KitKit
  • 8,549
  • 12
  • 56
  • 82

1 Answers1

7

Database queries are logged by a django.db.backends logger. Assuming you still want DEBUG level logging everywhere else then you need to specifically define a rule for this logger to ignore DEBUG logging:

'loggers': {
    'django': {
        'handlers': ['file'],
        'level': 'DEBUG',
        'propagate': True,
    },
    'django.db.backends': {
        'handlers': ['file'],
        'level': 'WARNING',   # DEBUG will log all queries, so change it to WARNING.
        'propagate': False,   # Don't propagate to other handlers
    },
},
solarissmoke
  • 30,039
  • 14
  • 71
  • 73