From f21ed62520fe8a8fec4f6180ebaab070b2a24598 Mon Sep 17 00:00:00 2001 From: Dhandapani Date: Mon, 6 Jun 2011 14:56:31 +0530 Subject: UI Changes - Disk to brick label changes --- .../storage/management/core/model/Alert.java | 4 +- .../management/core/model/GlusterDummyModel.java | 12 +-- .../storage/management/core/model/LogMessage.java | 91 ------------------ .../storage/management/core/model/RunningTask.java | 4 +- .../management/core/model/VolumeLogMessage.java | 102 +++++++++++++++++++++ .../core/response/LogMessageListResponse.java | 12 +-- .../gui/VolumeLogTableLabelProvider.java | 8 +- .../management/gui/dialogs/CreateVolumePage1.java | 8 +- .../management/gui/views/ClusterSummaryView.java | 4 +- .../management/gui/views/VolumeSummaryView.java | 2 +- .../management/gui/views/VolumesSummaryView.java | 6 +- .../gui/views/details/VolumeLogsPage.java | 12 +-- .../server/resources/AlertsResource.java | 2 +- .../server/resources/RunningTaskResource.java | 4 +- .../server/resources/VolumesResource.java | 33 +++---- 15 files changed, 158 insertions(+), 146 deletions(-) delete mode 100644 src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/LogMessage.java create mode 100644 src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/VolumeLogMessage.java diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Alert.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Alert.java index c0077a30..db8a9018 100644 --- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Alert.java +++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/Alert.java @@ -6,11 +6,11 @@ import javax.xml.bind.annotation.XmlRootElement; public class Alert { public enum ALERT_TYPES { - CPU_USAGE_ALERT, MEMORY_USAGE_ALERT, DISK_USAGE_ALERT, OFFLINE_VOLUME_DISKS_ALERT, OFFLINE_SERVERS_ALERT + CPU_USAGE_ALERT, MEMORY_USAGE_ALERT, DISK_USAGE_ALERT, OFFLINE_VOLUME_BRICKS_ALERT, OFFLINE_SERVERS_ALERT }; public static final String[] ALERT_TYPE_STR = { "High CPU Usage", "High Memory Usage", "Low Disk Space", - "Offline Disk", "Offline Server" }; + "Offline Brick", "Offline Server" }; protected String id; protected ALERT_TYPES type; diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/GlusterDummyModel.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/GlusterDummyModel.java index eed67904..40de70ec 100644 --- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/GlusterDummyModel.java +++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/GlusterDummyModel.java @@ -34,7 +34,7 @@ public class GlusterDummyModel { private GlusterServer server1, server2, server3, server4, server5; private Volume volume1, volume2, volume3, volume4, volume5; private Disk s1da, s1db, s2da, s2db, s2dc, s2dd, s3da, s4da, s5da, s5db; - private static List logMessages = new ArrayList(); + private static List logMessages = new ArrayList(); private static GlusterDummyModel instance = new GlusterDummyModel(); private GlusterDataModel model; @@ -212,21 +212,21 @@ public class GlusterDummyModel { cluster.setAutoDiscoveredServers(servers); } - private void addMessages(List messages, Disk disk, String severity, int count) { + private void addMessages(List messages, Disk disk, String severity, int count) { for (int i = 1; i <= count; i++) { String message = severity + "message" + i; - messages.add(new LogMessage(new Date(), disk.getQualifiedName(), severity, message)); + messages.add(new VolumeLogMessage(new Date(), disk.getQualifiedName(), disk.getMountPoint(), severity, message)); } } - private void addMessagesForDisk(List logMessages, Disk disk) { + private void addMessagesForDisk(List logMessages, Disk disk) { addMessages(logMessages, disk, "SEVERE", 5); addMessages(logMessages, disk, "WARNING", 5); addMessages(logMessages, disk, "DEBUG", 5); addMessages(logMessages, disk, "INFO", 5); } - public List createDummyLogMessages() { + public List createDummyLogMessages() { addMessagesForDisk(logMessages, s1da); addMessagesForDisk(logMessages, s1db); addMessagesForDisk(logMessages, s2da); @@ -239,7 +239,7 @@ public class GlusterDummyModel { return logMessages; } - public static List getDummyLogMessages() { + public static List getDummyLogMessages() { return logMessages; } diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/LogMessage.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/LogMessage.java deleted file mode 100644 index 15c758a1..00000000 --- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/LogMessage.java +++ /dev/null @@ -1,91 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2011 Gluster, Inc. - * This file is part of Gluster Management Console. - * - * Gluster Management Console is free software; you can redistribute it and/or - * modify it under the terms of the GNU Affero General Public License as published - * by the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * Gluster Management Console is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License - * for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see - * . - *******************************************************************************/ -package com.gluster.storage.management.core.model; - -import java.util.Date; - -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; - -import com.gluster.storage.management.core.model.adapters.VolumeLogDateAdapter; -import com.gluster.storage.management.core.utils.StringUtil; - -@XmlRootElement -public class LogMessage implements Filterable { - private Date timestamp; - // TODO: Replace disk with brick, rename class as VolumeLogMessage - private String disk; - private String severity; - private String message; - - public LogMessage() { - } - - public LogMessage(String logMessage) { - // TODO: Parse the log message and extract fields - } - - @XmlElement(name = "timestamp", required = true) - @XmlJavaTypeAdapter(VolumeLogDateAdapter.class) - public Date getTimestamp() { - return timestamp; - } - - public void setTimestamp(Date timestamp) { - this.timestamp = timestamp; - } - - public String getDisk() { - return disk; - } - - public void setDisk(String disk) { - this.disk = disk; - } - - public String getSeverity() { - return severity; - } - - public void setSeverity(String severity) { - this.severity = severity; - } - - public String getMessage() { - return message; - } - - public void setMessage(String message) { - this.message = message; - } - - public LogMessage(Date timestamp, String disk, String severity, String message) { - setTimestamp(timestamp); - setDisk(disk); - setSeverity(severity); - setMessage(message); - } - - @Override - public boolean filter(String filterString, boolean caseSensitive) { - return StringUtil.filterString(getSeverity() + getTimestamp() + getDisk() + getMessage(), filterString, - caseSensitive); - } -} diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTask.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTask.java index 24b342e2..773137bb 100644 --- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTask.java +++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/RunningTask.java @@ -23,10 +23,10 @@ import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement public class RunningTask { public enum TASK_TYPES { - DISK_FORMAT, DISK_MIGRATE, VOLUME_REBALANCE + DISK_FORMAT, BRICK_MIGRATE, VOLUME_REBALANCE }; - public String[] TASK_TYPE_STR = { "Formatting Disk", "Disk Migration", "Volume Rebalance" }; + public String[] TASK_TYPE_STR = { "Formatting Disk", "Brick Migration", "Volume Rebalance" }; protected String id; protected TASK_TYPES type; diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/VolumeLogMessage.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/VolumeLogMessage.java new file mode 100644 index 00000000..ab88d917 --- /dev/null +++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/model/VolumeLogMessage.java @@ -0,0 +1,102 @@ +/******************************************************************************* + * Copyright (c) 2011 Gluster, Inc. + * This file is part of Gluster Management Console. + * + * Gluster Management Console is free software; you can redistribute it and/or + * modify it under the terms of the GNU Affero General Public License as published + * by the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * Gluster Management Console is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License + * for more details. + * + * You should have received a copy of the GNU Affero General Public License + * along with this program. If not, see + * . + *******************************************************************************/ +package com.gluster.storage.management.core.model; + +import java.util.Date; + +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; + +import com.gluster.storage.management.core.model.adapters.VolumeLogDateAdapter; +import com.gluster.storage.management.core.utils.StringUtil; + +@XmlRootElement +public class VolumeLogMessage implements Filterable { + private Date timestamp; + // TODO: Replace disk with brick, rename class as VolumeLogMessage + private String brick; + private String disk; + private String severity; + private String message; + + public VolumeLogMessage() { + } + + public VolumeLogMessage(String logMessage) { + // TODO: Parse the log message and extract fields + } + + @XmlElement(name = "timestamp", required = true) + @XmlJavaTypeAdapter(VolumeLogDateAdapter.class) + public Date getTimestamp() { + return timestamp; + } + + public void setTimestamp(Date timestamp) { + this.timestamp = timestamp; + } + + public String getDisk() { + return disk; + } + + public void setDisk(String disk) { + this.disk = disk; + } + + public String getSeverity() { + return severity; + } + + public void setSeverity(String severity) { + this.severity = severity; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + public void setBrickDirectory(String brickDirectory) { + this.brick = brickDirectory; + } + + public String getBrickDirectory() { + return brick; + } + + public VolumeLogMessage(Date timestamp, String disk, String brickDirectory, String severity, String message) { + setTimestamp(timestamp); + setDisk(disk); + setBrickDirectory(brickDirectory); + setSeverity(severity); + setMessage(message); + } + + @Override + public boolean filter(String filterString, boolean caseSensitive) { + return StringUtil.filterString(getSeverity() + getTimestamp() + getDisk() + getMessage(), filterString, + caseSensitive); + } + +} diff --git a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/response/LogMessageListResponse.java b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/response/LogMessageListResponse.java index 191334d3..be374e8b 100644 --- a/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/response/LogMessageListResponse.java +++ b/src/com.gluster.storage.management.core/src/com/gluster/storage/management/core/response/LogMessageListResponse.java @@ -10,28 +10,28 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlElementWrapper; import javax.xml.bind.annotation.XmlRootElement; -import com.gluster.storage.management.core.model.LogMessage; +import com.gluster.storage.management.core.model.VolumeLogMessage; import com.gluster.storage.management.core.model.Status; @XmlRootElement(name = "response") public class LogMessageListResponse extends AbstractResponse { - private List logMessages = new ArrayList(); + private List logMessages = new ArrayList(); public LogMessageListResponse() { } - public LogMessageListResponse(Status status, List logMessages) { + public LogMessageListResponse(Status status, List logMessages) { setStatus(status); setLogMessages(logMessages); } @XmlElementWrapper(name = "logMessages") - @XmlElement(name = "logMessage", type = LogMessage.class) - public List getLogMessages() { + @XmlElement(name = "logMessage", type = VolumeLogMessage.class) + public List getLogMessages() { return logMessages; } - public void setLogMessages(List logMessages) { + public void setLogMessages(List logMessages) { this.logMessages = logMessages; } diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/VolumeLogTableLabelProvider.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/VolumeLogTableLabelProvider.java index 9858a25b..396d1821 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/VolumeLogTableLabelProvider.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/VolumeLogTableLabelProvider.java @@ -19,21 +19,21 @@ package com.gluster.storage.management.gui; -import com.gluster.storage.management.core.model.LogMessage; +import com.gluster.storage.management.core.model.VolumeLogMessage; import com.gluster.storage.management.core.utils.DateUtil; import com.gluster.storage.management.gui.views.details.VolumeLogsPage.LOG_TABLE_COLUMN_INDICES; public class VolumeLogTableLabelProvider extends TableLabelProviderAdapter { @Override public String getColumnText(Object element, int columnIndex) { - if (!(element instanceof LogMessage)) { + if (!(element instanceof VolumeLogMessage)) { return null; } - LogMessage logMessage = (LogMessage) element; + VolumeLogMessage logMessage = (VolumeLogMessage) element; return (columnIndex == LOG_TABLE_COLUMN_INDICES.DATE.ordinal() ? DateUtil.formatDate(logMessage.getTimestamp()) : columnIndex == LOG_TABLE_COLUMN_INDICES.TIME.ordinal() ? DateUtil.formatTime(logMessage.getTimestamp()) - : columnIndex == LOG_TABLE_COLUMN_INDICES.DISK.ordinal() ? logMessage.getDisk() + : columnIndex == LOG_TABLE_COLUMN_INDICES.BRICK.ordinal() ? logMessage.getBrickDirectory() : columnIndex == LOG_TABLE_COLUMN_INDICES.SEVERITY.ordinal() ? "" + logMessage.getSeverity() : columnIndex == LOG_TABLE_COLUMN_INDICES.MESSAGE.ordinal() ? logMessage.getMessage() : "Invalid"); } diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/CreateVolumePage1.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/CreateVolumePage1.java index d46c71d8..e7f46a66 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/CreateVolumePage1.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/dialogs/CreateVolumePage1.java @@ -213,7 +213,7 @@ public class CreateVolumePage1 extends WizardPage { private void createDisksLabel(Composite container) { Label lblDisks = new Label(container, SWT.RIGHT); lblDisks.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1)); - lblDisks.setText("Disks: "); + lblDisks.setText("Bricks: "); } private void createTransportTypeValueLabel(Composite container) { @@ -340,15 +340,15 @@ public class CreateVolumePage1 extends WizardPage { int diskCount = selectedDisks.size(); if(diskCount < 1) { - setError("At least one disk must be selected!"); + setError("At least one brick must be selected!"); } VOLUME_TYPE volumeType = (VOLUME_TYPE) ((IStructuredSelection) typeComboViewer .getSelection()).getFirstElement(); if (volumeType == VOLUME_TYPE.DISTRIBUTED_MIRROR && diskCount % 2 != 0) { - setError("Mirror type volume requires disks in multiples of two"); + setError("Mirror type volume requires bricks in multiples of two"); } else if (volumeType == VOLUME_TYPE.DISTRIBUTED_STRIPE && diskCount % 4 != 0) { - setError("Stripe type volume requires disks in multiples of four"); + setError("Stripe type volume requires bricks in multiples of four"); } } diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/ClusterSummaryView.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/ClusterSummaryView.java index da9d6544..cc5c2b63 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/ClusterSummaryView.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/ClusterSummaryView.java @@ -184,7 +184,7 @@ public class ClusterSummaryView extends ViewPart { CLabel lblAlert = new CLabel(section, SWT.FLAT); Image alertImage = null; switch (alert.getType()) { - case OFFLINE_VOLUME_DISKS_ALERT: + case OFFLINE_VOLUME_BRICKS_ALERT: alertImage = guiHelper.getImage(IImageKeys.DISK_OFFLINE); break; case DISK_USAGE_ALERT: @@ -293,7 +293,7 @@ public class ClusterSummaryView extends ViewPart { case DISK_FORMAT: taskImage = guiHelper.getImage(IImageKeys.DISK); break; - case DISK_MIGRATE: + case BRICK_MIGRATE: taskImage = guiHelper.getImage(IImageKeys.DISK_MIGRATE); break; case VOLUME_REBALANCE: diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumeSummaryView.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumeSummaryView.java index 11717ee7..2d9b8700 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumeSummaryView.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumeSummaryView.java @@ -127,7 +127,7 @@ public class VolumeSummaryView extends ViewPart { List alerts = GlusterDataModelManager.getInstance().getModel().getCluster().getAlerts(); for (int i = 0; i < alerts.size(); i++) { - if (alerts.get(i).getType() == Alert.ALERT_TYPES.OFFLINE_VOLUME_DISKS_ALERT + if (alerts.get(i).getType() == Alert.ALERT_TYPES.OFFLINE_VOLUME_BRICKS_ALERT && alerts.get(i).getReference().split(":")[0].trim().equals(volume.getName())) { addAlertLabel(section, alerts.get(i)); } diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumesSummaryView.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumesSummaryView.java index 7909f155..990e569c 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumesSummaryView.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/VolumesSummaryView.java @@ -96,7 +96,7 @@ public class VolumesSummaryView extends ViewPart { } private void addAlertLabel(Composite section, Alert alert) { - if (alert.getType() == Alert.ALERT_TYPES.OFFLINE_VOLUME_DISKS_ALERT) { + if (alert.getType() == Alert.ALERT_TYPES.OFFLINE_VOLUME_BRICKS_ALERT) { CLabel lblAlert = new CLabel(section, SWT.NONE); lblAlert.setImage((alert.getType() == Alert.ALERT_TYPES.DISK_USAGE_ALERT) ? guiHelper .getImage(IImageKeys.LOW_DISK_SPACE) : guiHelper.getImage(IImageKeys.DISK_OFFLINE)); @@ -118,14 +118,14 @@ public class VolumesSummaryView extends ViewPart { private void addRunningTaskLabel(Composite section, RunningTask task) { // Task related to Volumes context - if (task.getType() == RunningTask.TASK_TYPES.DISK_MIGRATE + if (task.getType() == RunningTask.TASK_TYPES.BRICK_MIGRATE || task.getType() == RunningTask.TASK_TYPES.VOLUME_REBALANCE) { if (task.getStatus().isPercentageSupported()) { // TODO Progress bar } CLabel lblAlert = new CLabel(section, SWT.NONE); lblAlert.setText(task.getTaskInfo()); - lblAlert.setImage((task.getType() == RunningTask.TASK_TYPES.DISK_MIGRATE) ? guiHelper + lblAlert.setImage((task.getType() == RunningTask.TASK_TYPES.BRICK_MIGRATE) ? guiHelper .getImage(IImageKeys.DISK_MIGRATE) : guiHelper.getImage(IImageKeys.VOLUME_REBALANCE)); lblAlert.redraw(); } diff --git a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/VolumeLogsPage.java b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/VolumeLogsPage.java index 811b4c5c..a7249dab 100644 --- a/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/VolumeLogsPage.java +++ b/src/com.gluster.storage.management.gui/src/com/gluster/storage/management/gui/views/details/VolumeLogsPage.java @@ -51,7 +51,7 @@ import com.gluster.storage.management.client.VolumesClient; import com.gluster.storage.management.core.constants.CoreConstants; import com.gluster.storage.management.core.constants.GlusterConstants; import com.gluster.storage.management.core.constants.GlusterConstants.VOLUME_LOG_LEVELS; -import com.gluster.storage.management.core.model.LogMessage; +import com.gluster.storage.management.core.model.VolumeLogMessage; import com.gluster.storage.management.core.model.Status; import com.gluster.storage.management.core.model.Volume; import com.gluster.storage.management.core.response.LogMessageListResponse; @@ -68,10 +68,10 @@ public class VolumeLogsPage extends Composite { private Volume volume; public enum LOG_TABLE_COLUMN_INDICES { - DATE, TIME, DISK, SEVERITY, MESSAGE + DATE, TIME, BRICK, SEVERITY, MESSAGE }; - private static final String[] LOG_TABLE_COLUMN_NAMES = new String[] { "Date", "Time", "Disk", "Severity", "Message" }; + private static final String[] LOG_TABLE_COLUMN_NAMES = new String[] { "Date", "Time", "Brick", "Severity", "Message" }; private TableViewer tableViewer; private Combo disksCombo; private Combo severityCombo; @@ -189,8 +189,8 @@ public class VolumeLogsPage extends Composite { severityCombo.getText(), fromTimestamp, toTimestamp, Integer.parseInt(lineCountText.getText())); Status status = response.getStatus(); if (status.isSuccess()) { - List logMessages = response.getLogMessages(); - tableViewer.setInput(logMessages.toArray(new LogMessage[0])); + List logMessages = response.getLogMessages(); + tableViewer.setInput(logMessages.toArray(new VolumeLogMessage[0])); tableViewer.refresh(); } else { MessageDialog.openError(getShell(), "Volume Logs", "Error while fetching volume logs: [" + status @@ -373,7 +373,7 @@ public class VolumeLogsPage extends Composite { setColumnProperties(table, LOG_TABLE_COLUMN_INDICES.DATE, SWT.CENTER, 50); setColumnProperties(table, LOG_TABLE_COLUMN_INDICES.TIME, SWT.CENTER, 50); - setColumnProperties(table, LOG_TABLE_COLUMN_INDICES.DISK, SWT.CENTER, 50); + setColumnProperties(table, LOG_TABLE_COLUMN_INDICES.BRICK, SWT.CENTER, 50); setColumnProperties(table, LOG_TABLE_COLUMN_INDICES.SEVERITY, SWT.CENTER, 50); setColumnProperties(table, LOG_TABLE_COLUMN_INDICES.MESSAGE, SWT.LEFT, 100); } diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/AlertsResource.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/AlertsResource.java index 4283b5d6..060ce60c 100644 --- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/AlertsResource.java +++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/AlertsResource.java @@ -54,7 +54,7 @@ public class AlertsResource { alert = new Alert(); alert.setId("0004"); alert.setReference("Volume3:server2:sda1"); // volume:[Disk name] - alert.setType(Alert.ALERT_TYPES.OFFLINE_VOLUME_DISKS_ALERT); + alert.setType(Alert.ALERT_TYPES.OFFLINE_VOLUME_BRICKS_ALERT); alert.setMessage(alert.getAlertType(alert.getType()) + " in volume [" + alert.getReference().split(":")[0] + "] disk [" + alert.getReference().split(":")[1] + ":" + alert.getReference().split(":")[2] + "]"); alerts.add(alert); diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/RunningTaskResource.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/RunningTaskResource.java index 10ce5da3..c9eb0ecd 100644 --- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/RunningTaskResource.java +++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/RunningTaskResource.java @@ -76,10 +76,10 @@ public class RunningTaskResource { // MigrateDisk task = new RunningTask(); task.setId("0003"); - task.setType(RunningTask.TASK_TYPES.DISK_MIGRATE); + task.setType(RunningTask.TASK_TYPES.BRICK_MIGRATE); task.setReference("Volume3:server1:sda1"); // Disk reference task.setTaskInfo(task.getTaskType(task.getType()) + " for volume [" + task.getReference().split(":")[0] - + "] disk [" + task.getReference().split(":")[1] + ":" + task.getReference().split(":")[2] + "]"); + + "] brick [" + task.getReference().split(":")[1] + ":" + task.getReference().split(":")[2] + "]"); task.setStatus(taskStatus); runningTasks.add(task); diff --git a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java index d16f7678..92a4e0cf 100644 --- a/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java +++ b/src/com.gluster.storage.management.server/src/com/gluster/storage/management/server/resources/VolumesResource.java @@ -75,9 +75,9 @@ import com.gluster.storage.management.core.exceptions.ConnectionException; import com.gluster.storage.management.core.exceptions.GlusterRuntimeException; import com.gluster.storage.management.core.model.Brick; import com.gluster.storage.management.core.model.GlusterServer; -import com.gluster.storage.management.core.model.LogMessage; import com.gluster.storage.management.core.model.Status; import com.gluster.storage.management.core.model.Volume; +import com.gluster.storage.management.core.model.VolumeLogMessage; import com.gluster.storage.management.core.response.GenericResponse; import com.gluster.storage.management.core.response.LogMessageListResponse; import com.gluster.storage.management.core.response.VolumeListResponse; @@ -385,7 +385,7 @@ public class VolumesResource { return new Status(Status.STATUS_CODE_SUCCESS, "Directories cleaned up successfully!"); } - private List getBrickLogs(Volume volume, Brick brick, Integer lineCount) + private List getBrickLogs(Volume volume, Brick brick, Integer lineCount) throws GlusterRuntimeException { String logDir = glusterUtil.getLogLocation(volume.getName(), brick.getQualifiedName(), brick.getServerName()); String logFileName = glusterUtil.getLogFileNameForBrickDir(brick.getBrickDirectory()); @@ -408,9 +408,10 @@ public class VolumesResource { } // populate disk and trim other fields - List logMessages = response.getLogMessages(); - for (LogMessage logMessage : logMessages) { + List logMessages = response.getLogMessages(); + for (VolumeLogMessage logMessage : logMessages) { logMessage.setDisk(brick.getDiskName()); + logMessage.setBrickDirectory(brick.getBrickDirectory()); logMessage.setMessage(logMessage.getMessage().trim()); logMessage.setSeverity(logMessage.getSeverity().trim()); } @@ -473,7 +474,7 @@ public class VolumesResource { @QueryParam(QUERY_PARAM_TO_TIMESTAMP) String toTimestamp, @QueryParam(QUERY_PARAM_LINE_COUNT) Integer lineCount, @QueryParam(QUERY_PARAM_DOWNLOAD) Boolean download) { - List logMessages = null; + List logMessages = null; try { // TODO: Fetch logs from brick(s) of given cluster only @@ -498,7 +499,7 @@ public class VolumesResource { return new LogMessageListResponse(Status.STATUS_SUCCESS, logMessages); } - private void filterLogsByTime(List logMessages, String fromTimestamp, String toTimestamp) { + private void filterLogsByTime(List logMessages, String fromTimestamp, String toTimestamp) { Date fromTime = null, toTime = null; if (fromTimestamp != null && !fromTimestamp.isEmpty()) { @@ -509,8 +510,8 @@ public class VolumesResource { toTime = DateUtil.stringToDate(toTimestamp); } - List messagesToRemove = new ArrayList(); - for (LogMessage logMessage : logMessages) { + List messagesToRemove = new ArrayList(); + for (VolumeLogMessage logMessage : logMessages) { Date logTimestamp = logMessage.getTimestamp(); if (fromTime != null && logTimestamp.before(fromTime)) { messagesToRemove.add(logMessage); @@ -524,13 +525,13 @@ public class VolumesResource { logMessages.removeAll(messagesToRemove); } - private void filterLogsBySeverity(List logMessages, String severity) { + private void filterLogsBySeverity(List logMessages, String severity) { if (severity == null || severity.isEmpty()) { return; } - List messagesToRemove = new ArrayList(); - for (LogMessage logMessage : logMessages) { + List messagesToRemove = new ArrayList(); + for (VolumeLogMessage logMessage : logMessages) { if (!logMessage.getSeverity().equals(severity)) { messagesToRemove.add(logMessage); } @@ -538,18 +539,18 @@ public class VolumesResource { logMessages.removeAll(messagesToRemove); } - private List getLogsForAllBricks(Volume volume, Integer lineCount) { - List logMessages; - logMessages = new ArrayList(); + private List getLogsForAllBricks(Volume volume, Integer lineCount) { + List logMessages; + logMessages = new ArrayList(); // fetch logs for every brick of the volume for (Brick brick : volume.getBricks()) { logMessages.addAll(getBrickLogs(volume, brick, lineCount)); } // Sort the log messages based on log timestamp - Collections.sort(logMessages, new Comparator() { + Collections.sort(logMessages, new Comparator() { @Override - public int compare(LogMessage message1, LogMessage message2) { + public int compare(VolumeLogMessage message1, VolumeLogMessage message2) { return message1.getTimestamp().compareTo(message2.getTimestamp()); } }); -- cgit