Martin Sivák has uploaded a new change for review.

Change subject: engine: Add an AuditLog message when VM cannot be prestarted
......................................................................

engine: Add an AuditLog message when VM cannot be prestarted

When a VM pool prestart is requested, but there are not enough
resources to start some VMs - inform the administrator using
Audit Log.

Change-Id: Iab04acb1746a22627b584d70c806469a818a6c8c
Bug-Url: https://bugzilla.redhat.com/1073551
Signed-off-by: Martin Sivak <[email protected]>
---
M 
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmPoolMonitor.java
M 
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
M 
backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
3 files changed, 13 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/29/32029/1

diff --git 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmPoolMonitor.java
 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmPoolMonitor.java
index 8992353..e38cdbc 100644
--- 
a/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmPoolMonitor.java
+++ 
b/backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/VmPoolMonitor.java
@@ -3,6 +3,7 @@
 import java.util.List;
 
 import org.ovirt.engine.core.bll.job.ExecutionHandler;
+import org.ovirt.engine.core.common.AuditLogType;
 import org.ovirt.engine.core.common.VdcObjectType;
 import org.ovirt.engine.core.common.action.RunVmParams;
 import org.ovirt.engine.core.common.action.VdcActionType;
@@ -16,6 +17,8 @@
 import org.ovirt.engine.core.common.config.ConfigValues;
 import org.ovirt.engine.core.compat.Guid;
 import org.ovirt.engine.core.dal.dbbroker.DbFacade;
+import org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector;
+import org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogableBase;
 import org.ovirt.engine.core.utils.log.Log;
 import org.ovirt.engine.core.utils.log.LogFactory;
 import org.ovirt.engine.core.utils.timer.OnTimerMethodAnnotation;
@@ -132,6 +135,14 @@
         VdcReturnValueBase vdcReturnValue = 
Backend.getInstance().runInternalAction(VdcActionType.RunVm,
                 runVmParams, ExecutionHandler.createInternalJobContext());
         boolean prestartingVmSucceeded = vdcReturnValue.getSucceeded();
+
+        if (!prestartingVmSucceeded) {
+            AuditLogableBase log = new AuditLogableBase();
+            log.setVmId(vmToRunAsStateless.getId());
+            log.addCustomValue("VmName", vmToRunAsStateless.getName());
+            AuditLogDirector.log(log, 
AuditLogType.VM_CANNOT_BE_PRESTARTED_NOT_ENOUGH_RESOURCES);
+        }
+
         log.infoFormat("Running Vm {0} as stateless {1}",
                 vmToRunAsStateless, prestartingVmSucceeded ? "succeeded" : 
"failed");
         return prestartingVmSucceeded;
diff --git 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
index f724657..476d4df 100644
--- 
a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
+++ 
b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/AuditLogType.java
@@ -465,6 +465,7 @@
     VM_SET_TICKET_FAILED(165, AuditLogSeverity.ERROR),
     VM_CONSOLE_CONNECTED(167),
     VM_CONSOLE_DISCONNECTED(168),
+    VM_CANNOT_BE_PRESTARTED_NOT_ENOUGH_RESOURCES(169, 
AuditLogSeverity.WARNING),
 
     VM_MIGRATION_FAILED_DURING_MOVE_TO_MAINTENANCE(140, 
AuditLogSeverity.ERROR),
     VM_SET_TO_UNKNOWN_STATUS(142, AuditLogSeverity.WARNING),
diff --git 
a/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
 
b/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
index acfb346..be60331 100644
--- 
a/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
+++ 
b/backend/manager/modules/dal/src/main/resources/bundles/AuditLogMessages.properties
@@ -860,3 +860,4 @@
 MAC_POOL_EDIT_FAILED=Failed to update MAC Pool '${MacPoolName}' 
(id=${MacPoolId}). (User: ${UserName})
 MAC_POOL_REMOVE_SUCCESS=MAC Pool '${MacPoolName}' (id=${MacPoolId}) was 
removed. (User: ${UserName})
 MAC_POOL_REMOVE_FAILED=Failed to remove MAC Pool '${MacPoolName}' 
(id=${MacPoolId}). (User: ${UserName})
+VM_CANNOT_BE_PRESTARTED_NOT_ENOUGH_RESOURCES=Cannot pre-start VM '${VmName}' 
because there is no host with sufficient resources. Will try again.
\ No newline at end of file


-- 
To view, visit http://gerrit.ovirt.org/32029
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Iab04acb1746a22627b584d70c806469a818a6c8c
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Martin Sivák <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to