Ok! 그래서 내 서버 (FTB, Monster, 1.6.4) 용 콘솔 필터 플러그인을 개발 중입니다. 필자가 설정 한 콘솔 로그를 차단하는 데는 상당히 성공적이었습니다. 그러나 몇 가지 로그에 문제가 있습니다. 와콘솔 필터 플러그인
21.04 12:43:02 [Server] Startup [2.0.2] Recieved client info from DirtyRedz
21.04 12:43:00 [Server] INFO [ConsoleFilter] Message was blocked: Sending serverside check to: DirtyRedz
21.04 12:43:00 [Server] INFO [ConsoleFilter] Checking message: Sending serverside check to: DirtyRedz
21.04 12:43:00 [Server] INFO [ConsoleFilter] Message was blocked: Loading Player: DirtyRedz
21.04 12:43:00 [Server] INFO [ConsoleFilter] Checking message: Loading Player: DirtyRedz
21.04 12:43:00 [Server] INFO Sending config data to DirtyRedz
21.04 12:43:00 [Multicraft] DirtyRedz ran command Message of the Day
21.04 12:43:00 [ConsoleFilter] Checking message: DirtyRedz ran command Message of the Day
21.04 12:43:00 [Connect] User DirtyRedz, IP 11.1.1.111
21.04 12:43:00 [Connect] User [ConsoleFilter] Checking message: DirtyRedz, IP 11.1.1.111
로그 "[ConsoleFilter] 확인 메시지 :"메신저 테스트를 위해 사용하는, 어떤이 메시지가 메신저를 허용 becuase 후 여전히 실행 은 여기 내 콘솔에서 섹션입니다. 아래의 로그에만 문제가 있습니다 :
1. [Multicraft] DirtyRedz 명령이 오늘 로그 메시지를 통해 실행 중이며, 코드가 승인되기 전에 승인을 받았습니다. 로그를 확인하고 중지하십시오. 이 로그에 대해 궁금한 점이 있다면 getMessage() == null 인 경우 테스트하면 true를 전달하지만 record.getMessage()로 호출해도 계속 표시 될 수 있습니다.
- DirtyRedz &에 구성 데이터 전송 [서버] 정보 [서버] 시작 [2.0.2] DirtyRedz에서 받았다 클라이언트 정보, 심지어 때문에 내가 그들을 막을 수있는 기회를 해달라고, 내 로거를 통해 처리되지 않습니다.
여기에 관련이 내 코드 청크입니다 :
@Override
public void onEnable() {
getLogger().info("[ConsoleFilter] onEnable has been invoked!");//Bukkit has initialized ConsoleFilter
fillFromConfig();
Bukkit.getLogger().setFilter(new Filter() {
@Override
public boolean isLoggable(LogRecord record) {
getLogger().info("[ConsoleFilter] Checking message: " + record.getMessage());
Set<String> keyset=nodesHashMap.keySet();
for(String i:keyset){
String str = i;
if(consoleFiltering && !nodesHashMap.get(i).getDelete()){
if(nodesHashMap.get(i).getList() == "Contains"){
if(record.getMessage().toLowerCase().contains(str.toLowerCase())){
Date time = Calendar.getInstance().getTime();
logToFile(time + " | " + record.getLevel() +
" | " +record.getMessage(),nodesHashMap.get(i).getFile(),"Logs");
getLogger().info("[ConsoleFilter] Message was blocked: " + record.getMessage());
return false;
}
}else if(nodesHashMap.get(i).getList() == "Ends_With"){
if(record.getMessage().toLowerCase().endsWith(str.toLowerCase())){
Date time = Calendar.getInstance().getTime();
logToFile(time + " | " + record.getLevel() +
" | " +record.getMessage(),nodesHashMap.get(i).getFile(),"Logs");
getLogger().info("[ConsoleFilter] Message was blocked: " + record.getMessage());
return false;
}
}else if(nodesHashMap.get(i).getList() == "Equals"){
if(record.getMessage().toLowerCase().equals(str.toLowerCase())){
Date time = Calendar.getInstance().getTime();
logToFile(time + " | " + record.getLevel() +
" | " +record.getMessage(),nodesHashMap.get(i).getFile(),"Logs");
getLogger().info("[ConsoleFilter] Message was blocked: " + record.getMessage());
return false;
}
}
}
}
return true;
}
});