Django Log Viewer allows you to read & download log files in the admin page by using DataTables
.
This project was modified from: https://bitbucket.org/inkalabsinc/django-log-viewer
- Django Log Viewer is available directly from PyPI:
pip install django-log-viewer
- Add
"log_viewer"
to yourINSTALLED_APPS
setting like this
INSTALLED_APPS = [ ... "log_viewer", ]
- Include the log viewer URLconf in your project
urls.py
like this
path('logs/', include('log_viewer.urls')),
- In your
settings.py
file create the following value
LOG_VIEWER_FILES = ['logfile1', 'logfile2', ...] LOG_VIEWER_FILES_PATTERN = '*.log*' LOG_VIEWER_FILES_DIR = 'logs/' LOG_VIEWER_PAGE_LENGTH = 25 # total log lines per-page LOG_VIEWER_MAX_READ_LINES = 1000 # total log lines will be read LOG_VIEWER_FILE_LIST_MAX_ITEMS_PER_PAGE = 25 # Max log files loaded in Datatable per page LOG_VIEWER_PATTERNS = ['[INFO]', '[DEBUG]', '[WARNING]', '[ERROR]', '[CRITICAL]'] LOG_VIEWER_EXCLUDE_TEXT_PATTERN = None # String regex expression to exclude the log from line # Optionally you can set the next variables in order to customize the admin: LOG_VIEWER_FILE_LIST_TITLE = "Custom title" LOG_VIEWER_FILE_LIST_STYLES = "/static/css/my-custom.css"
- Create/register the logging
import logging logger = logging.getLogger('LoggerName') logger.info('The info message') logger.warning('The warning message') logger.error('The error message')
- Deploy static files by running the command
python manage.py collectstatic
- Start the development server and visit http://127.0.0.1:8000/logs/