mirror of
https://github.com/retspen/webvirtcloud
synced 2025-07-31 12:41:08 +00:00
logs i18n problems fixed
This commit is contained in:
parent
da9fbeaff4
commit
b81b63a962
17 changed files with 8792 additions and 11604 deletions
|
|
@ -5,7 +5,8 @@ from django.contrib import messages
|
|||
from django.contrib.auth.decorators import login_required
|
||||
from django.http import HttpResponseRedirect
|
||||
from django.shortcuts import render
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
#from django.utils.translation import gettext_lazy as _
|
||||
from django.utils.translation import gettext_noop as _
|
||||
from logs.views import addlogmsg
|
||||
|
||||
from appsettings.models import AppSettings
|
||||
|
|
@ -24,7 +25,7 @@ def appsettings(request):
|
|||
themes_list = os.listdir(sass_dir.value + "/wvc-themes")
|
||||
except FileNotFoundError as err:
|
||||
messages.error(request, err)
|
||||
addlogmsg(request.user.username, "-", "", err)
|
||||
addlogmsg(request.user.username, "-", "", err, ip=get_client_ip(request))
|
||||
|
||||
# Bootstrap settings related with filesystems, because of that they are excluded from other settings
|
||||
appsettings = AppSettings.objects.exclude(
|
||||
|
|
@ -45,7 +46,7 @@ def appsettings(request):
|
|||
msg = err
|
||||
messages.error(request, msg)
|
||||
|
||||
addlogmsg(request.user.username, "-", "", msg)
|
||||
addlogmsg(request.user.username, "-", "", msg, ip=get_client_ip(request))
|
||||
return HttpResponseRedirect(request.get_full_path())
|
||||
|
||||
if "BOOTSTRAP_THEME" in request.POST:
|
||||
|
|
@ -79,7 +80,7 @@ def appsettings(request):
|
|||
msg = err
|
||||
messages.error(request, msg)
|
||||
|
||||
addlogmsg(request.user.username, "-", "", msg)
|
||||
addlogmsg(request.user.username, "-", "", msg, ip=get_client_ip(request))
|
||||
return HttpResponseRedirect(request.get_full_path())
|
||||
|
||||
for setting in appsettings:
|
||||
|
|
@ -97,7 +98,15 @@ def appsettings(request):
|
|||
msg = err
|
||||
messages.error(request, msg)
|
||||
|
||||
addlogmsg(request.user.username, "-", "", msg)
|
||||
addlogmsg(request.user.username, "-", "", msg, ip=get_client_ip(request))
|
||||
return HttpResponseRedirect(request.get_full_path())
|
||||
|
||||
return render(request, "appsettings.html", locals())
|
||||
|
||||
def get_client_ip(request):
|
||||
x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')
|
||||
if x_forwarded_for:
|
||||
ip = x_forwarded_for.split(',')[0]
|
||||
else:
|
||||
ip = request.META.get('REMOTE_ADDR')
|
||||
return ip
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
</button>
|
||||
</li>
|
||||
<li class="nav-item" role="presentation">
|
||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#logs" type="button" role="tab" aria-controls="logs" aria-selected="false">
|
||||
<button class="nav-link" data-bs-toggle="tab" data-bs-target="#logs" type="button" role="tab" aria-controls="logs" aria-selected="false" onclick="update_logs_table(vname);">
|
||||
{% trans "Logs" %}
|
||||
</button>
|
||||
</li>
|
||||
|
|
@ -85,6 +85,7 @@
|
|||
<tr>
|
||||
<th scope="col">{% trans "Date" %}</th>
|
||||
<th scope="col">{% trans "User" %}</th>
|
||||
<th scope="col">{% trans "IP" %}</th>
|
||||
<th scope="col">{% trans "Message" %}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
|
@ -110,6 +111,7 @@
|
|||
// console.log(row);
|
||||
logs += '<tr><td style="width:150px">'+row['date']+'</td>';
|
||||
logs += '<td>'+row['user']+'</td>';
|
||||
logs += '<td>'+row['ip']+'</td>';
|
||||
logs += '<td>'+row['message']+'</td></tr>';
|
||||
});
|
||||
$("#logs_table > tbody").html(logs);
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ from django.contrib.auth.models import User
|
|||
from django.http import Http404, HttpResponse, JsonResponse
|
||||
from django.shortcuts import get_object_or_404, redirect, render
|
||||
from django.urls import reverse
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
from django.utils.translation import gettext_noop as _
|
||||
from libvirt import (VIR_DOMAIN_UNDEFINE_KEEP_NVRAM,
|
||||
VIR_DOMAIN_UNDEFINE_NVRAM,
|
||||
VIR_DOMAIN_START_PAUSED,
|
||||
|
|
@ -121,12 +121,12 @@ def instance(request, pk):
|
|||
# instance.uuid = uuid
|
||||
# instance.save()
|
||||
# msg = _(f"Fixing UUID {uuid}")
|
||||
# addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
# addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
# except Instance.DoesNotExist:
|
||||
# instance = Instance(compute=compute, name=vname, uuid=uuid)
|
||||
# instance.save()
|
||||
# msg = _("Instance does not exist: Creating new instance")
|
||||
# addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
# addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
|
||||
# userinstances = UserInstance.objects.filter(instance=instance).order_by('user__username')
|
||||
userinstances = instance.userinstance_set.order_by("user__username")
|
||||
|
|
@ -337,7 +337,7 @@ def poweron(request, pk):
|
|||
else:
|
||||
instance.proxy.start()
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, _("Power On")
|
||||
request.user.username, instance.compute.name, instance.name, _("Power On"), ip=get_client_ip(request)
|
||||
)
|
||||
|
||||
return redirect(request.META.get("HTTP_REFERER"))
|
||||
|
|
@ -348,7 +348,7 @@ def powercycle(request, pk):
|
|||
instance.proxy.force_shutdown()
|
||||
instance.proxy.start()
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, _("Power Cycle")
|
||||
request.user.username, instance.compute.name, instance.name, _("Power Cycle"), ip=get_client_ip(request)
|
||||
)
|
||||
return redirect(request.META.get("HTTP_REFERER"))
|
||||
|
||||
|
|
@ -357,7 +357,7 @@ def poweroff(request, pk):
|
|||
instance = get_instance(request.user, pk)
|
||||
instance.proxy.shutdown()
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, _("Power Off")
|
||||
request.user.username, instance.compute.name, instance.name, _("Power Off"), ip=get_client_ip(request)
|
||||
)
|
||||
|
||||
return redirect(request.META.get("HTTP_REFERER"))
|
||||
|
|
@ -367,7 +367,7 @@ def poweroff(request, pk):
|
|||
def suspend(request, pk):
|
||||
instance = get_instance(request.user, pk)
|
||||
instance.proxy.suspend()
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, _("Suspend"))
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, _("Suspend"), ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER"))
|
||||
|
||||
|
||||
|
|
@ -375,7 +375,7 @@ def suspend(request, pk):
|
|||
def resume(request, pk):
|
||||
instance = get_instance(request.user, pk)
|
||||
instance.proxy.resume()
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, _("Resume"))
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, _("Resume"), ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER"))
|
||||
|
||||
|
||||
|
|
@ -383,7 +383,7 @@ def force_off(request, pk):
|
|||
instance = get_instance(request.user, pk)
|
||||
instance.proxy.force_shutdown()
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, _("Force Off")
|
||||
request.user.username, instance.compute.name, instance.name, _("Force Off"), ip=get_client_ip(request)
|
||||
)
|
||||
return redirect(request.META.get("HTTP_REFERER"))
|
||||
|
||||
|
|
@ -414,7 +414,7 @@ def destroy(request, pk):
|
|||
|
||||
instance.delete()
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, _("Destroy")
|
||||
request.user.username, instance.compute.name, instance.name, _("Destroy"), ip=get_client_ip(request)
|
||||
)
|
||||
return redirect(reverse("instances:index"))
|
||||
|
||||
|
|
@ -465,7 +465,7 @@ def migrate(request, pk):
|
|||
"hostname": target_host.hostname,
|
||||
"method": migration_method,
|
||||
}
|
||||
addlogmsg(request.user.username, current_host, instance.name, msg)
|
||||
addlogmsg(request.user.username, current_host, instance.name, msg, ip=get_client_ip(request))
|
||||
|
||||
return redirect(request.META.get("HTTP_REFERER"))
|
||||
|
||||
|
|
@ -489,7 +489,7 @@ def set_root_pass(request, pk):
|
|||
if result["return"] == "success":
|
||||
msg = _("Reset root password")
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, msg
|
||||
request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request)
|
||||
)
|
||||
messages.success(request, msg)
|
||||
else:
|
||||
|
|
@ -523,7 +523,7 @@ def add_public_key(request, pk):
|
|||
msg = _("Installed new SSH public key %(keyname)s") % {
|
||||
"keyname": publickey.keyname
|
||||
}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
|
||||
if result["return"] == "success":
|
||||
messages.success(request, msg)
|
||||
|
|
@ -567,7 +567,7 @@ def resizevm_cpu(request, pk):
|
|||
"new": vcpu,
|
||||
}
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, msg
|
||||
request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request)
|
||||
)
|
||||
messages.success(request, msg)
|
||||
return redirect(reverse("instances:instance", args=[instance.id]) + "#resize")
|
||||
|
|
@ -615,7 +615,7 @@ def resize_memory(request, pk):
|
|||
"new_max": new_memory,
|
||||
}
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, msg
|
||||
request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request)
|
||||
)
|
||||
messages.success(request, msg)
|
||||
|
||||
|
|
@ -659,7 +659,7 @@ def resize_disk(request, pk):
|
|||
instance.proxy.resize_disk(disks_new)
|
||||
msg = _("Disk is resized: %(dev)s") % {"dev": disk["dev"]}
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, msg
|
||||
request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request)
|
||||
)
|
||||
messages.success(request, msg)
|
||||
|
||||
|
|
@ -730,7 +730,7 @@ def add_new_vol(request, pk):
|
|||
"name": name,
|
||||
"format": format,
|
||||
}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#disks")
|
||||
|
||||
|
||||
|
|
@ -780,7 +780,7 @@ def add_existing_vol(request, pk):
|
|||
cache_mode=cache,
|
||||
)
|
||||
msg = _("Attach Existing disk: %(target_dev)s") % {"target_dev": target_dev}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#disks")
|
||||
|
||||
|
||||
|
|
@ -853,7 +853,7 @@ def edit_volume(request, pk):
|
|||
else:
|
||||
messages.success(request, _("Volume is changed successfully."))
|
||||
msg = _("Edit disk: %(target_dev)s") % {"target_dev": target_dev}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#disks")
|
||||
|
||||
|
|
@ -880,7 +880,7 @@ def delete_vol(request, pk):
|
|||
instance.proxy.detach_disk(dev)
|
||||
conn_delete.del_volume(name)
|
||||
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#disks")
|
||||
|
||||
|
||||
|
|
@ -895,7 +895,7 @@ def detach_vol(request, pk):
|
|||
path = request.POST.get("path", "")
|
||||
instance.proxy.detach_disk(dev)
|
||||
msg = _("Detach disk: %(dev)s") % {"dev": dev}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#disks")
|
||||
|
||||
|
|
@ -917,7 +917,7 @@ def add_cdrom(request, pk):
|
|||
readonly=True,
|
||||
)
|
||||
msg = _("Add CD-ROM: %(target)s") % {"target": target}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#disks")
|
||||
|
||||
|
|
@ -932,7 +932,7 @@ def detach_cdrom(request, pk, dev):
|
|||
# dev = request.POST.get('detach_cdrom', '')
|
||||
instance.proxy.detach_disk(dev)
|
||||
msg = _("Detach CD-ROM: %(dev)s") % {"dev": dev}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#disks")
|
||||
|
||||
|
|
@ -947,7 +947,7 @@ def unmount_iso(request, pk):
|
|||
dev = request.POST.get("umount_iso", "")
|
||||
instance.proxy.umount_iso(dev, image)
|
||||
msg = _("Mount media: %(dev)s") % {"dev": dev}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#disks")
|
||||
|
||||
|
|
@ -962,7 +962,7 @@ def mount_iso(request, pk):
|
|||
dev = request.POST.get("mount_iso", "")
|
||||
instance.proxy.mount_iso(dev, image)
|
||||
msg = _("Unmount media: %(dev)s") % {"dev": dev}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#disks")
|
||||
|
||||
|
|
@ -980,7 +980,7 @@ def snapshot(request, pk):
|
|||
desc = request.POST.get("description", "")
|
||||
instance.proxy.create_snapshot(name, desc)
|
||||
msg = _("Create snapshot: %(snap)s") % {"snap": name}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#managesnapshot")
|
||||
|
||||
|
||||
|
|
@ -995,7 +995,7 @@ def delete_snapshot(request, pk):
|
|||
snap_name = request.POST.get("name", "")
|
||||
instance.proxy.snapshot_delete(snap_name)
|
||||
msg = _("Delete snapshot: %(snap)s") % {"snap": snap_name}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#managesnapshot")
|
||||
|
||||
|
||||
|
|
@ -1013,7 +1013,7 @@ def revert_snapshot(request, pk):
|
|||
msg += snap_name
|
||||
messages.success(request, msg)
|
||||
msg = _("Revert snapshot: %(snap)s") % {"snap": snap_name}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#managesnapshot")
|
||||
|
||||
|
||||
|
|
@ -1030,7 +1030,7 @@ def create_external_snapshot(request, pk):
|
|||
desc = request.POST.get("description", "")
|
||||
instance.proxy.create_external_snapshot("s1." + name, instance, desc=desc)
|
||||
msg = _("Create external snapshot: %(snap)s") % {"snap": name}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#managesnapshot")
|
||||
|
||||
|
||||
|
|
@ -1064,7 +1064,7 @@ def revert_external_snapshot(request, pk):
|
|||
instance.proxy.revert_external_snapshot(name, date, desc)
|
||||
instance.proxy.start() if instance_state else None
|
||||
msg = _("Revert external snapshot: %(snap)s") % {"snap": name}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#managesnapshot")
|
||||
|
||||
|
||||
|
|
@ -1085,7 +1085,7 @@ def delete_external_snapshot(request, pk):
|
|||
try:
|
||||
instance.proxy.delete_external_snapshot(name)
|
||||
msg = _("Delete external snapshot: %(snap)s") % {"snap": name}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
finally:
|
||||
instance.proxy.force_shutdown() if instance_state else None
|
||||
|
||||
|
|
@ -1102,7 +1102,7 @@ def set_vcpu(request, pk):
|
|||
else:
|
||||
instance.proxy.set_vcpu(id, 0)
|
||||
msg = _("VCPU %(id)s is enabled=%(enabled)s") % {"id": id, "enabled": enabled}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#resize")
|
||||
|
||||
|
||||
|
|
@ -1112,7 +1112,7 @@ def set_vcpu_hotplug(request, pk):
|
|||
status = True if request.POST.get("vcpu_hotplug", "False") == "True" else False
|
||||
msg = _("VCPU Hot-plug is enabled=%(status)s") % {"status": status}
|
||||
instance.proxy.set_vcpu_hotplug(status)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#resize")
|
||||
|
||||
|
||||
|
|
@ -1121,7 +1121,7 @@ def set_autostart(request, pk):
|
|||
instance = get_instance(request.user, pk)
|
||||
instance.proxy.set_autostart(1)
|
||||
msg = _("Set autostart")
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#boot_opt")
|
||||
|
||||
|
||||
|
|
@ -1130,7 +1130,7 @@ def unset_autostart(request, pk):
|
|||
instance = get_instance(request.user, pk)
|
||||
instance.proxy.set_autostart(0)
|
||||
msg = _("Unset autostart")
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#boot_opt")
|
||||
|
||||
|
||||
|
|
@ -1139,7 +1139,7 @@ def set_bootmenu(request, pk):
|
|||
instance = get_instance(request.user, pk)
|
||||
instance.proxy.set_bootmenu(1)
|
||||
msg = _("Enable boot menu")
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#boot_opt")
|
||||
|
||||
|
||||
|
|
@ -1148,7 +1148,7 @@ def unset_bootmenu(request, pk):
|
|||
instance = get_instance(request.user, pk)
|
||||
instance.proxy.set_bootmenu(0)
|
||||
msg = _("Disable boot menu")
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#boot_opt")
|
||||
|
||||
|
||||
|
|
@ -1174,7 +1174,7 @@ def set_bootorder(request, pk):
|
|||
)
|
||||
else:
|
||||
messages.success(request, _("Boot order changed successfully."))
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#boot_opt")
|
||||
|
||||
|
||||
|
|
@ -1185,7 +1185,7 @@ def change_xml(request, pk):
|
|||
if new_xml:
|
||||
instance.proxy._defineXML(new_xml)
|
||||
msg = _("Change instance XML")
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#xmledit")
|
||||
|
||||
|
||||
|
|
@ -1199,7 +1199,7 @@ def set_guest_agent(request, pk):
|
|||
instance.proxy.remove_guest_agent()
|
||||
|
||||
msg = _("Set Guest Agent: %(status)s") % {"status": status}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#options")
|
||||
|
||||
|
||||
|
|
@ -1209,7 +1209,7 @@ def set_video_model(request, pk):
|
|||
video_model = request.POST.get("video_model", "vga")
|
||||
instance.proxy.set_video_model(video_model)
|
||||
msg = _("Set Video Model: %(model)s") % {"model": video_model}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#options")
|
||||
|
||||
|
||||
|
|
@ -1239,7 +1239,7 @@ def change_network(request, pk):
|
|||
network_data[post] = request.POST.get(post, "")
|
||||
|
||||
instance.proxy.change_network(network_data)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
msg = _("Network Device Config is changed. Please shutdown instance to activate.")
|
||||
if instance.proxy.get_status() != 5:
|
||||
messages.success(request, msg)
|
||||
|
|
@ -1266,7 +1266,7 @@ def add_network(request, pk):
|
|||
|
||||
instance.proxy.add_network(mac, source, source_type, nwfilter=nwfilter)
|
||||
msg = _("Add network: %(mac)s") % {"mac": mac}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#network")
|
||||
|
||||
|
||||
|
|
@ -1277,7 +1277,7 @@ def delete_network(request, pk):
|
|||
|
||||
instance.proxy.delete_network(mac_address)
|
||||
msg = _("Delete Network: %(mac)s") % {"mac": mac_address}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#network")
|
||||
|
||||
|
||||
|
|
@ -1290,7 +1290,7 @@ def set_link_state(request, pk):
|
|||
state = "down" if state == "up" else "up"
|
||||
instance.proxy.set_link_state(mac_address, state)
|
||||
msg = _("Set Link State: %(state)s") % {"state": state}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#network")
|
||||
|
||||
|
||||
|
|
@ -1367,7 +1367,7 @@ def add_owner(request, pk):
|
|||
add_user_inst.save()
|
||||
user = User.objects.get(id=user_id)
|
||||
msg = _("Add owner: %(user)s") % {"user": user}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#users")
|
||||
|
||||
|
||||
|
|
@ -1378,7 +1378,7 @@ def del_owner(request, pk):
|
|||
userinstance = UserInstance.objects.get(pk=userinstance_id)
|
||||
userinstance.delete()
|
||||
msg = _("Delete owner: %(userinstance_id)s ") % {"userinstance_id": userinstance_id}
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#users")
|
||||
|
||||
|
||||
|
|
@ -1452,7 +1452,7 @@ def clone(request, pk):
|
|||
}
|
||||
messages.success(request, msg)
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, new_instance.name, msg
|
||||
request.user.username, instance.compute.name, new_instance.name, msg, ip=get_client_ip(request)
|
||||
)
|
||||
|
||||
if app_settings.CLONE_INSTANCE_AUTO_MIGRATE == "True":
|
||||
|
|
@ -1499,7 +1499,7 @@ def update_console(request, pk):
|
|||
else:
|
||||
msg = _("Set VNC password")
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, msg
|
||||
request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request)
|
||||
)
|
||||
|
||||
if "keymap" in form.changed_data or "clear_keymap" in form.changed_data:
|
||||
|
|
@ -1510,21 +1510,21 @@ def update_console(request, pk):
|
|||
|
||||
msg = _("Set VNC keymap")
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, msg
|
||||
request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request)
|
||||
)
|
||||
|
||||
if "type" in form.changed_data:
|
||||
instance.proxy.set_console_type(form.cleaned_data["type"])
|
||||
msg = _("Set VNC type")
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, msg
|
||||
request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request)
|
||||
)
|
||||
|
||||
if "listen_on" in form.changed_data:
|
||||
instance.proxy.set_console_listener_addr(form.cleaned_data["listen_on"])
|
||||
msg = _("Set VNC listen address")
|
||||
addlogmsg(
|
||||
request.user.username, instance.compute.name, instance.name, msg
|
||||
request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request)
|
||||
)
|
||||
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#vncsettings")
|
||||
|
|
@ -1548,7 +1548,7 @@ def change_options(request, pk):
|
|||
instance.proxy.set_options(options)
|
||||
|
||||
msg = _("Edit options")
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
return redirect(request.META.get("HTTP_REFERER") + "#options")
|
||||
|
||||
|
||||
|
|
@ -1562,7 +1562,7 @@ def getvvfile(request, pk):
|
|||
)
|
||||
|
||||
msg = _("Send console.vv file")
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg)
|
||||
addlogmsg(request.user.username, instance.compute.name, instance.name, msg, ip=get_client_ip(request))
|
||||
response = HttpResponse(
|
||||
content="",
|
||||
content_type="application/x-virt-viewer",
|
||||
|
|
@ -1884,7 +1884,7 @@ def create_instance(request, compute_id, arch, machine):
|
|||
request.user.username,
|
||||
create_instance.compute.name,
|
||||
create_instance.name,
|
||||
msg,
|
||||
msg, ip=get_client_ip(request)
|
||||
)
|
||||
return redirect(
|
||||
reverse("instances:instance", args=[create_instance.id])
|
||||
|
|
@ -1946,3 +1946,11 @@ def flavor_delete(request, pk):
|
|||
"common/confirm_delete.html",
|
||||
{"object": flavor},
|
||||
)
|
||||
|
||||
def get_client_ip(request):
|
||||
x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')
|
||||
if x_forwarded_for:
|
||||
ip = x_forwarded_for.split(',')[0]
|
||||
else:
|
||||
ip = request.META.get('REMOTE_ADDR')
|
||||
return ip
|
||||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
|
|
@ -3,6 +3,7 @@ from django.utils.translation import gettext_lazy as _
|
|||
|
||||
class Logs(Model):
|
||||
user = CharField(_("user"), max_length=50)
|
||||
ip = CharField(_("ip"), max_length=50, default=None, blank=True, null=True)
|
||||
host = CharField(_("host"), max_length=50, default="-")
|
||||
instance = CharField(_("instance"), max_length=50)
|
||||
message = CharField(_("message"), max_length=255)
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ from instances.models import Instance
|
|||
from logs.models import Logs
|
||||
|
||||
|
||||
def addlogmsg(user, host, instance, message):
|
||||
def addlogmsg(user, host, instance, message, ip=None):
|
||||
"""
|
||||
:param user:
|
||||
:param host:
|
||||
|
|
@ -15,7 +15,7 @@ def addlogmsg(user, host, instance, message):
|
|||
:param message:
|
||||
:return:
|
||||
"""
|
||||
add_log_msg = Logs(user=user, host=host, instance=instance, message=message)
|
||||
add_log_msg = Logs(user=user, host=host, instance=instance, message=message, ip=ip)
|
||||
add_log_msg.save()
|
||||
|
||||
|
||||
|
|
@ -33,6 +33,7 @@ def vm_logs(request, vname):
|
|||
for l in logs_:
|
||||
log = dict()
|
||||
log["user"] = l.user
|
||||
log["ip"] = l.ip
|
||||
log["host"] = l.host
|
||||
log["instance"] = l.instance
|
||||
log["message"] = l.message
|
||||
|
|
|
|||
|
|
@ -3,7 +3,8 @@ from computes.models import Compute
|
|||
from django.contrib import messages
|
||||
from django.http import HttpResponseRedirect
|
||||
from django.shortcuts import get_object_or_404, render
|
||||
from django.utils.translation import gettext_lazy as _
|
||||
# from django.utils.translation import gettext_lazy as _
|
||||
from django.utils.translation import gettext_noop as _
|
||||
from libvirt import libvirtError
|
||||
from logs.views import addlogmsg
|
||||
from vrtManager import util
|
||||
|
|
@ -61,11 +62,11 @@ def nwfilters(request, compute_id):
|
|||
"filter": name
|
||||
}
|
||||
conn.create_nwfilter(xml)
|
||||
addlogmsg(request.user.username, compute.hostname, "", msg)
|
||||
addlogmsg(request.user.username, compute.hostname, "", msg, ip=get_client_ip(request))
|
||||
except libvirtError as lib_err:
|
||||
messages.error(request, lib_err)
|
||||
addlogmsg(
|
||||
request.user.username, compute.hostname, "", lib_err
|
||||
request.user.username, compute.hostname, "", lib_err, ip=get_client_ip(request)
|
||||
)
|
||||
|
||||
if "del_nwfilter" in request.POST:
|
||||
|
|
@ -98,7 +99,7 @@ def nwfilters(request, compute_id):
|
|||
"NWFilter is in use by %(instance)s. Cannot be deleted."
|
||||
) % {"instance": inst}
|
||||
messages.error(request, msg)
|
||||
addlogmsg(request.user.username, compute.hostname, "", msg)
|
||||
addlogmsg(request.user.username, compute.hostname, "", msg, ip=get_client_ip(request))
|
||||
i_conn.close()
|
||||
break
|
||||
|
||||
|
|
@ -106,7 +107,7 @@ def nwfilters(request, compute_id):
|
|||
if nwfilter and not in_use:
|
||||
nwfilter.undefine()
|
||||
nwfilters_all.remove(nwfilter_info)
|
||||
addlogmsg(request.user.username, compute.hostname, "", msg)
|
||||
addlogmsg(request.user.username, compute.hostname, "", msg, ip=get_client_ip(request))
|
||||
|
||||
if "cln_nwfilter" in request.POST:
|
||||
name = request.POST.get("nwfiltername", "")
|
||||
|
|
@ -119,15 +120,15 @@ def nwfilters(request, compute_id):
|
|||
"name": name,
|
||||
"clone": cln_name,
|
||||
}
|
||||
addlogmsg(request.user.username, compute.hostname, "", msg)
|
||||
addlogmsg(request.user.username, compute.hostname, "", msg, ip=get_client_ip(request))
|
||||
|
||||
conn.close()
|
||||
except libvirtError as lib_err:
|
||||
messages.error(request, lib_err)
|
||||
addlogmsg(request.user.username, compute.hostname, "", lib_err)
|
||||
addlogmsg(request.user.username, compute.hostname, "", lib_err, ip=get_client_ip(request))
|
||||
except Exception as err:
|
||||
messages.error(request, err)
|
||||
addlogmsg(request.user.username, compute.hostname, "", err)
|
||||
addlogmsg(request.user.username, compute.hostname, "", err, ip=get_client_ip(request))
|
||||
|
||||
return render(
|
||||
request,
|
||||
|
|
@ -242,3 +243,11 @@ def nwfilter(request, compute_id, nwfltr):
|
|||
messages.error(request, error_msg)
|
||||
|
||||
return render(request, "nwfilter.html", locals())
|
||||
|
||||
def get_client_ip(request):
|
||||
x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')
|
||||
if x_forwarded_for:
|
||||
ip = x_forwarded_for.split(',')[0]
|
||||
else:
|
||||
ip = request.META.get('REMOTE_ADDR')
|
||||
return ip
|
||||
Loading…
Add table
Add a link
Reference in a new issue