AttributeError at /callbacks/

'NoneType' object has no attribute 'ip'
Request Method: POST
Request URL: http://127.0.0.1:8000/callbacks/
Django Version: 5.2.1
Exception Type: AttributeError
Exception Value:
'NoneType' object has no attribute 'ip'
Exception Location: /home/backups/work/backupstwopointo/apps/backup/backupsets/jobs/trim.py, line 18, in trim_backupset
Raised during: apps.callbacks.views.callbacks
Python Executable: /home/backups/work/backupstwopointo/.venv/bin/python3
Python Version: 3.10.18
Python Path:
['/home/backups/work/backupstwopointo',
 '/home/backups/work/backupstwopointo/.venv/bin',
 '/home/backups/.local/share/uv/python/cpython-3.10.18-linux-x86_64-gnu/lib/python310.zip',
 '/home/backups/.local/share/uv/python/cpython-3.10.18-linux-x86_64-gnu/lib/python3.10',
 '/home/backups/.local/share/uv/python/cpython-3.10.18-linux-x86_64-gnu/lib/python3.10/lib-dynload',
 '/home/backups/work/backupstwopointo/.venv/lib/python3.10/site-packages']
Server time: Wed, 04 Feb 2026 12:04:36 +0000

Traceback Switch to copy-and-paste view

  • /home/backups/work/backupstwopointo/.venv/lib/python3.10/site-packages/django/core/handlers/exception.py, line 55, in inner
    1.         return inner
    2.     else:
    3.         @wraps(get_response)
    4.         def inner(request):
    5.             try:
    1.                 response = get_response(request)
    1.             except Exception as exc:
    2.                 response = response_for_exception(request, exc)
    3.             return response
    4.         return inner
    Local vars
    Variable Value
    exc
    AttributeError("'NoneType' object has no attribute 'ip'")
    get_response
    <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7ff4307e1b40>>
    request
    <WSGIRequest: POST '/callbacks/'>
  • /home/backups/work/backupstwopointo/.venv/lib/python3.10/site-packages/django/core/handlers/base.py, line 197, in _get_response
    1.         if response is None:
    2.             wrapped_callback = self.make_view_atomic(callback)
    3.             # If it is an asynchronous view, run it in a subthread.
    4.             if iscoroutinefunction(wrapped_callback):
    5.                 wrapped_callback = async_to_sync(wrapped_callback)
    6.             try:
    1.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)
    1.             except Exception as e:
    2.                 response = self.process_exception_by_middleware(e, request)
    3.                 if response is None:
    4.                     raise
    5.         # Complain if the view returned None (a common error).
    Local vars
    Variable Value
    callback
    <function callbacks at 0x7ff42aec5b40>
    callback_args
    ()
    callback_kwargs
    {}
    middleware_method
    <bound method CsrfViewMiddleware.process_view of <CsrfViewMiddleware get_response=convert_exception_to_response.<locals>.inner>>
    request
    <WSGIRequest: POST '/callbacks/'>
    response
    None
    self
    <django.core.handlers.wsgi.WSGIHandler object at 0x7ff4307e1b40>
    wrapped_callback
    <function callbacks at 0x7ff42aec5b40>
  • /home/backups/work/backupstwopointo/.venv/lib/python3.10/site-packages/django/views/decorators/csrf.py, line 65, in _view_wrapper
    1.         async def _view_wrapper(request, *args, **kwargs):
    2.             return await view_func(request, *args, **kwargs)
    3.     else:
    4.         def _view_wrapper(request, *args, **kwargs):
    1.             return view_func(request, *args, **kwargs)
    1.     _view_wrapper.csrf_exempt = True
    2.     return wraps(view_func)(_view_wrapper)
    Local vars
    Variable Value
    args
    ()
    kwargs
    {}
    request
    <WSGIRequest: POST '/callbacks/'>
    view_func
    <function callbacks at 0x7ff42ae90e50>
  • /home/backups/work/backupstwopointo/apps/callbacks/views.py, line 45, in callbacks
    1.             logger.info(f"Sending zulip mentioning {initiator}")
    2.             uuuuid = eval(rez1)["uuid"]
    3.             bk_set = BackupSet.objects.get(uuid=uuuuid)
    4.             hostname = Machine.objects.get(active_set=bk_set).hostname
    5.             to_zulip = Notify()
    6.             to_zulip.send(os.getenv('ZULIP_RESTORE_STREAM'), f"Manual backup completed!",
    7.                           f"** Hostname ** : {hostname}\n ** Initiator ** : {initiator}")
    1.         result = updatebackupset({"uuid": eval(rez1)["uuid"], "error": error_result, "time": eval(rez1)["time"]})
    1.     elif request.method == 'PUT':
    2.         result = change_backupset(payload)
    3.     elif request.method == 'DELETE':
    4.         result = delete_backupset(payload)
    5.     return JsonResponse({"response": "success"}, safe=False)
    Local vars
    Variable Value
    bk_set
    <BackupSet: BackupSet object (223205a7-3b98-4c44-8be5-36177c3f51de)>
    error_result
    ['[2026-02-04 12:04:15] INFO common - printVersion [MainThread]: Version: 0.99 '
     'Arguments: /usr/local/bin/virtnbdbackup -d '
     'fea3dde1-3f54-48dd-8ea3-74847e1ddf21 -l inc -o '
     '/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602 '
     '-i vda',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: Backup level: '
     '[inc]',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: Libvirt '
     'library version: 10010000',
     '[2026-02-04 12:04:15] INFO libvirthelper - getDomainDisks [MainThread]: '
     'Skipping attached [cdrom] device: [sdz].',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: Domain has 1 '
     'disks attached which support changed block tracking.',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: Concurrent '
     'backup processes: [1]',
     '[2026-02-04 12:04:15] INFO libvirthelper - redefineCheckpoints [MainThread]: '
     'Loading checkpoint list from: '
     '[/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/checkpoints]',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints [MainThread]: '
     'Checkpoint handling.',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints [MainThread]: '
     'Next checkpoint id: [5].',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints [MainThread]: '
     'Parent checkpoint name [virtnbdbackup.4].',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints [MainThread]: '
     'Using checkpoint name: [virtnbdbackup.5].',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: Temporary '
     'scratch file target directory: /var/tmp',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: NDB Endpoint '
     'socket: /var/tmp/virtnbdbackup.914669',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - startBackupJob [MainThread]: '
     'Starting backup job.',
     '[2026-02-04 12:04:15] INFO libvirthelper - fsFreeze [MainThread]: Freezed '
     '[2] filesystems.',
     '[2026-02-04 12:04:15] INFO libvirthelper - fsThaw [MainThread]: Thawed [2] '
     'filesystems.',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: Started backup '
     'job with checkpoint, saving information.',
     '[2026-02-04 12:04:15] INFO libvirthelper - backupCheckpoint [MainThread]: '
     'Saving checkpoint config to: '
     '/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/checkpoints/virtnbdbackup.5.xml',
     '[2026-02-04 12:04:15] INFO virtnbdbackup - setMetaContext [vda]: INC/DIFF '
     'backup: set context to qemu:dirty-bitmap:backup-vda',
     '[2026-02-04 12:04:15] INFO nbdhelper - version [vda]: libnbd version: 1.20.3',
     '[2026-02-04 12:04:15] INFO nbdhelper - waitForServer [vda]: Waiting until '
     'NBD server at [nbd+unix:///vda?socket=/var/tmp/virtnbdbackup.914669] is up.',
     '[2026-02-04 12:04:16] INFO nbdhelper - getBlockInfo [vda]: Using Maximum '
     'Block size supported by NBD server: [33554432]',
     '[2026-02-04 12:04:16] INFO nbdhelper - waitForServer [vda]: Connection to '
     'NBD backend succeeded.',
     '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: Got 419 extents '
     'to backup.',
     '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: 80530636800 '
     'bytes disk size',
     '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: 57147392 bytes '
     'of data extents to backup',
     '[2026-02-04 12:04:16] INFO virtnbdbackup - getWriter [vda]: Write data to '
     'target file: '
     '[/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/vda.inc.virtnbdbackup.5.data.partial].',
     '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: Creating thin '
     'provisioned stream backup image',
     '',
     'saving disk vda:   0%|          | 0.00/57.1M [00:00<?, ?B/s]',
     'saving disk vda:  24%|██▍       | 13.8M/57.1M [00:00<00:00, 137MB/s]',
     'saving disk vda:  50%|████▉     | 28.4M/57.1M [00:00<00:00, 123MB/s]',
     'saving disk vda:  73%|███████▎  | 41.9M/57.1M [00:00<00:00, 120MB/… <trimmed 5320 bytes string>
    hostname
    'smart-tide.man-1.solus.stage.town'
    initiator
    'Zoltan Czika'
    output_result
    ['']
    payload
    (b'{"result": [""], "errors": ["[2026-02-04 12:04:15] INFO common - printVersio'
     b'n [MainThread]: Version: 0.99 Arguments: /usr/local/bin/virtnbdbackup -d fea'
     b'3dde1-3f54-48dd-8ea3-74847e1ddf21 -l inc -o /vz/vmprivate/backups/kvm2-dev/b'
     b'ackups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1d'
     b'df21/1769787602 -i vda", "[2026-02-04 12:04:15] INFO virtnbdbackup - main [M'
     b'ainThread]: Backup level: [inc]", "[2026-02-04 12:04:15] INFO virtnbdbackup '
     b'- main [MainThread]: Libvirt library version: 10010000", "[2026-02-04 12:04:'
     b'15] INFO libvirthelper - getDomainDisks [MainThread]: Skipping attached [cdr'
     b'om] device: [sdz].", "[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainT'
     b'hread]: Domain has 1 disks attached which support changed block tracking.", '
     b'"[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: Concurrent ba'
     b'ckup processes: [1]", "[2026-02-04 12:04:15] INFO libvirthelper - redefineCh'
     b'eckpoints [MainThread]: Loading checkpoint list from: [/vz/vmprivate/backups'
     b'/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8e'
     b'a3-74847e1ddf21/1769787602/checkpoints]", "[2026-02-04 12:04:15] INFO virtnb'
     b'dbackup - handleCheckpoints [MainThread]: Checkpoint handling.", "[2026-02-0'
     b'4 12:04:15] INFO virtnbdbackup - handleCheckpoints [MainThread]: Next checkp'
     b'oint id: [5].", "[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoint'
     b's [MainThread]: Parent checkpoint name [virtnbdbackup.4].", "[2026-02-04 12:'
     b'04:15] INFO virtnbdbackup - handleCheckpoints [MainThread]: Using checkpoint'
     b' name: [virtnbdbackup.5].", "[2026-02-04 12:04:15] INFO virtnbdbackup - main'
     b' [MainThread]: Temporary scratch file target directory: /var/tmp", "[2026-02'
     b'-04 12:04:15] INFO virtnbdbackup - main [MainThread]: NDB Endpoint socket: /'
     b'var/tmp/virtnbdbackup.914669", "[2026-02-04 12:04:15] INFO virtnbdbackup - s'
     b'tartBackupJob [MainThread]: Starting backup job.", "[2026-02-04 12:04:15] IN'
     b'FO libvirthelper - fsFreeze [MainThread]: Freezed [2] filesystems.", "[2026-'
     b'02-04 12:04:15] INFO libvirthelper - fsThaw [MainThread]: Thawed [2] filesys'
     b'tems.", "[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: Start'
     b'ed backup job with checkpoint, saving information.", "[2026-02-04 12:04:15] '
     b'INFO libvirthelper - backupCheckpoint [MainThread]: Saving checkpoint config'
     b' to: /vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f'
     b'51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/checkpoints/virtnbdback'
     b'up.5.xml", "[2026-02-04 12:04:15] INFO virtnbdbackup - setMetaContext [vda]:'
     b' INC/DIFF backup: set context to qemu:dirty-bitmap:backup-vda", "[2026-02-04'
     b' 12:04:15] INFO nbdhelper - version [vda]: libnbd version: 1.20.3", "[2026-0'
     b'2-04 12:04:15] INFO nbdhelper - waitForServer [vda]: Waiting until NBD serve'
     b'r at [nbd+unix:///vda?socket=/var/tmp/virtnbdbackup.914669] is up.", "[2026-'
     b'02-04 12:04:16] INFO nbdhelper - getBlockInfo [vda]: Using Maximum Block siz'
     b'e supported by NBD server: [33554432]", "[2026-02-04 12:04:16] INFO nbdhelpe'
     b'r - waitForServer [vda]: Connection to NBD backend succeeded.", "[2026-02-04'
     b' 12:04:16] INFO virtnbdbackup - backupDisk [vda]: Got 419 extents to backup.'
     b'", "[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: 80530636800'
     b' bytes disk size", "[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [v'
     b'da]: 57147392 bytes of data extents to backup", "[2026-02-04 12:04:16] INFO '
     b'virtnbdbackup - getWriter [vda]: Write data to target file: [/vz/vmprivate/b'
     b'ackups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-4'
     b'8dd-8ea3-74847e1ddf21/1769787602/vda.inc.virtnbdbackup.5.data.partial].", "['
     b'2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: Creating thin pr'
     b'ovisioned stream backup image", "", "saving disk vda:   0%|          | 0.00/'
     b'57.1M [00:00<?, ?B/s]", "saving disk vda:  24%|\\u2588\\u2588\\u258d       '
     b'| 13.8M/57.1M [00:00<00:00, 137MB/s]", "savi… <trimmed 5765 bytes string>
    request
    <WSGIRequest: POST '/callbacks/'>
    rez1
    ('{"result": [""], "errors": ["[2026-02-04 12:04:15] INFO common - '
     'printVersion [MainThread]: Version: 0.99 Arguments: '
     '/usr/local/bin/virtnbdbackup -d fea3dde1-3f54-48dd-8ea3-74847e1ddf21 -l inc '
     '-o '
     '/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602 '
     '-i vda", "[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
     'Backup level: [inc]", "[2026-02-04 12:04:15] INFO virtnbdbackup - main '
     '[MainThread]: Libvirt library version: 10010000", "[2026-02-04 12:04:15] '
     'INFO libvirthelper - getDomainDisks [MainThread]: Skipping attached [cdrom] '
     'device: [sdz].", "[2026-02-04 12:04:15] INFO virtnbdbackup - main '
     '[MainThread]: Domain has 1 disks attached which support changed block '
     'tracking.", "[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
     'Concurrent backup processes: [1]", "[2026-02-04 12:04:15] INFO libvirthelper '
     '- redefineCheckpoints [MainThread]: Loading checkpoint list from: '
     '[/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/checkpoints]", '
     '"[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints [MainThread]: '
     'Checkpoint handling.", "[2026-02-04 12:04:15] INFO virtnbdbackup - '
     'handleCheckpoints [MainThread]: Next checkpoint id: [5].", "[2026-02-04 '
     '12:04:15] INFO virtnbdbackup - handleCheckpoints [MainThread]: Parent '
     'checkpoint name [virtnbdbackup.4].", "[2026-02-04 12:04:15] INFO '
     'virtnbdbackup - handleCheckpoints [MainThread]: Using checkpoint name: '
     '[virtnbdbackup.5].", "[2026-02-04 12:04:15] INFO virtnbdbackup - main '
     '[MainThread]: Temporary scratch file target directory: /var/tmp", '
     '"[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: NDB Endpoint '
     'socket: /var/tmp/virtnbdbackup.914669", "[2026-02-04 12:04:15] INFO '
     'virtnbdbackup - startBackupJob [MainThread]: Starting backup job.", '
     '"[2026-02-04 12:04:15] INFO libvirthelper - fsFreeze [MainThread]: Freezed '
     '[2] filesystems.", "[2026-02-04 12:04:15] INFO libvirthelper - fsThaw '
     '[MainThread]: Thawed [2] filesystems.", "[2026-02-04 12:04:15] INFO '
     'virtnbdbackup - main [MainThread]: Started backup job with checkpoint, '
     'saving information.", "[2026-02-04 12:04:15] INFO libvirthelper - '
     'backupCheckpoint [MainThread]: Saving checkpoint config to: '
     '/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/checkpoints/virtnbdbackup.5.xml", '
     '"[2026-02-04 12:04:15] INFO virtnbdbackup - setMetaContext [vda]: INC/DIFF '
     'backup: set context to qemu:dirty-bitmap:backup-vda", "[2026-02-04 12:04:15] '
     'INFO nbdhelper - version [vda]: libnbd version: 1.20.3", "[2026-02-04 '
     '12:04:15] INFO nbdhelper - waitForServer [vda]: Waiting until NBD server at '
     '[nbd+unix:///vda?socket=/var/tmp/virtnbdbackup.914669] is up.", "[2026-02-04 '
     '12:04:16] INFO nbdhelper - getBlockInfo [vda]: Using Maximum Block size '
     'supported by NBD server: [33554432]", "[2026-02-04 12:04:16] INFO nbdhelper '
     '- waitForServer [vda]: Connection to NBD backend succeeded.", "[2026-02-04 '
     '12:04:16] INFO virtnbdbackup - backupDisk [vda]: Got 419 extents to '
     'backup.", "[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: '
     '80530636800 bytes disk size", "[2026-02-04 12:04:16] INFO virtnbdbackup - '
     'backupDisk [vda]: 57147392 bytes of data extents to backup", "[2026-02-04 '
     '12:04:16] INFO virtnbdbackup - getWriter [vda]: Write data to target file: '
     '[/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/vda.inc.virtnbdbackup.5.data.partial].", '
     '"[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: Creating thin '
     'provisioned stream backup image", "", "saving disk vda:   0%|          | '
     '0.00/57.1M [00:00<?, ?B/s]", "saving disk vda:  '
     '24%|\\u2588\\u2588\\u258d       | 13.8M/57.1M [00:00<00:00, 137MB/s]", '
     '"saving disk vda:  50%|\\u2588\\u2588\\u2588\\u2588\… <trimmed 5689 bytes string>
    to_zulip
    <apps.restore.functions.zulip.Notify object at 0x7ff43187a8c0>
    uuuuid
    '223205a7-3b98-4c44-8be5-36177c3f51de'
  • /home/backups/work/backupstwopointo/apps/callbacks/views.py, line 70, in updatebackupset
    1. @atomic
    2. def get_backupsets(payload):
    3.     return list.start(payload)
    4. def updatebackupset(payload):
    1.     return update_backupset.start(payload)
    1. def change_backupset(payload):
    2.     return modify.start(payload)
    Local vars
    Variable Value
    payload
    {'error': ['[2026-02-04 12:04:15] INFO common - printVersion [MainThread]: '
               'Version: 0.99 Arguments: /usr/local/bin/virtnbdbackup -d '
               'fea3dde1-3f54-48dd-8ea3-74847e1ddf21 -l inc -o '
               '/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602 '
               '-i vda',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Backup level: [inc]',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Libvirt library version: 10010000',
               '[2026-02-04 12:04:15] INFO libvirthelper - getDomainDisks '
               '[MainThread]: Skipping attached [cdrom] device: [sdz].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Domain has 1 disks attached which support changed block tracking.',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Concurrent backup processes: [1]',
               '[2026-02-04 12:04:15] INFO libvirthelper - redefineCheckpoints '
               '[MainThread]: Loading checkpoint list from: '
               '[/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/checkpoints]',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Checkpoint handling.',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Next checkpoint id: [5].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Parent checkpoint name [virtnbdbackup.4].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Using checkpoint name: [virtnbdbackup.5].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Temporary scratch file target directory: /var/tmp',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: NDB '
               'Endpoint socket: /var/tmp/virtnbdbackup.914669',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - startBackupJob '
               '[MainThread]: Starting backup job.',
               '[2026-02-04 12:04:15] INFO libvirthelper - fsFreeze [MainThread]: '
               'Freezed [2] filesystems.',
               '[2026-02-04 12:04:15] INFO libvirthelper - fsThaw [MainThread]: '
               'Thawed [2] filesystems.',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Started backup job with checkpoint, saving information.',
               '[2026-02-04 12:04:15] INFO libvirthelper - backupCheckpoint '
               '[MainThread]: Saving checkpoint config to: '
               '/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/checkpoints/virtnbdbackup.5.xml',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - setMetaContext [vda]: '
               'INC/DIFF backup: set context to qemu:dirty-bitmap:backup-vda',
               '[2026-02-04 12:04:15] INFO nbdhelper - version [vda]: libnbd '
               'version: 1.20.3',
               '[2026-02-04 12:04:15] INFO nbdhelper - waitForServer [vda]: '
               'Waiting until NBD server at '
               '[nbd+unix:///vda?socket=/var/tmp/virtnbdbackup.914669] is up.',
               '[2026-02-04 12:04:16] INFO nbdhelper - getBlockInfo [vda]: Using '
               'Maximum Block size supported by NBD server: [33554432]',
               '[2026-02-04 12:04:16] INFO nbdhelper - waitForServer [vda]: '
               'Connection to NBD backend succeeded.',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: Got '
               '419 extents to backup.',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: '
               '80530636800 bytes disk size',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: '
               '57147392 bytes of data extents to backup',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - getWriter [vda]: Wr… <trimmed 6303 bytes string>
  • /home/backups/work/backupstwopointo/apps/callbacks/jobs/update_backupset.py, line 17, in start
    1. from apps.maintenance.jobs import maintenances
    2. import time
    3. from datetime import datetime
    4. import json
    5. from apps.archives.views import mark
    6. def start(data):
    1.     result = update_backupset(data)
    1.     return {"deleted": f"{result}"}
    2. def update_backupset(data):
    3.     backupset = BackupSet.objects.get(uuid=data["uuid"])
    4.     logger.debug(f"Data from agent {data}")
    Local vars
    Variable Value
    data
    {'error': ['[2026-02-04 12:04:15] INFO common - printVersion [MainThread]: '
               'Version: 0.99 Arguments: /usr/local/bin/virtnbdbackup -d '
               'fea3dde1-3f54-48dd-8ea3-74847e1ddf21 -l inc -o '
               '/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602 '
               '-i vda',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Backup level: [inc]',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Libvirt library version: 10010000',
               '[2026-02-04 12:04:15] INFO libvirthelper - getDomainDisks '
               '[MainThread]: Skipping attached [cdrom] device: [sdz].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Domain has 1 disks attached which support changed block tracking.',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Concurrent backup processes: [1]',
               '[2026-02-04 12:04:15] INFO libvirthelper - redefineCheckpoints '
               '[MainThread]: Loading checkpoint list from: '
               '[/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/checkpoints]',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Checkpoint handling.',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Next checkpoint id: [5].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Parent checkpoint name [virtnbdbackup.4].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Using checkpoint name: [virtnbdbackup.5].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Temporary scratch file target directory: /var/tmp',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: NDB '
               'Endpoint socket: /var/tmp/virtnbdbackup.914669',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - startBackupJob '
               '[MainThread]: Starting backup job.',
               '[2026-02-04 12:04:15] INFO libvirthelper - fsFreeze [MainThread]: '
               'Freezed [2] filesystems.',
               '[2026-02-04 12:04:15] INFO libvirthelper - fsThaw [MainThread]: '
               'Thawed [2] filesystems.',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Started backup job with checkpoint, saving information.',
               '[2026-02-04 12:04:15] INFO libvirthelper - backupCheckpoint '
               '[MainThread]: Saving checkpoint config to: '
               '/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/checkpoints/virtnbdbackup.5.xml',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - setMetaContext [vda]: '
               'INC/DIFF backup: set context to qemu:dirty-bitmap:backup-vda',
               '[2026-02-04 12:04:15] INFO nbdhelper - version [vda]: libnbd '
               'version: 1.20.3',
               '[2026-02-04 12:04:15] INFO nbdhelper - waitForServer [vda]: '
               'Waiting until NBD server at '
               '[nbd+unix:///vda?socket=/var/tmp/virtnbdbackup.914669] is up.',
               '[2026-02-04 12:04:16] INFO nbdhelper - getBlockInfo [vda]: Using '
               'Maximum Block size supported by NBD server: [33554432]',
               '[2026-02-04 12:04:16] INFO nbdhelper - waitForServer [vda]: '
               'Connection to NBD backend succeeded.',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: Got '
               '419 extents to backup.',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: '
               '80530636800 bytes disk size',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: '
               '57147392 bytes of data extents to backup',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - getWriter [vda]: Wr… <trimmed 6303 bytes string>
  • /home/backups/work/backupstwopointo/apps/callbacks/jobs/update_backupset.py, line 84, in update_backupset
    1.         else:
    2.             backupset1.runstatus = 0
    3.             backupset1.save()
    4.     machine.last_confirmed_at = int(time.time())
    5.     machine.save()
    6.     logger.debug(f"Starting Machine maintenance (trimming/weeding/deleting) on {machine.vm_id}")
    1.     maintenances.start(machine.vm_id)
    1.     return "ok"
    Local vars
    Variable Value
    backupset
    <BackupSet: BackupSet object (223205a7-3b98-4c44-8be5-36177c3f51de)>
    backupset1
    <BackupSet: BackupSet object (223205a7-3b98-4c44-8be5-36177c3f51de)>
    backupset_reread
    <BackupSet: BackupSet object (223205a7-3b98-4c44-8be5-36177c3f51de)>
    data
    {'error': ['[2026-02-04 12:04:15] INFO common - printVersion [MainThread]: '
               'Version: 0.99 Arguments: /usr/local/bin/virtnbdbackup -d '
               'fea3dde1-3f54-48dd-8ea3-74847e1ddf21 -l inc -o '
               '/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602 '
               '-i vda',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Backup level: [inc]',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Libvirt library version: 10010000',
               '[2026-02-04 12:04:15] INFO libvirthelper - getDomainDisks '
               '[MainThread]: Skipping attached [cdrom] device: [sdz].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Domain has 1 disks attached which support changed block tracking.',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Concurrent backup processes: [1]',
               '[2026-02-04 12:04:15] INFO libvirthelper - redefineCheckpoints '
               '[MainThread]: Loading checkpoint list from: '
               '[/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/checkpoints]',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Checkpoint handling.',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Next checkpoint id: [5].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Parent checkpoint name [virtnbdbackup.4].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - handleCheckpoints '
               '[MainThread]: Using checkpoint name: [virtnbdbackup.5].',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Temporary scratch file target directory: /var/tmp',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: NDB '
               'Endpoint socket: /var/tmp/virtnbdbackup.914669',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - startBackupJob '
               '[MainThread]: Starting backup job.',
               '[2026-02-04 12:04:15] INFO libvirthelper - fsFreeze [MainThread]: '
               'Freezed [2] filesystems.',
               '[2026-02-04 12:04:15] INFO libvirthelper - fsThaw [MainThread]: '
               'Thawed [2] filesystems.',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - main [MainThread]: '
               'Started backup job with checkpoint, saving information.',
               '[2026-02-04 12:04:15] INFO libvirthelper - backupCheckpoint '
               '[MainThread]: Saving checkpoint config to: '
               '/vz/vmprivate/backups/kvm2-dev/backups/223205a7-3b98-4c44-8be5-36177c3f51de/fea3dde1-3f54-48dd-8ea3-74847e1ddf21/1769787602/checkpoints/virtnbdbackup.5.xml',
               '[2026-02-04 12:04:15] INFO virtnbdbackup - setMetaContext [vda]: '
               'INC/DIFF backup: set context to qemu:dirty-bitmap:backup-vda',
               '[2026-02-04 12:04:15] INFO nbdhelper - version [vda]: libnbd '
               'version: 1.20.3',
               '[2026-02-04 12:04:15] INFO nbdhelper - waitForServer [vda]: '
               'Waiting until NBD server at '
               '[nbd+unix:///vda?socket=/var/tmp/virtnbdbackup.914669] is up.',
               '[2026-02-04 12:04:16] INFO nbdhelper - getBlockInfo [vda]: Using '
               'Maximum Block size supported by NBD server: [33554432]',
               '[2026-02-04 12:04:16] INFO nbdhelper - waitForServer [vda]: '
               'Connection to NBD backend succeeded.',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: Got '
               '419 extents to backup.',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: '
               '80530636800 bytes disk size',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - backupDisk [vda]: '
               '57147392 bytes of data extents to backup',
               '[2026-02-04 12:04:16] INFO virtnbdbackup - getWriter [vda]: Wr… <trimmed 6303 bytes string>
    epoch_time
    1770811456
    frequency
    168
    full_backup
    '1769787602'
    latest_date_str
    '2026-02-04T12:04:16.682313'
    latest_datetime
    datetime.datetime(2026, 2, 4, 12, 4, 16, 682313)
    machine
    <Machine: Machine object (9238)>
  • /home/backups/work/backupstwopointo/apps/maintenance/jobs/maintenances.py, line 22, in start
    1. import datetime
    2. import time
    3. import os
    4. from apps.healthcheck.jobs.vms_health import GenerateMatrix
    5. def start(data):
    1.     result = maintenance(data)
    1.     return result
    2. def maintenance(data):
    3.     matrix = GenerateMatrix(data)
    Local vars
    Variable Value
    data
    'fea3dde1-3f54-48dd-8ea3-74847e1ddf21'
  • /home/backups/work/backupstwopointo/apps/maintenance/jobs/maintenances.py, line 61, in maintenance
    1.     trimlist = list(dict.fromkeys(what_to_trim))
    2.     # We need to remove the first set from trimlist, so that the auto maintenance won't trim backup silvers.
    3.     # Needed for #125- safety backup execution.
    4.     trimlist = list(set(trimlist) - {first_set})
    5.     for index in range(len(trimlist)):
    1.         trim.start(str(trimlist[index]))
    1.     logger.info(f"Trimming candidates: {trimlist}")
    2.     for index in range(len(result_)):
    3.         if len(result_[index]) > 8:
    4.             if result_[index][9] is True:
    5.                 empty.start(str(result_[index][2]))
    Local vars
    Variable Value
    data
    'fea3dde1-3f54-48dd-8ea3-74847e1ddf21'
    first_set
    '223205a7-3b98-4c44-8be5-36177c3f51de'
    index
    0
    matrix
    <apps.healthcheck.jobs.vms_health.GenerateMatrix object at 0x7ff42a7c3940>
    result_
    [[1770206676,
      'Current time',
      '223205a7-3b98-4c44-8be5-36177c3f51de',
      604800,
      604800,
      1,
      True,
      -1024171,
      'Not expired',
      False,
      1770811476],
     [1770206656,
      'virtnbdbackup.5',
      '223205a7-3b98-4c44-8be5-36177c3f51de',
      604800,
      604800,
      1,
      True,
      20,
      'Not expired',
      False,
      1770811456],
     [1770206445,
      'virtnbdbackup.4',
      '223205a7-3b98-4c44-8be5-36177c3f51de',
      604800,
      604800,
      1,
      True,
      211,
      'Not expired',
      False,
      1770811245],
     [1770205755,
      'virtnbdbackup.3',
      '223205a7-3b98-4c44-8be5-36177c3f51de',
      604800,
      604800,
      1,
      True,
      690,
      'Not expired',
      False,
      1770810555],
     [1770198129,
      'virtnbdbackup.2',
      '223205a7-3b98-4c44-8be5-36177c3f51de',
      604800,
      604800,
      1,
      True,
      7626,
      'Not expired',
      False,
      1770802929],
     [1770193860,
      'virtnbdbackup.1',
      '223205a7-3b98-4c44-8be5-36177c3f51de',
      604800,
      604800,
      1,
      True,
      4269,
      'Not expired',
      False,
      1770798660],
     [1769787606,
      'virtnbdbackup.0',
      '223205a7-3b98-4c44-8be5-36177c3f51de',
      604800,
      604800,
      1,
      True,
      406254,
      'Not expired',
      False,
      1770392406],
     [1769182505,
      'virtnbdbackup.0',
      '7847838e-8735-4096-9035-691a33624590',
      604800,
      604800,
      1,
      True,
      605101,
      'Not expired',
      False,
      1769787305],
     [1769787305,
      'Expiration time',
      '7847838e-8735-4096-9035-691a33624590',
      604800,
      604800,
      1,
      True,
      0,
      'Not expired',
      False,
      1769787305]]
    trimlist
    ['7847838e-8735-4096-9035-691a33624590']
    what_to_delete
    []
    what_to_trim
    ['223205a7-3b98-4c44-8be5-36177c3f51de',
     '223205a7-3b98-4c44-8be5-36177c3f51de',
     '223205a7-3b98-4c44-8be5-36177c3f51de',
     '223205a7-3b98-4c44-8be5-36177c3f51de',
     '223205a7-3b98-4c44-8be5-36177c3f51de',
     '223205a7-3b98-4c44-8be5-36177c3f51de',
     '223205a7-3b98-4c44-8be5-36177c3f51de',
     '7847838e-8735-4096-9035-691a33624590',
     '7847838e-8735-4096-9035-691a33624590']
    what_to_weed
    []
  • /home/backups/work/backupstwopointo/apps/backup/backupsets/jobs/trim.py, line 6, in start
    1. from apps.backup.backupsets.models import BackupSet
    2. from apps.backup.client.backupclientls import AgentComm
    3. from apps.backup.backupsets.jobs import reread
    4. def start(data):
    1.     result = trim_backupset(data)
    1.     return result
    2. def trim_backupset(data):
    3.     """
    4.     Trims the backupset by deleting the incremental backup files on the backup server
    Local vars
    Variable Value
    data
    '7847838e-8735-4096-9035-691a33624590'
  • /home/backups/work/backupstwopointo/apps/backup/backupsets/jobs/trim.py, line 18, in trim_backupset
    1.     """
    2.     Trims the backupset by deleting the incremental backup files on the backup server
    3.     :param data: uuid of the backupset
    4.     :return: success or failure message
    5.     """
    6.     back_set = BackupSet.objects.get(uuid=data)
    7.     vm_id = back_set.machine_id.vm_id
    1.     ip = back_set.hw_node.ip
    1.     secret = back_set.hw_node.secret
    2.     res = AgentComm(ip, secret)
    3.     if res.is_alive():
    4.         _ = res.trim_set(data, vm_id)
    5.         _ = reread.start({"uuid": data})
    Local vars
    Variable Value
    back_set
    <BackupSet: BackupSet object (7847838e-8735-4096-9035-691a33624590)>
    data
    '7847838e-8735-4096-9035-691a33624590'
    vm_id
    'fea3dde1-3f54-48dd-8ea3-74847e1ddf21'


Request information

USER

AnonymousUser

GET

No GET data

POST

No POST data

FILES

No FILES data

No cookie data

META

Variable Value
CONTENT_LENGTH
'5379'
CONTENT_TYPE
'application/json'
HTTP_ACCEPT
'*/*'
HTTP_ACCEPT_ENCODING
'gzip, deflate'
HTTP_CONNECTION
'close'
HTTP_HOST
'127.0.0.1:8000'
HTTP_USER_AGENT
'python-requests/2.31.0'
HTTP_X_FORWARDED_FOR
'185.149.110.162'
HTTP_X_FORWARDED_HOST
'185.149.110.205'
HTTP_X_FORWARDED_SERVER
'backups.solus-io.kuly.ro'
PATH_INFO
'/callbacks/'
QUERY_STRING
''
RAW_URI
'/callbacks/'
REMOTE_ADDR
'127.0.0.1'
REMOTE_PORT
'44778'
REQUEST_METHOD
'POST'
SCRIPT_NAME
''
SERVER_NAME
'0.0.0.0'
SERVER_PORT
'8000'
SERVER_PROTOCOL
'HTTP/1.1'
SERVER_SOFTWARE
'gunicorn/23.0.0'
gunicorn.socket
<socket.socket fd=11, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('127.0.0.1', 8000), raddr=('127.0.0.1', 44778)>
wsgi.errors
<gunicorn.http.wsgi.WSGIErrorsWrapper object at 0x7ff42a7f28c0>
wsgi.file_wrapper
<class 'gunicorn.http.wsgi.FileWrapper'>
wsgi.input
<gunicorn.http.body.Body object at 0x7ff42a7f2170>
wsgi.input_terminated
True
wsgi.multiprocess
True
wsgi.multithread
True
wsgi.run_once
False
wsgi.url_scheme
'http'
wsgi.version
(1, 0)

Settings

Using settings module backupstwopointo.settings

Setting Value
ABSOLUTE_URL_OVERRIDES
{}
ADMINS
[]
ADMIN_REORDER
({'app': 'machines', 'label': "VM's and CT's"},
 'backupsets',
 'restore',
 'backupnodes',
 'hardwarenodes',
 'plans',
 'archives',
 'django_rq')
ALLOWED_HOSTS
['127.0.0.1',
 '109.109.143.230',
 '185.149.110.205',
 '185.149.110.162',
 '185.149.110.130',
 '185.149.110.44']
APPEND_SLASH
True
AUTHENTICATION_BACKENDS
'********************'
AUTH_PASSWORD_VALIDATORS
'********************'
AUTH_USER_MODEL
'********************'
BASE_DIR
PosixPath('/home/backups/work/backupstwopointo')
CACHES
{'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}}
CACHE_MIDDLEWARE_ALIAS
'default'
CACHE_MIDDLEWARE_KEY_PREFIX
'********************'
CACHE_MIDDLEWARE_SECONDS
600
CORS_ALLOW_ALL_ORIGINS
True
CSRF_COOKIE_AGE
31449600
CSRF_COOKIE_DOMAIN
None
CSRF_COOKIE_HTTPONLY
False
CSRF_COOKIE_NAME
'csrftoken'
CSRF_COOKIE_PATH
'/'
CSRF_COOKIE_SAMESITE
'Lax'
CSRF_COOKIE_SECURE
False
CSRF_FAILURE_VIEW
'django.views.csrf.csrf_failure'
CSRF_HEADER_NAME
'HTTP_X_CSRFTOKEN'
CSRF_TRUSTED_ORIGINS
['https://backups.solus-io.kuly.ro',
 'https://backup-manager.vm.plesk-server.com',
 'https://backup-manager.stage.town',
 'http://127.0.0.1:5000']
CSRF_USE_SESSIONS
False
DATABASES
{'default': {'ATOMIC_REQUESTS': False,
             'AUTOCOMMIT': True,
             'CONN_HEALTH_CHECKS': False,
             'CONN_MAX_AGE': 0,
             'ENGINE': 'django.db.backends.postgresql',
             'HOST': 'node340115-backuptwopointo.j.layershift.co.uk',
             'NAME': 'backupstaging',
             'OPTIONS': {},
             'PASSWORD': '********************',
             'PORT': '5432',
             'TEST': {'CHARSET': None,
                      'COLLATION': None,
                      'MIGRATE': True,
                      'MIRROR': None,
                      'NAME': None},
             'TIME_ZONE': None,
             'USER': 'webadmin'}}
DATABASE_ROUTERS
[]
DATA_UPLOAD_MAX_MEMORY_SIZE
2621440
DATA_UPLOAD_MAX_NUMBER_FIELDS
1000
DATA_UPLOAD_MAX_NUMBER_FILES
100
DATETIME_FORMAT
'N j, Y, P'
DATETIME_INPUT_FORMATS
['%Y-%m-%d %H:%M:%S',
 '%Y-%m-%d %H:%M:%S.%f',
 '%Y-%m-%d %H:%M',
 '%m/%d/%Y %H:%M:%S',
 '%m/%d/%Y %H:%M:%S.%f',
 '%m/%d/%Y %H:%M',
 '%m/%d/%y %H:%M:%S',
 '%m/%d/%y %H:%M:%S.%f',
 '%m/%d/%y %H:%M']
DATE_FORMAT
'N j, Y'
DATE_INPUT_FORMATS
['%Y-%m-%d',
 '%m/%d/%Y',
 '%m/%d/%y',
 '%b %d %Y',
 '%b %d, %Y',
 '%d %b %Y',
 '%d %b, %Y',
 '%B %d %Y',
 '%B %d, %Y',
 '%d %B %Y',
 '%d %B, %Y']
DEBUG
True
DEBUG_PROPAGATE_EXCEPTIONS
False
DECIMAL_SEPARATOR
'.'
DEFAULT_AUTO_FIELD
'django.db.models.BigAutoField'
DEFAULT_CHARSET
'utf-8'
DEFAULT_EXCEPTION_REPORTER
'django.views.debug.ExceptionReporter'
DEFAULT_EXCEPTION_REPORTER_FILTER
'django.views.debug.SafeExceptionReporterFilter'
DEFAULT_FROM_EMAIL
'webmaster@localhost'
DEFAULT_INDEX_TABLESPACE
''
DEFAULT_TABLESPACE
''
DISALLOWED_USER_AGENTS
[]
EMAIL_BACKEND
'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST
'localhost'
EMAIL_HOST_PASSWORD
'********************'
EMAIL_HOST_USER
''
EMAIL_PORT
25
EMAIL_SSL_CERTFILE
None
EMAIL_SSL_KEYFILE
'********************'
EMAIL_SUBJECT_PREFIX
'[Django] '
EMAIL_TIMEOUT
None
EMAIL_USE_LOCALTIME
False
EMAIL_USE_SSL
False
EMAIL_USE_TLS
False
FILE_UPLOAD_DIRECTORY_PERMISSIONS
None
FILE_UPLOAD_HANDLERS
['django.core.files.uploadhandler.MemoryFileUploadHandler',
 'django.core.files.uploadhandler.TemporaryFileUploadHandler']
FILE_UPLOAD_MAX_MEMORY_SIZE
2621440
FILE_UPLOAD_PERMISSIONS
420
FILE_UPLOAD_TEMP_DIR
None
FIRST_DAY_OF_WEEK
0
FIXTURE_DIRS
[]
FORCE_SCRIPT_NAME
None
FORMAT_MODULE_PATH
None
FORMS_URLFIELD_ASSUME_HTTPS
False
FORM_RENDERER
'django.forms.renderers.DjangoTemplates'
GRAPH_MODELS
{'all_applications': True, 'group_models': True}
IGNORABLE_404_URLS
[]
INSTALLED_APPS
['apps',
 'apps.common',
 'apps.backup.machines',
 'apps.agent',
 'corsheaders',
 'django_extensions',
 'admin_reorder',
 'apps.restore',
 'apps.backup.plans',
 'apps.settings',
 'apps.statistics',
 'apps.backup.plandetails',
 'apps.backup.backupsets',
 'apps.backup.hardwarenodes',
 'apps.archives',
 'apps.backup.backupnodes',
 'apps.callbacks',
 'apps.backup.scheduler',
 'django_object_actions',
 'admin_extra_buttons',
 'apps.healthcheck',
 'apps.backup.snapshots',
 'django_rq',
 'django.contrib.admin',
 'django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.messages',
 'django.contrib.staticfiles',
 'django_cascading_dropdown_widget',
 'polymorphic',
 'drf_spectacular']
INTERNAL_IPS
[]
LANGUAGES
[('af', 'Afrikaans'),
 ('ar', 'Arabic'),
 ('ar-dz', 'Algerian Arabic'),
 ('ast', 'Asturian'),
 ('az', 'Azerbaijani'),
 ('bg', 'Bulgarian'),
 ('be', 'Belarusian'),
 ('bn', 'Bengali'),
 ('br', 'Breton'),
 ('bs', 'Bosnian'),
 ('ca', 'Catalan'),
 ('ckb', 'Central Kurdish (Sorani)'),
 ('cs', 'Czech'),
 ('cy', 'Welsh'),
 ('da', 'Danish'),
 ('de', 'German'),
 ('dsb', 'Lower Sorbian'),
 ('el', 'Greek'),
 ('en', 'English'),
 ('en-au', 'Australian English'),
 ('en-gb', 'British English'),
 ('eo', 'Esperanto'),
 ('es', 'Spanish'),
 ('es-ar', 'Argentinian Spanish'),
 ('es-co', 'Colombian Spanish'),
 ('es-mx', 'Mexican Spanish'),
 ('es-ni', 'Nicaraguan Spanish'),
 ('es-ve', 'Venezuelan Spanish'),
 ('et', 'Estonian'),
 ('eu', 'Basque'),
 ('fa', 'Persian'),
 ('fi', 'Finnish'),
 ('fr', 'French'),
 ('fy', 'Frisian'),
 ('ga', 'Irish'),
 ('gd', 'Scottish Gaelic'),
 ('gl', 'Galician'),
 ('he', 'Hebrew'),
 ('hi', 'Hindi'),
 ('hr', 'Croatian'),
 ('hsb', 'Upper Sorbian'),
 ('hu', 'Hungarian'),
 ('hy', 'Armenian'),
 ('ia', 'Interlingua'),
 ('id', 'Indonesian'),
 ('ig', 'Igbo'),
 ('io', 'Ido'),
 ('is', 'Icelandic'),
 ('it', 'Italian'),
 ('ja', 'Japanese'),
 ('ka', 'Georgian'),
 ('kab', 'Kabyle'),
 ('kk', 'Kazakh'),
 ('km', 'Khmer'),
 ('kn', 'Kannada'),
 ('ko', 'Korean'),
 ('ky', 'Kyrgyz'),
 ('lb', 'Luxembourgish'),
 ('lt', 'Lithuanian'),
 ('lv', 'Latvian'),
 ('mk', 'Macedonian'),
 ('ml', 'Malayalam'),
 ('mn', 'Mongolian'),
 ('mr', 'Marathi'),
 ('ms', 'Malay'),
 ('my', 'Burmese'),
 ('nb', 'Norwegian Bokmål'),
 ('ne', 'Nepali'),
 ('nl', 'Dutch'),
 ('nn', 'Norwegian Nynorsk'),
 ('os', 'Ossetic'),
 ('pa', 'Punjabi'),
 ('pl', 'Polish'),
 ('pt', 'Portuguese'),
 ('pt-br', 'Brazilian Portuguese'),
 ('ro', 'Romanian'),
 ('ru', 'Russian'),
 ('sk', 'Slovak'),
 ('sl', 'Slovenian'),
 ('sq', 'Albanian'),
 ('sr', 'Serbian'),
 ('sr-latn', 'Serbian Latin'),
 ('sv', 'Swedish'),
 ('sw', 'Swahili'),
 ('ta', 'Tamil'),
 ('te', 'Telugu'),
 ('tg', 'Tajik'),
 ('th', 'Thai'),
 ('tk', 'Turkmen'),
 ('tr', 'Turkish'),
 ('tt', 'Tatar'),
 ('udm', 'Udmurt'),
 ('ug', 'Uyghur'),
 ('uk', 'Ukrainian'),
 ('ur', 'Urdu'),
 ('uz', 'Uzbek'),
 ('vi', 'Vietnamese'),
 ('zh-hans', 'Simplified Chinese'),
 ('zh-hant', 'Traditional Chinese')]
LANGUAGES_BIDI
['he', 'ar', 'ar-dz', 'ckb', 'fa', 'ug', 'ur']
LANGUAGE_CODE
'en-us'
LANGUAGE_COOKIE_AGE
None
LANGUAGE_COOKIE_DOMAIN
None
LANGUAGE_COOKIE_HTTPONLY
False
LANGUAGE_COOKIE_NAME
'django_language'
LANGUAGE_COOKIE_PATH
'/'
LANGUAGE_COOKIE_SAMESITE
None
LANGUAGE_COOKIE_SECURE
False
LOCALE_PATHS
[]
LOGGING
{}
LOGGING_CONFIG
'logging.config.dictConfig'
LOGIN_REDIRECT_URL
'home'
LOGIN_URL
'/accounts/login/'
LOGOUT_REDIRECT_URL
'home'
MANAGERS
[]
MEDIA_ROOT
''
MEDIA_URL
'/'
MESSAGE_STORAGE
'django.contrib.messages.storage.fallback.FallbackStorage'
MIDDLEWARE
['django.middleware.security.SecurityMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'corsheaders.middleware.CorsMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.csrf.CsrfViewMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware',
 'django.contrib.messages.middleware.MessageMiddleware',
 'django.middleware.clickjacking.XFrameOptionsMiddleware']
MIGRATION_MODULES
{}
MONTH_DAY_FORMAT
'F j'
NUMBER_GROUPING
0
PASSWORD_HASHERS
'********************'
PASSWORD_RESET_TIMEOUT
'********************'
PREPEND_WWW
False
REST_FRAMEWORK
{'DEFAULT_SCHEMA_CLASS': 'drf_spectacular.openapi.AutoSchema'}
ROOT_URLCONF
'backupstwopointo.urls'
RQ_QUEUES
{'default': {'DB': 0,
             'DEFAULT_TIMEOUT': 360,
             'HOST': '109.109.139.67',
             'PASSWORD': '********************',
             'PORT': 6379},
 'high': {'DB': 0,
          'HOST': '109.109.139.67',
          'PASSWORD': '********************',
          'PORT': 6379},
 'low': {'DB': 0,
         'HOST': '109.109.139.67',
         'PASSWORD': '********************',
         'PORT': 6379}}
RQ_SHOW_ADMIN_LINK
True
SECRET_KEY
'********************'
SECRET_KEY_FALLBACKS
'********************'
SECURE_CONTENT_TYPE_NOSNIFF
True
SECURE_CROSS_ORIGIN_OPENER_POLICY
None
SECURE_HSTS_INCLUDE_SUBDOMAINS
False
SECURE_HSTS_PRELOAD
False
SECURE_HSTS_SECONDS
0
SECURE_PROXY_SSL_HEADER
None
SECURE_REDIRECT_EXEMPT
[]
SECURE_REFERRER_POLICY
'same-origin'
SECURE_SSL_HOST
None
SECURE_SSL_REDIRECT
False
SERVER_EMAIL
'root@localhost'
SESSION_CACHE_ALIAS
'default'
SESSION_COOKIE_AGE
1209600
SESSION_COOKIE_DOMAIN
None
SESSION_COOKIE_HTTPONLY
True
SESSION_COOKIE_NAME
'sessionid'
SESSION_COOKIE_PATH
'/'
SESSION_COOKIE_SAMESITE
'Lax'
SESSION_COOKIE_SECURE
False
SESSION_ENGINE
'django.contrib.sessions.backends.db'
SESSION_EXPIRE_AT_BROWSER_CLOSE
False
SESSION_FILE_PATH
None
SESSION_SAVE_EVERY_REQUEST
False
SESSION_SERIALIZER
'django.contrib.sessions.serializers.JSONSerializer'
SETTINGS_MODULE
'backupstwopointo.settings'
SHORT_DATETIME_FORMAT
'm/d/Y P'
SHORT_DATE_FORMAT
'm/d/Y'
SIGNING_BACKEND
'django.core.signing.TimestampSigner'
SILENCED_SYSTEM_CHECKS
[]
SPECTACULAR_SETTINGS
{'TITLE': 'Backup API', 'VERSION': '1.0.0'}
STATICFILES_DIRS
[]
STATICFILES_FINDERS
['django.contrib.staticfiles.finders.FileSystemFinder',
 'django.contrib.staticfiles.finders.AppDirectoriesFinder']
STATIC_ROOT
None
STATIC_URL
'/static/'
STORAGES
{'default': {'BACKEND': 'django.core.files.storage.FileSystemStorage'},
 'staticfiles': {'BACKEND': 'django.contrib.staticfiles.storage.StaticFilesStorage'}}
TEMPLATES
[{'APP_DIRS': True,
  'BACKEND': 'django.template.backends.django.DjangoTemplates',
  'DIRS': [PosixPath('/home/backups/work/backupstwopointo/templates')],
  'OPTIONS': {'context_processors': ['django.template.context_processors.debug',
                                     'django.template.context_processors.request',
                                     'django.contrib.auth.context_processors.auth',
                                     'django.contrib.messages.context_processors.messages']}}]
TEST_NON_SERIALIZED_APPS
[]
TEST_RUNNER
'django.test.runner.DiscoverRunner'
THOUSAND_SEPARATOR
','
TIME_FORMAT
'P'
TIME_INPUT_FORMATS
['%H:%M:%S', '%H:%M:%S.%f', '%H:%M']
TIME_ZONE
'UTC'
USE_I18N
True
USE_THOUSAND_SEPARATOR
False
USE_TZ
True
USE_X_FORWARDED_HOST
False
USE_X_FORWARDED_PORT
False
WSGI_APPLICATION
'backupstwopointo.wsgi.application'
X_FRAME_OPTIONS
'DENY'
YEAR_MONTH_FORMAT
'F Y'