Skip to content

Commit f65c3ce

Browse files
committed
Monitoring selected server's alertlog file in history menu
1 parent edd6f8e commit f65c3ce

File tree

4 files changed

+67
-7
lines changed

4 files changed

+67
-7
lines changed

src/main/java/root/core/service/contracts/PropertyService.java

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import java.util.List;
44
import java.util.Map;
55

6+
import root.core.domain.AlertLogCommand;
67
import root.core.domain.JdbcConnectionInfo;
78
import root.core.domain.JschConnectionInfo;
89
import root.core.domain.MonitoringYN;
@@ -78,6 +79,20 @@ public interface PropertyService {
7879

7980
List<JdbcConnectionInfo> getJdbcConnInfoList(List<String> dbNames);
8081

82+
/**
83+
* 서버의 접속정보를 가져온다.
84+
*
85+
* @param serverName 서버 접속정보 별칭
86+
* @return
87+
*/
88+
JschConnectionInfo getJschConnInfo(String serverName);
89+
90+
/**
91+
* 서버들의 접속정보를 가져온다.
92+
*
93+
* @param serverNames
94+
* @return
95+
*/
8196
List<JschConnectionInfo> getJschConnInfoList(List<String> serverNames);
8297

8398
/**
@@ -140,4 +155,13 @@ public interface PropertyService {
140155
*/
141156
void saveMonitoringPresetSetting(String presetName,
142157
Map<MonitoringType, Map<String, Boolean>> settingedMonitoringYN);
158+
159+
/**
160+
* 설정된 AlertLog 모니터링 커맨드 정보를 가져온다.
161+
*
162+
* @param connInfoSetting
163+
* @param serverName
164+
* @return
165+
*/
166+
AlertLogCommand getAlertLogCommand(String connInfoSetting, String serverName);
143167
}

src/main/java/root/core/service/implement/FilePropertyService.java

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import org.apache.commons.configuration2.PropertiesConfiguration;
1313
import org.apache.commons.lang3.StringUtils;
1414

15+
import root.core.domain.AlertLogCommand;
1516
import root.core.domain.JdbcConnectionInfo;
1617
import root.core.domain.JschConnectionInfo;
1718
import root.core.domain.MonitoringYN;
@@ -174,6 +175,17 @@ public List<JdbcConnectionInfo> getJdbcConnInfoList(List<String> dbNames) {
174175
.collect(Collectors.mapping(dbName -> propRepo.getJdbcConnectionInfo(dbName), Collectors.toList()));
175176
}
176177

178+
/**
179+
* 서버의 접속정보를 가져온다.
180+
*/
181+
@Override
182+
public JschConnectionInfo getJschConnInfo(String serverName) {
183+
return propRepo.getJschConnectionInfo(serverName);
184+
}
185+
186+
/**
187+
* 서버들의 접속정보를 가져온다.
188+
*/
177189
@Override
178190
public List<JschConnectionInfo> getJschConnInfoList(List<String> serverNames) {
179191
return serverNames.stream().sorted().collect(
@@ -221,7 +233,7 @@ public void saveLastUseConnectionInfoSetting(String filePath) {
221233
rememberConfig.setProperty("filepath.config.lastuse", filePath.replace("\\", "/"));
222234
propRepo.save(rememberConfig.getString("filepath.config.remember"), rememberConfig);
223235
}
224-
236+
225237
/**
226238
* 접속정보 설정을 추가한다.
227239
*/
@@ -269,4 +281,10 @@ public void saveMonitoringPresetSetting(String presetName,
269281
propRepo.loadMonitoringInfoConfig(monitoringFilePath);
270282
}
271283
}
284+
285+
@Override
286+
public AlertLogCommand getAlertLogCommand(String connInfoSetting, String serverName) {
287+
loadConnectionInfoConfig(connInfoSetting);
288+
return propRepo.getAlertLogCommand(serverName);
289+
}
272290
}

src/main/java/root/javafx/Controller/HistoryMenuController.java

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import root.common.server.implement.JschServer;
2121
import root.core.domain.ASMDiskUsage;
2222
import root.core.domain.AlertLog;
23+
import root.core.domain.AlertLogCommandPeriod;
2324
import root.core.domain.ArchiveUsage;
2425
import root.core.domain.JdbcConnectionInfo;
2526
import root.core.domain.JschConnectionInfo;
@@ -57,22 +58,22 @@ public class HistoryMenuController implements Initializable {
5758

5859
@FXML
5960
DatePicker alertLogStartDayDP;
60-
61+
6162
@FXML
6263
DatePicker alertLogEndDayDP;
6364

6465
@FXML
6566
AnchorPane archiveUsageTabAP;
66-
67+
6768
@FXML
6869
AnchorPane tableSpaceUsageTabAP;
69-
70+
7071
@FXML
7172
AnchorPane asmDiskUsageTabAP;
72-
73+
7374
@FXML
7475
AnchorPane osDiskUsageTabAP;
75-
76+
7677
@FXML
7778
AnchorPane alertLogUsageTabAP;
7879

@@ -282,4 +283,21 @@ private boolean validateInput() {
282283
return true;
283284
}
284285

286+
public void monitoringAlertLog(ActionEvent e) {
287+
String alertLogStartDay = alertLogStartDayDP.getValue().toString();
288+
String alertLogEndDay = alertLogEndDayDP.getValue().toString();
289+
290+
String selectedServer = alertLogServerComboBox.getSelectionModel().getSelectedItem();
291+
JschConnectionInfo connInfo = propService.getJschConnInfo(selectedServer);
292+
293+
JschServer server = new JschServer(connInfo);
294+
server.init();
295+
ServerCheckRepository repo = new ServerCheckRepositoryImpl(server);
296+
ServerCheckUsecase usecase = new ServerCheckUsecaseImpl(repo, ReportFileRepo.getInstance());
297+
298+
AlertLogCommandPeriod alcp = new AlertLogCommandPeriod(connInfo.getAlc(), alertLogStartDay, alertLogEndDay);
299+
alertLogMonitoringResultMap.put(selectedServer, usecase.getAlertLogDuringPeriod(alcp));
300+
301+
changeAlertLogListViewData(alertLogServerComboBox.getSelectionModel().getSelectedItem());
302+
}
285303
}

src/main/resources/fxml/HistoryMenu.fxml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@
111111
</padding>
112112
</Label>
113113
<JFXComboBox fx:id="alertLogServerComboBox" maxHeight="25.0" minHeight="25.0" minWidth="150.0" styleClass="basic-font" stylesheets="@../css/javaFx.css" unFocusColor="#ececec" />
114-
<Button mnemonicParsing="false" styleClass="basic-font" text="조회" />
114+
<Button mnemonicParsing="false" onAction="#monitoringAlertLog" styleClass="basic-font" text="조회" />
115115
<Button mnemonicParsing="false" styleClass="basic-font" text="새로고침" />
116116
<Button mnemonicParsing="false" styleClass="basic-font" text="엑셀출력" />
117117
<Button mnemonicParsing="false" styleClass="basic-font" text="그래프보기" />

0 commit comments

Comments
 (0)