CP-9092: XenCenter work for Dom0 memory usage alert

-Adding control domain memory usage alerts

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
This commit is contained in:
Gabor Apati-Nagy 2014-08-05 21:40:26 +01:00
parent 09ea80a06f
commit c57800113b
7 changed files with 562 additions and 123 deletions

View File

@ -118,9 +118,12 @@ namespace XenAdmin.Alerts
case PerfmonDefinition.ALARM_TYPE_FILESYSTEM:
AlarmType = AlarmType.FileSystem;
break;
case PerfmonDefinition.ALARM_TYPE_MEMORY:
case PerfmonDefinition.ALARM_TYPE_MEMORY_FREE:
AlarmType = AlarmType.Memory;
break;
case PerfmonDefinition.ALARM_TYPE_MEMORY_DOM0_USAGE:
AlarmType = AlarmType.Dom0MemoryDemand;
break;
default:
{
var match = PerfmonDefinition.SrRegex.Match(variableName);
@ -184,6 +187,10 @@ namespace XenAdmin.Alerts
Util.MemorySizeString(CurrentValue * Util.BINARY_KILO),//xapi unit is in kib
Util.TimeString(TriggerPeriod),
Util.MemorySizeString(TriggerLevel * Util.BINARY_KILO));
case AlarmType.Dom0MemoryDemand:
return string.Format(Messages.ALERT_ALARM_DOM0_MEMORY_DEMAND_DESCRIPTION,
Helpers.GetNameAndObject(XenObject),
Util.PercentageString(CurrentValue));
case AlarmType.Storage:
return string.Format(Messages.ALERT_ALARM_STORAGE_DESCRIPTION,
Helpers.GetNameAndObject(XenObject),
@ -215,6 +222,8 @@ namespace XenAdmin.Alerts
return Messages.ALERT_ALARM_MEMORY;
case AlarmType.Storage:
return Messages.ALERT_ALARM_STORAGE;
case AlarmType.Dom0MemoryDemand:
return Messages.ALERT_ALARM_DOM0_MEMORY;
default:
return base.Title;
}
@ -289,5 +298,5 @@ namespace XenAdmin.Alerts
}
}
public enum AlarmType { None, Cpu, Net, Disk, FileSystem, Memory, Storage }
public enum AlarmType { None, Cpu, Net, Disk, FileSystem, Memory, Storage, Dom0MemoryDemand }
}

View File

@ -33,6 +33,15 @@ namespace XenAdmin.SettingsPanels
this.AlertIntervalMinutesLabel = new System.Windows.Forms.Label();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.label1 = new System.Windows.Forms.Label();
this.nudAlertInterval = new XenAdmin.SettingsPanels.AlertNumericUpDown();
this.Dom0MemoryUsageGroupBox = new XenAdmin.Controls.DecentGroupBox();
this.nudDom0MemUsage = new XenAdmin.SettingsPanels.AlertNumericUpDown();
this.Dom0MemoryDurationThresholdLabel = new System.Windows.Forms.Label();
this.nudDom0MemoryDurationThreshold = new XenAdmin.SettingsPanels.AlertNumericUpDown();
this.Dom0MemoryUsagePercentLabel = new System.Windows.Forms.Label();
this.Dom0MemoryAlertCheckBox = new XenAdmin.SettingsPanels.AlertCheckBox();
this.dom0MemoryMinutesLabel = new System.Windows.Forms.Label();
this.dom0MemoryPercentLabel = new System.Windows.Forms.Label();
this.MemoryGroupBox = new XenAdmin.Controls.DecentGroupBox();
this.memoryMinutesLabel = new System.Windows.Forms.Label();
this.nudMemoryDurationThreshold = new XenAdmin.SettingsPanels.AlertNumericUpDown();
@ -73,8 +82,11 @@ namespace XenAdmin.SettingsPanels
this.CPUAlertCheckBox = new XenAdmin.SettingsPanels.AlertCheckBox();
this.CPUUsagePercentLabel = new System.Windows.Forms.Label();
this.CPUDurationThresholdLabel = new System.Windows.Forms.Label();
this.nudAlertInterval = new XenAdmin.SettingsPanels.AlertNumericUpDown();
this.tableLayoutPanel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.nudAlertInterval)).BeginInit();
this.Dom0MemoryUsageGroupBox.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.nudDom0MemUsage)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nudDom0MemoryDurationThreshold)).BeginInit();
this.MemoryGroupBox.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.nudMemoryDurationThreshold)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nudMemoryUsage)).BeginInit();
@ -90,7 +102,6 @@ namespace XenAdmin.SettingsPanels
this.CpuGroupBox.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.nudCPUUsagePercent)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nudCPUDurationThreshold)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nudAlertInterval)).BeginInit();
this.SuspendLayout();
//
// AlertIntervalLabel
@ -106,8 +117,9 @@ namespace XenAdmin.SettingsPanels
// tableLayoutPanel1
//
resources.ApplyResources(this.tableLayoutPanel1, "tableLayoutPanel1");
this.tableLayoutPanel1.Controls.Add(this.Dom0MemoryUsageGroupBox, 0, 5);
this.tableLayoutPanel1.Controls.Add(this.MemoryGroupBox, 0, 3);
this.tableLayoutPanel1.Controls.Add(this.SrGroupBox, 0, 3);
this.tableLayoutPanel1.Controls.Add(this.SrGroupBox, 0, 4);
this.tableLayoutPanel1.Controls.Add(this.DiskGroupBox, 0, 2);
this.tableLayoutPanel1.Controls.Add(this.NetGroupBox, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.CpuGroupBox, 0, 0);
@ -118,6 +130,111 @@ namespace XenAdmin.SettingsPanels
resources.ApplyResources(this.label1, "label1");
this.label1.Name = "label1";
//
// nudAlertInterval
//
this.nudAlertInterval.Increment = new decimal(new int[] {
5,
0,
0,
0});
resources.ApplyResources(this.nudAlertInterval, "nudAlertInterval");
this.nudAlertInterval.Maximum = new decimal(new int[] {
86400,
0,
0,
0});
this.nudAlertInterval.Minimum = new decimal(new int[] {
5,
0,
0,
0});
this.nudAlertInterval.Name = "nudAlertInterval";
this.nudAlertInterval.Value = new decimal(new int[] {
60,
0,
0,
0});
//
// Dom0MemoryUsageGroupBox
//
this.Dom0MemoryUsageGroupBox.Controls.Add(this.nudDom0MemUsage);
this.Dom0MemoryUsageGroupBox.Controls.Add(this.Dom0MemoryDurationThresholdLabel);
this.Dom0MemoryUsageGroupBox.Controls.Add(this.nudDom0MemoryDurationThreshold);
this.Dom0MemoryUsageGroupBox.Controls.Add(this.Dom0MemoryUsagePercentLabel);
this.Dom0MemoryUsageGroupBox.Controls.Add(this.Dom0MemoryAlertCheckBox);
this.Dom0MemoryUsageGroupBox.Controls.Add(this.dom0MemoryMinutesLabel);
this.Dom0MemoryUsageGroupBox.Controls.Add(this.dom0MemoryPercentLabel);
resources.ApplyResources(this.Dom0MemoryUsageGroupBox, "Dom0MemoryUsageGroupBox");
this.Dom0MemoryUsageGroupBox.Name = "Dom0MemoryUsageGroupBox";
this.Dom0MemoryUsageGroupBox.TabStop = false;
//
// nudDom0MemUsage
//
this.nudDom0MemUsage.Increment = new decimal(new int[] {
5,
0,
0,
0});
resources.ApplyResources(this.nudDom0MemUsage, "nudDom0MemUsage");
this.nudDom0MemUsage.Minimum = new decimal(new int[] {
5,
0,
0,
0});
this.nudDom0MemUsage.Name = "nudDom0MemUsage";
this.nudDom0MemUsage.Value = new decimal(new int[] {
95,
0,
0,
0});
//
// Dom0MemoryDurationThresholdLabel
//
resources.ApplyResources(this.Dom0MemoryDurationThresholdLabel, "Dom0MemoryDurationThresholdLabel");
this.Dom0MemoryDurationThresholdLabel.Name = "Dom0MemoryDurationThresholdLabel";
//
// nudDom0MemoryDurationThreshold
//
resources.ApplyResources(this.nudDom0MemoryDurationThreshold, "nudDom0MemoryDurationThreshold");
this.nudDom0MemoryDurationThreshold.Maximum = new decimal(new int[] {
60,
0,
0,
0});
this.nudDom0MemoryDurationThreshold.Minimum = new decimal(new int[] {
1,
0,
0,
0});
this.nudDom0MemoryDurationThreshold.Name = "nudDom0MemoryDurationThreshold";
this.nudDom0MemoryDurationThreshold.Value = new decimal(new int[] {
1,
0,
0,
0});
//
// Dom0MemoryUsagePercentLabel
//
resources.ApplyResources(this.Dom0MemoryUsagePercentLabel, "Dom0MemoryUsagePercentLabel");
this.Dom0MemoryUsagePercentLabel.Name = "Dom0MemoryUsagePercentLabel";
//
// Dom0MemoryAlertCheckBox
//
resources.ApplyResources(this.Dom0MemoryAlertCheckBox, "Dom0MemoryAlertCheckBox");
this.Dom0MemoryAlertCheckBox.BackColor = System.Drawing.Color.White;
this.Dom0MemoryAlertCheckBox.Name = "Dom0MemoryAlertCheckBox";
this.Dom0MemoryAlertCheckBox.UseVisualStyleBackColor = false;
//
// dom0MemoryMinutesLabel
//
resources.ApplyResources(this.dom0MemoryMinutesLabel, "dom0MemoryMinutesLabel");
this.dom0MemoryMinutesLabel.Name = "dom0MemoryMinutesLabel";
//
// dom0MemoryPercentLabel
//
resources.ApplyResources(this.dom0MemoryPercentLabel, "dom0MemoryPercentLabel");
this.dom0MemoryPercentLabel.Name = "dom0MemoryPercentLabel";
//
// MemoryGroupBox
//
this.MemoryGroupBox.Controls.Add(this.memoryMinutesLabel);
@ -533,31 +650,6 @@ namespace XenAdmin.SettingsPanels
resources.ApplyResources(this.CPUDurationThresholdLabel, "CPUDurationThresholdLabel");
this.CPUDurationThresholdLabel.Name = "CPUDurationThresholdLabel";
//
// nudAlertInterval
//
this.nudAlertInterval.Increment = new decimal(new int[] {
5,
0,
0,
0});
resources.ApplyResources(this.nudAlertInterval, "nudAlertInterval");
this.nudAlertInterval.Maximum = new decimal(new int[] {
86400,
0,
0,
0});
this.nudAlertInterval.Minimum = new decimal(new int[] {
5,
0,
0,
0});
this.nudAlertInterval.Name = "nudAlertInterval";
this.nudAlertInterval.Value = new decimal(new int[] {
60,
0,
0,
0});
//
// PerfmonAlertEditPage
//
resources.ApplyResources(this, "$this");
@ -569,6 +661,11 @@ namespace XenAdmin.SettingsPanels
this.Controls.Add(this.tableLayoutPanel1);
this.Name = "PerfmonAlertEditPage";
this.tableLayoutPanel1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.nudAlertInterval)).EndInit();
this.Dom0MemoryUsageGroupBox.ResumeLayout(false);
this.Dom0MemoryUsageGroupBox.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.nudDom0MemUsage)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.nudDom0MemoryDurationThreshold)).EndInit();
this.MemoryGroupBox.ResumeLayout(false);
this.MemoryGroupBox.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.nudMemoryDurationThreshold)).EndInit();
@ -589,7 +686,6 @@ namespace XenAdmin.SettingsPanels
this.CpuGroupBox.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.nudCPUUsagePercent)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.nudCPUDurationThreshold)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.nudAlertInterval)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
@ -642,5 +738,13 @@ namespace XenAdmin.SettingsPanels
private System.Windows.Forms.Label SrDurationThresholdLabel;
private System.Windows.Forms.Label SrUsageLabel;
private System.Windows.Forms.Label label1;
private Controls.DecentGroupBox Dom0MemoryUsageGroupBox;
private AlertNumericUpDown nudDom0MemUsage;
private System.Windows.Forms.Label Dom0MemoryDurationThresholdLabel;
private AlertNumericUpDown nudDom0MemoryDurationThreshold;
private System.Windows.Forms.Label Dom0MemoryUsagePercentLabel;
private AlertCheckBox Dom0MemoryAlertCheckBox;
private System.Windows.Forms.Label dom0MemoryMinutesLabel;
private System.Windows.Forms.Label dom0MemoryPercentLabel;
}
}

View File

@ -59,6 +59,7 @@ namespace XenAdmin.SettingsPanels
private readonly AlertGroup diskAlert;
private readonly AlertGroup memoryAlert;
private readonly AlertGroup srAlert;
private readonly AlertGroup dom0MemoryAlert;
public PerfmonAlertEditPage()
{
@ -127,7 +128,7 @@ namespace XenAdmin.SettingsPanels
{
AlertEnablementChanged = SetAlertIntervalEnablement,
SubTextFormat = Messages.ALERT_MEMORY_SUB_TEXT,
PerfmonDefinitionName = PerfmonDefinition.ALARM_TYPE_MEMORY,
PerfmonDefinitionName = PerfmonDefinition.ALARM_TYPE_MEMORY_FREE,
XapiToGuiTriggerLevel = (num => num / 1024),
XapiToGuiTriggerPeriod = (num => num / 60),
XapiToGuiAlertInterval = (num => num / 60),
@ -152,11 +153,28 @@ namespace XenAdmin.SettingsPanels
GuiToXapiAlertInterval = (num => num * 60),
};
dom0MemoryAlert = new AlertGroup(Dom0MemoryAlertCheckBox, Dom0MemoryUsageGroupBox,
nudDom0MemUsage, nudDom0MemoryDurationThreshold, nudAlertInterval,
new[] { dom0MemoryMinutesLabel, dom0MemoryPercentLabel, Dom0MemoryUsagePercentLabel, Dom0MemoryDurationThresholdLabel })
{
AlertEnablementChanged = SetAlertIntervalEnablement,
SubTextFormat = Messages.ALERT_DOM0_MEMORY_SUB_TEXT,
PerfmonDefinitionName = PerfmonDefinition.ALARM_TYPE_MEMORY_DOM0_USAGE,
XapiToGuiTriggerLevel = (num => num * 100),
XapiToGuiTriggerPeriod = (num => num / 60),
XapiToGuiAlertInterval = (num => num / 60),
GuiToXapiTriggerLevel = (num => num / 100),
GuiToXapiTriggerPeriod = (num => num * 60),
GuiToXapiAlertInterval = (num => num * 60),
};
cpuAlert.ToggleAlertGroupEnablement();
netAlert.ToggleAlertGroupEnablement();
diskAlert.ToggleAlertGroupEnablement();
memoryAlert.ToggleAlertGroupEnablement();
srAlert.ToggleAlertGroupEnablement();
dom0MemoryAlert.ToggleAlertGroupEnablement();
}
public string SubText
@ -189,6 +207,7 @@ namespace XenAdmin.SettingsPanels
diskAlert.Show(isVm);
memoryAlert.Show(isHost && Helpers.ClearwaterOrGreater(_XenObject.Connection));
srAlert.Show(isSr && Helpers.ClearwaterOrGreater(_XenObject.Connection));
dom0MemoryAlert.Show(isHost && Helpers.CreedenceOrGreater(_XenObject.Connection));
if (isHost)
{
@ -223,6 +242,8 @@ namespace XenAdmin.SettingsPanels
memoryAlert.Populate(perfmonDefinition);
else if (perfmonDefinition.IsSrUsage)
srAlert.Populate(perfmonDefinition);
else if (perfmonDefinition.IsDom0MemoryUsage)
dom0MemoryAlert.Populate(perfmonDefinition);
}
}
catch { }
@ -241,7 +262,7 @@ namespace XenAdmin.SettingsPanels
if (_XenObject is VM)
return cpuAlert.HasChanged || netAlert.HasChanged || diskAlert.HasChanged;
return cpuAlert.HasChanged || netAlert.HasChanged || memoryAlert.HasChanged;
return cpuAlert.HasChanged || netAlert.HasChanged || memoryAlert.HasChanged || dom0MemoryAlert.HasChanged;
}
}
@ -298,13 +319,16 @@ namespace XenAdmin.SettingsPanels
if (_XenObject is SR && srAlert.Enabled)
perfmonDefinitions.Add(srAlert.AlertDefinition);
if (_XenObject is Host && dom0MemoryAlert.Enabled)
perfmonDefinitions.Add(dom0MemoryAlert.AlertDefinition);
return new PerfmonDefinitionAction(_XenObject, perfmonDefinitions, true);
}
private void SetAlertIntervalEnablement()
{
bool enable = cpuAlert.Enabled || netAlert.Enabled || diskAlert.Enabled
|| memoryAlert.Enabled || srAlert.Enabled;
|| memoryAlert.Enabled || srAlert.Enabled || dom0MemoryAlert.Enabled;
nudAlertInterval.Enabled = enable;
AlertIntervalMinutesLabel.Enabled = enable;

View File

@ -112,22 +112,22 @@
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="mscorlib" name="mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="AlertIntervalLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="AlertIntervalLabel.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="AlertIntervalLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>9, 64</value>
<value>6, 58</value>
</data>
<data name="AlertIntervalLabel.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 15, 3</value>
@ -148,7 +148,7 @@
<value>AlertIntervalLabel</value>
</data>
<data name="&gt;&gt;AlertIntervalLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;AlertIntervalLabel.Parent" xml:space="preserve">
<value>$this</value>
@ -163,7 +163,7 @@
<value>NoControl</value>
</data>
<data name="AlertIntervalMinutesLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>240, 64</value>
<value>380, 58</value>
</data>
<data name="AlertIntervalMinutesLabel.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 3</value>
@ -181,7 +181,7 @@
<value>AlertIntervalMinutesLabel</value>
</data>
<data name="&gt;&gt;AlertIntervalMinutesLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;AlertIntervalMinutesLabel.Parent" xml:space="preserve">
<value>$this</value>
@ -198,6 +198,237 @@
<data name="tableLayoutPanel1.ColumnCount" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="nudDom0MemUsage.Location" type="System.Drawing.Point, System.Drawing">
<value>290, 22</value>
</data>
<data name="nudDom0MemUsage.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 20</value>
</data>
<data name="nudDom0MemUsage.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="&gt;&gt;nudDom0MemUsage.Name" xml:space="preserve">
<value>nudDom0MemUsage</value>
</data>
<data name="&gt;&gt;nudDom0MemUsage.Type" xml:space="preserve">
<value>XenAdmin.SettingsPanels.AlertNumericUpDown, XenCenterMain, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;nudDom0MemUsage.Parent" xml:space="preserve">
<value>Dom0MemoryUsageGroupBox</value>
</data>
<data name="&gt;&gt;nudDom0MemUsage.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="Dom0MemoryDurationThresholdLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="Dom0MemoryDurationThresholdLabel.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="Dom0MemoryDurationThresholdLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>372, 50</value>
</data>
<data name="Dom0MemoryDurationThresholdLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>43, 13</value>
</data>
<data name="Dom0MemoryDurationThresholdLabel.TabIndex" type="System.Int32, mscorlib">
<value>6</value>
</data>
<data name="Dom0MemoryDurationThresholdLabel.Text" xml:space="preserve">
<value>minutes</value>
</data>
<data name="&gt;&gt;Dom0MemoryDurationThresholdLabel.Name" xml:space="preserve">
<value>Dom0MemoryDurationThresholdLabel</value>
</data>
<data name="&gt;&gt;Dom0MemoryDurationThresholdLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;Dom0MemoryDurationThresholdLabel.Parent" xml:space="preserve">
<value>Dom0MemoryUsageGroupBox</value>
</data>
<data name="&gt;&gt;Dom0MemoryDurationThresholdLabel.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="nudDom0MemoryDurationThreshold.Location" type="System.Drawing.Point, System.Drawing">
<value>290, 48</value>
</data>
<data name="nudDom0MemoryDurationThreshold.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 0</value>
</data>
<data name="nudDom0MemoryDurationThreshold.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 20</value>
</data>
<data name="nudDom0MemoryDurationThreshold.TabIndex" type="System.Int32, mscorlib">
<value>5</value>
</data>
<data name="&gt;&gt;nudDom0MemoryDurationThreshold.Name" xml:space="preserve">
<value>nudDom0MemoryDurationThreshold</value>
</data>
<data name="&gt;&gt;nudDom0MemoryDurationThreshold.Type" xml:space="preserve">
<value>XenAdmin.SettingsPanels.AlertNumericUpDown, XenCenterMain, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;nudDom0MemoryDurationThreshold.Parent" xml:space="preserve">
<value>Dom0MemoryUsageGroupBox</value>
</data>
<data name="&gt;&gt;nudDom0MemoryDurationThreshold.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<data name="Dom0MemoryUsagePercentLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="Dom0MemoryUsagePercentLabel.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="Dom0MemoryUsagePercentLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>372, 24</value>
</data>
<data name="Dom0MemoryUsagePercentLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>15, 13</value>
</data>
<data name="Dom0MemoryUsagePercentLabel.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
</data>
<data name="Dom0MemoryUsagePercentLabel.Text" xml:space="preserve">
<value>%</value>
</data>
<data name="&gt;&gt;Dom0MemoryUsagePercentLabel.Name" xml:space="preserve">
<value>Dom0MemoryUsagePercentLabel</value>
</data>
<data name="&gt;&gt;Dom0MemoryUsagePercentLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;Dom0MemoryUsagePercentLabel.Parent" xml:space="preserve">
<value>Dom0MemoryUsageGroupBox</value>
</data>
<data name="&gt;&gt;Dom0MemoryUsagePercentLabel.ZOrder" xml:space="preserve">
<value>3</value>
</data>
<data name="Dom0MemoryAlertCheckBox.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="Dom0MemoryAlertCheckBox.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="Dom0MemoryAlertCheckBox.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 0</value>
</data>
<data name="Dom0MemoryAlertCheckBox.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 0, 0, 0</value>
</data>
<data name="Dom0MemoryAlertCheckBox.Size" type="System.Drawing.Size, System.Drawing">
<value>244, 17</value>
</data>
<data name="Dom0MemoryAlertCheckBox.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
</data>
<data name="Dom0MemoryAlertCheckBox.Text" xml:space="preserve">
<value>Generate &amp;control domain memory usage alerts</value>
</data>
<data name="&gt;&gt;Dom0MemoryAlertCheckBox.Name" xml:space="preserve">
<value>Dom0MemoryAlertCheckBox</value>
</data>
<data name="&gt;&gt;Dom0MemoryAlertCheckBox.Type" xml:space="preserve">
<value>XenAdmin.SettingsPanels.AlertCheckBox, XenCenterMain, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;Dom0MemoryAlertCheckBox.Parent" xml:space="preserve">
<value>Dom0MemoryUsageGroupBox</value>
</data>
<data name="&gt;&gt;Dom0MemoryAlertCheckBox.ZOrder" xml:space="preserve">
<value>4</value>
</data>
<data name="dom0MemoryMinutesLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="dom0MemoryMinutesLabel.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="dom0MemoryMinutesLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 50</value>
</data>
<data name="dom0MemoryMinutesLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>81, 13</value>
</data>
<data name="dom0MemoryMinutesLabel.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
</data>
<data name="dom0MemoryMinutesLabel.Text" xml:space="preserve">
<value>For longer &amp;than:</value>
</data>
<data name="dom0MemoryMinutesLabel.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;dom0MemoryMinutesLabel.Name" xml:space="preserve">
<value>dom0MemoryMinutesLabel</value>
</data>
<data name="&gt;&gt;dom0MemoryMinutesLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;dom0MemoryMinutesLabel.Parent" xml:space="preserve">
<value>Dom0MemoryUsageGroupBox</value>
</data>
<data name="&gt;&gt;dom0MemoryMinutesLabel.ZOrder" xml:space="preserve">
<value>5</value>
</data>
<data name="dom0MemoryPercentLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
<data name="dom0MemoryPercentLabel.ImeMode" type="System.Windows.Forms.ImeMode, System.Windows.Forms">
<value>NoControl</value>
</data>
<data name="dom0MemoryPercentLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 24</value>
</data>
<data name="dom0MemoryPercentLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>225, 13</value>
</data>
<data name="dom0MemoryPercentLabel.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
</data>
<data name="dom0MemoryPercentLabel.Text" xml:space="preserve">
<value>When control domain memory usage exceeds:</value>
</data>
<data name="dom0MemoryPercentLabel.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
<value>MiddleLeft</value>
</data>
<data name="&gt;&gt;dom0MemoryPercentLabel.Name" xml:space="preserve">
<value>dom0MemoryPercentLabel</value>
</data>
<data name="&gt;&gt;dom0MemoryPercentLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;dom0MemoryPercentLabel.Parent" xml:space="preserve">
<value>Dom0MemoryUsageGroupBox</value>
</data>
<data name="&gt;&gt;dom0MemoryPercentLabel.ZOrder" xml:space="preserve">
<value>6</value>
</data>
<data name="Dom0MemoryUsageGroupBox.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 423</value>
</data>
<data name="Dom0MemoryUsageGroupBox.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 0</value>
</data>
<data name="Dom0MemoryUsageGroupBox.Size" type="System.Drawing.Size, System.Drawing">
<value>445, 78</value>
</data>
<data name="Dom0MemoryUsageGroupBox.TabIndex" type="System.Int32, mscorlib">
<value>7</value>
</data>
<data name="Dom0MemoryUsageGroupBox.Text" xml:space="preserve">
<value> </value>
</data>
<data name="&gt;&gt;Dom0MemoryUsageGroupBox.Name" xml:space="preserve">
<value>Dom0MemoryUsageGroupBox</value>
</data>
<data name="&gt;&gt;Dom0MemoryUsageGroupBox.Type" xml:space="preserve">
<value>XenAdmin.Controls.DecentGroupBox, XenCenterMain, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</value>
</data>
<data name="&gt;&gt;Dom0MemoryUsageGroupBox.Parent" xml:space="preserve">
<value>tableLayoutPanel1</value>
</data>
<data name="&gt;&gt;Dom0MemoryUsageGroupBox.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<data name="memoryMinutesLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
</data>
@ -205,7 +436,7 @@
<value>NoControl</value>
</data>
<data name="memoryMinutesLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>272, 58</value>
<value>372, 50</value>
</data>
<data name="memoryMinutesLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>43, 13</value>
@ -220,7 +451,7 @@
<value>memoryMinutesLabel</value>
</data>
<data name="&gt;&gt;memoryMinutesLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;memoryMinutesLabel.Parent" xml:space="preserve">
<value>MemoryGroupBox</value>
@ -229,7 +460,7 @@
<value>0</value>
</data>
<data name="nudMemoryDurationThreshold.Location" type="System.Drawing.Point, System.Drawing">
<value>190, 56</value>
<value>290, 48</value>
</data>
<data name="nudMemoryDurationThreshold.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 0</value>
@ -259,7 +490,7 @@
<value>NoControl</value>
</data>
<data name="memoryUnitsLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>272, 32</value>
<value>372, 24</value>
</data>
<data name="memoryUnitsLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>23, 13</value>
@ -274,7 +505,7 @@
<value>memoryUnitsLabel</value>
</data>
<data name="&gt;&gt;memoryUnitsLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;memoryUnitsLabel.Parent" xml:space="preserve">
<value>MemoryGroupBox</value>
@ -283,7 +514,7 @@
<value>2</value>
</data>
<data name="nudMemoryUsage.Location" type="System.Drawing.Point, System.Drawing">
<value>190, 30</value>
<value>290, 22</value>
</data>
<data name="nudMemoryUsage.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 20</value>
@ -312,8 +543,11 @@
<data name="MemoryAlertCheckBox.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 0</value>
</data>
<data name="MemoryAlertCheckBox.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 0, 0, 0</value>
</data>
<data name="MemoryAlertCheckBox.Size" type="System.Drawing.Size, System.Drawing">
<value>169, 17</value>
<value>172, 17</value>
</data>
<data name="MemoryAlertCheckBox.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@ -340,7 +574,7 @@
<value>NoControl</value>
</data>
<data name="memoryDurationThresholdLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 56</value>
<value>12, 50</value>
</data>
<data name="memoryDurationThresholdLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>81, 13</value>
@ -358,7 +592,7 @@
<value>memoryDurationThresholdLabel</value>
</data>
<data name="&gt;&gt;memoryDurationThresholdLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;memoryDurationThresholdLabel.Parent" xml:space="preserve">
<value>MemoryGroupBox</value>
@ -373,7 +607,7 @@
<value>NoControl</value>
</data>
<data name="memoryUsageLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 30</value>
<value>12, 24</value>
</data>
<data name="memoryUsageLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>151, 13</value>
@ -391,7 +625,7 @@
<value>memoryUsageLabel</value>
</data>
<data name="&gt;&gt;memoryUsageLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;memoryUsageLabel.Parent" xml:space="preserve">
<value>MemoryGroupBox</value>
@ -400,13 +634,13 @@
<value>6</value>
</data>
<data name="MemoryGroupBox.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 283</value>
<value>3, 255</value>
</data>
<data name="MemoryGroupBox.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 0</value>
</data>
<data name="MemoryGroupBox.Size" type="System.Drawing.Size, System.Drawing">
<value>420, 89</value>
<value>445, 78</value>
</data>
<data name="MemoryGroupBox.TabIndex" type="System.Int32, mscorlib">
<value>3</value>
@ -424,7 +658,7 @@
<value>tableLayoutPanel1</value>
</data>
<data name="&gt;&gt;MemoryGroupBox.ZOrder" xml:space="preserve">
<value>0</value>
<value>1</value>
</data>
<data name="srMinutesLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -433,7 +667,7 @@
<value>NoControl</value>
</data>
<data name="srMinutesLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>337, 58</value>
<value>372, 50</value>
</data>
<data name="srMinutesLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>43, 13</value>
@ -448,7 +682,7 @@
<value>srMinutesLabel</value>
</data>
<data name="&gt;&gt;srMinutesLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;srMinutesLabel.Parent" xml:space="preserve">
<value>SrGroupBox</value>
@ -457,7 +691,7 @@
<value>0</value>
</data>
<data name="nudSrMinutes.Location" type="System.Drawing.Point, System.Drawing">
<value>255, 56</value>
<value>290, 48</value>
</data>
<data name="nudSrMinutes.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 0</value>
@ -487,7 +721,7 @@
<value>NoControl</value>
</data>
<data name="srUnitsLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>337, 32</value>
<value>372, 24</value>
</data>
<data name="srUnitsLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>31, 13</value>
@ -502,7 +736,7 @@
<value>srUnitsLabel</value>
</data>
<data name="&gt;&gt;srUnitsLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;srUnitsLabel.Parent" xml:space="preserve">
<value>SrGroupBox</value>
@ -511,7 +745,7 @@
<value>2</value>
</data>
<data name="nudSrUsage.Location" type="System.Drawing.Point, System.Drawing">
<value>255, 30</value>
<value>290, 22</value>
</data>
<data name="nudSrUsage.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 20</value>
@ -540,8 +774,11 @@
<data name="SrAlertCheckBox.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 0</value>
</data>
<data name="SrAlertCheckBox.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 0, 0, 0</value>
</data>
<data name="SrAlertCheckBox.Size" type="System.Drawing.Size, System.Drawing">
<value>190, 17</value>
<value>193, 17</value>
</data>
<data name="SrAlertCheckBox.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@ -568,7 +805,7 @@
<value>NoControl</value>
</data>
<data name="SrDurationThresholdLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 56</value>
<value>12, 50</value>
</data>
<data name="SrDurationThresholdLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>81, 13</value>
@ -586,7 +823,7 @@
<value>SrDurationThresholdLabel</value>
</data>
<data name="&gt;&gt;SrDurationThresholdLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;SrDurationThresholdLabel.Parent" xml:space="preserve">
<value>SrGroupBox</value>
@ -601,7 +838,7 @@
<value>NoControl</value>
</data>
<data name="SrUsageLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 30</value>
<value>12, 24</value>
</data>
<data name="SrUsageLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>212, 13</value>
@ -619,7 +856,7 @@
<value>SrUsageLabel</value>
</data>
<data name="&gt;&gt;SrUsageLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;SrUsageLabel.Parent" xml:space="preserve">
<value>SrGroupBox</value>
@ -628,13 +865,13 @@
<value>6</value>
</data>
<data name="SrGroupBox.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 378</value>
<value>3, 339</value>
</data>
<data name="SrGroupBox.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 0</value>
</data>
<data name="SrGroupBox.Size" type="System.Drawing.Size, System.Drawing">
<value>420, 89</value>
<value>445, 78</value>
</data>
<data name="SrGroupBox.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
@ -652,7 +889,7 @@
<value>tableLayoutPanel1</value>
</data>
<data name="&gt;&gt;SrGroupBox.ZOrder" xml:space="preserve">
<value>1</value>
<value>2</value>
</data>
<data name="DiskMinutesLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -661,7 +898,7 @@
<value>NoControl</value>
</data>
<data name="DiskMinutesLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>272, 58</value>
<value>372, 50</value>
</data>
<data name="DiskMinutesLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>43, 13</value>
@ -676,7 +913,7 @@
<value>DiskMinutesLabel</value>
</data>
<data name="&gt;&gt;DiskMinutesLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;DiskMinutesLabel.Parent" xml:space="preserve">
<value>DiskGroupBox</value>
@ -685,7 +922,7 @@
<value>0</value>
</data>
<data name="nudDiskDurationThreshold.Location" type="System.Drawing.Point, System.Drawing">
<value>190, 56</value>
<value>290, 48</value>
</data>
<data name="nudDiskDurationThreshold.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 0</value>
@ -715,7 +952,7 @@
<value>NoControl</value>
</data>
<data name="DiskPercentLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>272, 32</value>
<value>372, 24</value>
</data>
<data name="DiskPercentLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>31, 13</value>
@ -730,7 +967,7 @@
<value>DiskPercentLabel</value>
</data>
<data name="&gt;&gt;DiskPercentLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;DiskPercentLabel.Parent" xml:space="preserve">
<value>DiskGroupBox</value>
@ -739,7 +976,7 @@
<value>2</value>
</data>
<data name="nudDiskUsagePercent.Location" type="System.Drawing.Point, System.Drawing">
<value>190, 30</value>
<value>290, 22</value>
</data>
<data name="nudDiskUsagePercent.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 20</value>
@ -768,8 +1005,11 @@
<data name="DiskAlertCheckBox.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 0</value>
</data>
<data name="DiskAlertCheckBox.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 0, 0, 0</value>
</data>
<data name="DiskAlertCheckBox.Size" type="System.Drawing.Size, System.Drawing">
<value>152, 17</value>
<value>155, 17</value>
</data>
<data name="DiskAlertCheckBox.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@ -796,7 +1036,7 @@
<value>NoControl</value>
</data>
<data name="DiskDurationThresholdLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 56</value>
<value>12, 48</value>
</data>
<data name="DiskDurationThresholdLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>81, 13</value>
@ -814,7 +1054,7 @@
<value>DiskDurationThresholdLabel</value>
</data>
<data name="&gt;&gt;DiskDurationThresholdLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;DiskDurationThresholdLabel.Parent" xml:space="preserve">
<value>DiskGroupBox</value>
@ -829,7 +1069,7 @@
<value>NoControl</value>
</data>
<data name="DiskUsagePercentLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 30</value>
<value>12, 24</value>
</data>
<data name="DiskUsagePercentLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>136, 13</value>
@ -847,7 +1087,7 @@
<value>DiskUsagePercentLabel</value>
</data>
<data name="&gt;&gt;DiskUsagePercentLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;DiskUsagePercentLabel.Parent" xml:space="preserve">
<value>DiskGroupBox</value>
@ -856,13 +1096,13 @@
<value>6</value>
</data>
<data name="DiskGroupBox.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 188</value>
<value>3, 171</value>
</data>
<data name="DiskGroupBox.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 0</value>
</data>
<data name="DiskGroupBox.Size" type="System.Drawing.Size, System.Drawing">
<value>420, 89</value>
<value>445, 78</value>
</data>
<data name="DiskGroupBox.TabIndex" type="System.Int32, mscorlib">
<value>2</value>
@ -880,7 +1120,7 @@
<value>tableLayoutPanel1</value>
</data>
<data name="&gt;&gt;DiskGroupBox.ZOrder" xml:space="preserve">
<value>2</value>
<value>3</value>
</data>
<data name="NetPercentLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -889,7 +1129,7 @@
<value>NoControl</value>
</data>
<data name="NetPercentLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>271, 30</value>
<value>372, 24</value>
</data>
<data name="NetPercentLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>31, 13</value>
@ -904,7 +1144,7 @@
<value>NetPercentLabel</value>
</data>
<data name="&gt;&gt;NetPercentLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;NetPercentLabel.Parent" xml:space="preserve">
<value>NetGroupBox</value>
@ -913,7 +1153,7 @@
<value>0</value>
</data>
<data name="nudNetUsagePercent.Location" type="System.Drawing.Point, System.Drawing">
<value>190, 28</value>
<value>290, 22</value>
</data>
<data name="nudNetUsagePercent.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 20</value>
@ -940,7 +1180,7 @@
<value>NoControl</value>
</data>
<data name="NetMinutesLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>269, 56</value>
<value>372, 50</value>
</data>
<data name="NetMinutesLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>43, 13</value>
@ -955,7 +1195,7 @@
<value>NetMinutesLabel</value>
</data>
<data name="&gt;&gt;NetMinutesLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;NetMinutesLabel.Parent" xml:space="preserve">
<value>NetGroupBox</value>
@ -964,7 +1204,7 @@
<value>2</value>
</data>
<data name="nudNetDurationThreshold.Location" type="System.Drawing.Point, System.Drawing">
<value>190, 54</value>
<value>290, 48</value>
</data>
<data name="nudNetDurationThreshold.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 0</value>
@ -996,8 +1236,11 @@
<data name="NetAlertCheckBox.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 0</value>
</data>
<data name="NetAlertCheckBox.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 0, 0, 0</value>
</data>
<data name="NetAlertCheckBox.Size" type="System.Drawing.Size, System.Drawing">
<value>171, 17</value>
<value>174, 17</value>
</data>
<data name="NetAlertCheckBox.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@ -1024,7 +1267,7 @@
<value>NoControl</value>
</data>
<data name="NetDurationThresholdLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 56</value>
<value>12, 50</value>
</data>
<data name="NetDurationThresholdLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>81, 13</value>
@ -1042,7 +1285,7 @@
<value>NetDurationThresholdLabel</value>
</data>
<data name="&gt;&gt;NetDurationThresholdLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;NetDurationThresholdLabel.Parent" xml:space="preserve">
<value>NetGroupBox</value>
@ -1057,7 +1300,7 @@
<value>NoControl</value>
</data>
<data name="NetUsagePercentLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 30</value>
<value>12, 24</value>
</data>
<data name="NetUsagePercentLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>155, 13</value>
@ -1075,7 +1318,7 @@
<value>NetUsagePercentLabel</value>
</data>
<data name="&gt;&gt;NetUsagePercentLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;NetUsagePercentLabel.Parent" xml:space="preserve">
<value>NetGroupBox</value>
@ -1084,13 +1327,13 @@
<value>6</value>
</data>
<data name="NetGroupBox.Location" type="System.Drawing.Point, System.Drawing">
<value>3, 95</value>
<value>3, 87</value>
</data>
<data name="NetGroupBox.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 0</value>
</data>
<data name="NetGroupBox.Size" type="System.Drawing.Size, System.Drawing">
<value>420, 87</value>
<value>445, 78</value>
</data>
<data name="NetGroupBox.TabIndex" type="System.Int32, mscorlib">
<value>1</value>
@ -1105,7 +1348,7 @@
<value>tableLayoutPanel1</value>
</data>
<data name="&gt;&gt;NetGroupBox.ZOrder" xml:space="preserve">
<value>3</value>
<value>4</value>
</data>
<data name="cpuPercentLabel.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -1114,7 +1357,7 @@
<value>NoControl</value>
</data>
<data name="cpuPercentLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>272, 24</value>
<value>372, 24</value>
</data>
<data name="cpuPercentLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>15, 13</value>
@ -1129,7 +1372,7 @@
<value>cpuPercentLabel</value>
</data>
<data name="&gt;&gt;cpuPercentLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;cpuPercentLabel.Parent" xml:space="preserve">
<value>CpuGroupBox</value>
@ -1138,7 +1381,7 @@
<value>0</value>
</data>
<data name="nudCPUUsagePercent.Location" type="System.Drawing.Point, System.Drawing">
<value>190, 22</value>
<value>290, 22</value>
</data>
<data name="nudCPUUsagePercent.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 20</value>
@ -1165,7 +1408,7 @@
<value>NoControl</value>
</data>
<data name="cpuMinutesLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>271, 55</value>
<value>372, 50</value>
</data>
<data name="cpuMinutesLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>43, 13</value>
@ -1180,7 +1423,7 @@
<value>cpuMinutesLabel</value>
</data>
<data name="&gt;&gt;cpuMinutesLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;cpuMinutesLabel.Parent" xml:space="preserve">
<value>CpuGroupBox</value>
@ -1189,7 +1432,7 @@
<value>2</value>
</data>
<data name="nudCPUDurationThreshold.Location" type="System.Drawing.Point, System.Drawing">
<value>190, 53</value>
<value>290, 48</value>
</data>
<data name="nudCPUDurationThreshold.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 0</value>
@ -1224,8 +1467,11 @@
<data name="CPUAlertCheckBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 3, 3, 7</value>
</data>
<data name="CPUAlertCheckBox.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 0, 0, 0</value>
</data>
<data name="CPUAlertCheckBox.Size" type="System.Drawing.Size, System.Drawing">
<value>155, 17</value>
<value>158, 17</value>
</data>
<data name="CPUAlertCheckBox.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@ -1270,7 +1516,7 @@
<value>CPUUsagePercentLabel</value>
</data>
<data name="&gt;&gt;CPUUsagePercentLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;CPUUsagePercentLabel.Parent" xml:space="preserve">
<value>CpuGroupBox</value>
@ -1285,7 +1531,7 @@
<value>NoControl</value>
</data>
<data name="CPUDurationThresholdLabel.Location" type="System.Drawing.Point, System.Drawing">
<value>12, 55</value>
<value>12, 50</value>
</data>
<data name="CPUDurationThresholdLabel.Size" type="System.Drawing.Size, System.Drawing">
<value>81, 13</value>
@ -1303,7 +1549,7 @@
<value>CPUDurationThresholdLabel</value>
</data>
<data name="&gt;&gt;CPUDurationThresholdLabel.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;CPUDurationThresholdLabel.Parent" xml:space="preserve">
<value>CpuGroupBox</value>
@ -1318,7 +1564,7 @@
<value>3, 3, 3, 0</value>
</data>
<data name="CpuGroupBox.Size" type="System.Drawing.Size, System.Drawing">
<value>420, 86</value>
<value>445, 78</value>
</data>
<data name="CpuGroupBox.TabIndex" type="System.Int32, mscorlib">
<value>0</value>
@ -1333,19 +1579,19 @@
<value>tableLayoutPanel1</value>
</data>
<data name="&gt;&gt;CpuGroupBox.ZOrder" xml:space="preserve">
<value>4</value>
<value>5</value>
</data>
<data name="tableLayoutPanel1.Location" type="System.Drawing.Point, System.Drawing">
<value>6, 95</value>
<value>6, 83</value>
</data>
<data name="tableLayoutPanel1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
<value>3, 10, 3, 3</value>
</data>
<data name="tableLayoutPanel1.RowCount" type="System.Int32, mscorlib">
<value>4</value>
<value>6</value>
</data>
<data name="tableLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing">
<value>426, 470</value>
<value>451, 504</value>
</data>
<data name="tableLayoutPanel1.TabIndex" type="System.Int32, mscorlib">
<value>4</value>
@ -1354,7 +1600,7 @@
<value>tableLayoutPanel1</value>
</data>
<data name="&gt;&gt;tableLayoutPanel1.Type" xml:space="preserve">
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;tableLayoutPanel1.Parent" xml:space="preserve">
<value>$this</value>
@ -1363,7 +1609,7 @@
<value>4</value>
</data>
<data name="tableLayoutPanel1.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="MemoryGroupBox" Row="3" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="SrGroupBox" Row="3" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="DiskGroupBox" Row="2" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="NetGroupBox" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="CpuGroupBox" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="Percent,100" /&gt;&lt;Rows Styles="AutoSize,0,AutoSize,0,AutoSize,0,AutoSize,0,AutoSize,0,Absolute,20" /&gt;&lt;/TableLayoutSettings&gt;</value>
<value>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;TableLayoutSettings&gt;&lt;Controls&gt;&lt;Control Name="Dom0MemoryUsageGroupBox" Row="5" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="MemoryGroupBox" Row="3" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="SrGroupBox" Row="4" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="DiskGroupBox" Row="2" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="NetGroupBox" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;Control Name="CpuGroupBox" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /&gt;&lt;/Controls&gt;&lt;Columns Styles="Percent,100" /&gt;&lt;Rows Styles="AutoSize,0,AutoSize,0,AutoSize,0,AutoSize,0,AutoSize,0,AutoSize,0" /&gt;&lt;/TableLayoutSettings&gt;</value>
</data>
<data name="label1.Anchor" type="System.Windows.Forms.AnchorStyles, System.Windows.Forms">
<value>Top, Left, Right</value>
@ -1390,7 +1636,7 @@
<value>label1</value>
</data>
<data name="&gt;&gt;label1.Type" xml:space="preserve">
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;label1.Parent" xml:space="preserve">
<value>$this</value>
@ -1399,7 +1645,7 @@
<value>0</value>
</data>
<data name="nudAlertInterval.Location" type="System.Drawing.Point, System.Drawing">
<value>155, 62</value>
<value>230, 56</value>
</data>
<data name="nudAlertInterval.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 20</value>
@ -1419,7 +1665,7 @@
<data name="&gt;&gt;nudAlertInterval.ZOrder" xml:space="preserve">
<value>2</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</metadata>
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
@ -1438,6 +1684,6 @@
<value>PerfmonAlertEditPage</value>
</data>
<data name="&gt;&gt;$this.Type" xml:space="preserve">
<value>System.Windows.Forms.UserControl, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Windows.Forms.UserControl, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
</root>

View File

@ -61,7 +61,8 @@ namespace XenAdmin.Alerts
public const string ALARM_TYPE_NETWORK = "network_usage";
public const string ALARM_TYPE_DISK = "disk_usage";
public const string ALARM_TYPE_FILESYSTEM = "fs_usage";
public const string ALARM_TYPE_MEMORY = "memory_free_kib";
public const string ALARM_TYPE_MEMORY_FREE = "memory_free_kib";
public const string ALARM_TYPE_MEMORY_DOM0_USAGE = "mem_usage";
/// <summary>
/// This is the name that will be stored in the SR's other-config:perfmon key
/// </summary>
@ -103,7 +104,12 @@ namespace XenAdmin.Alerts
public bool IsMemoryUsage
{
get { return name.Equals(ALARM_TYPE_MEMORY); }
get { return name.Equals(ALARM_TYPE_MEMORY_FREE); }
}
public bool IsDom0MemoryUsage
{
get { return name.Equals(ALARM_TYPE_MEMORY_DOM0_USAGE); }
}
public bool IsSrUsage

View File

@ -1,7 +1,7 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.18444
// Runtime Version:4.0.30319.34209
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
@ -3855,6 +3855,34 @@ namespace XenAdmin {
}
}
/// <summary>
/// Looks up a localized string similar to Control Domain Memory Usage.
/// </summary>
public static string ALERT_ALARM_DOM0_MEMORY {
get {
return ResourceManager.GetString("ALERT_ALARM_DOM0_MEMORY", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Control Domain Memory Demand Alarm.
/// </summary>
public static string ALERT_ALARM_DOM0_MEMORY_DEMAND {
get {
return ResourceManager.GetString("ALERT_ALARM_DOM0_MEMORY_DEMAND", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to The memory demand on {0} is about {1} of the physical memory of the domain. Occasional performance degradation can be expected when memory swapping is forced to happen.
///This alarm is set to be triggered when the ratio of the memory demand to the physical memory is beyond {2}..
/// </summary>
public static string ALERT_ALARM_DOM0_MEMORY_DEMAND_DESCRIPTION {
get {
return ResourceManager.GetString("ALERT_ALARM_DOM0_MEMORY_DEMAND_DESCRIPTION", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to File System on Control Domain Full.
/// </summary>
@ -4007,6 +4035,15 @@ namespace XenAdmin {
}
}
/// <summary>
/// Looks up a localized string similar to When control domain memory usage exceeds {0} for {1} min(s).
/// </summary>
public static string ALERT_DOM0_MEMORY_SUB_TEXT {
get {
return ResourceManager.GetString("ALERT_DOM0_MEMORY_SUB_TEXT", resourceCulture);
}
}
/// <summary>
/// Looks up a localized string similar to Export &amp;all.
/// </summary>

View File

@ -1436,6 +1436,16 @@ This alarm is set to be triggered when CPU usage is more than {3}.</value>
<data name="ALERT_ALARM_DISK_DESCRIPTION" xml:space="preserve">
<value>Disk usage on {0} has been on average {1} for the last {2}.
This alarm is set to be triggered when disk usage is more than {3}.</value>
</data>
<data name="ALERT_ALARM_DOM0_MEMORY" xml:space="preserve">
<value>Control Domain Memory Usage</value>
</data>
<data name="ALERT_ALARM_DOM0_MEMORY_DEMAND" xml:space="preserve">
<value>Control Domain Memory Demand Alarm</value>
</data>
<data name="ALERT_ALARM_DOM0_MEMORY_DEMAND_DESCRIPTION" xml:space="preserve">
<value>The memory demand on {0} is about {1} of the physical memory of the domain. Occasional performance degradation can be expected when memory swapping is forced to happen.
This alarm is set to be triggered when the ratio of the memory demand to the physical memory is beyond {2}.</value>
</data>
<data name="ALERT_ALARM_FILESYSTEM" xml:space="preserve">
<value>File System on Control Domain Full</value>
@ -1493,6 +1503,9 @@ Note that if RBAC is enabled, only alerts which you have privileges to dismiss w
Note that if RBAC is enabled, only alerts which you have privileges to dismiss will be affected.</value>
</data>
<data name="ALERT_DOM0_MEMORY_SUB_TEXT" xml:space="preserve">
<value>When control domain memory usage exceeds {0} for {1} min(s)</value>
</data>
<data name="ALERT_EXPORT_ALL_BUTTON" xml:space="preserve">
<value>Export &amp;all</value>
</data>