Skip to content

Commit 501d8c1

Browse files
bernardodemarcoDaanHooglandwinterhazel
authored
Add logs to CPVM connection process (#8924)
* increment cpvm connection logs * remove sourceIp variable * increment cpvm connection logs * extract duplicate error messages to variables * change logs level from trace to debug in authenticateToVNCServer * add logs in trace level inside of connection loop * remove redundant trace log * add logs to ConsoleProxyNoVNCHandler class * retrieve client source IP * add periods to log messages * change log levels from warn to error inside of catch blocks * add client IP to successful authentication log * replace concatenation with String.format() * remove String.format() and use log4j2 new features instead * remove String.format() and use log4j2 new features instead * apply Daan's suggestion Co-authored-by: dahn <[email protected]> * resolve conflicts * fix logs with three parameters * get correct client IP * use log4j dependencies directly * apply winterhazel's suggestion Co-authored-by: Fabricio Duarte <[email protected]> * remove log proxy * address winterhazel's suggestions on ConsoleProxyNoVncClient class * address winterhazel's suggestions on ConsoleProxyNoVNCHandler class * address winterhazel's suggestions on ConsoleProxyNoVNCHandler class Co-authored-by: Fabricio Duarte <[email protected]> --------- Co-authored-by: dahn <[email protected]> Co-authored-by: Fabricio Duarte <[email protected]>
1 parent b068c68 commit 501d8c1

30 files changed

+172
-437
lines changed

server/src/main/java/com/cloud/servlet/ConsoleProxyClientParam.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,16 @@ public class ConsoleProxyClientParam {
3434
private String username;
3535
private String password;
3636

37+
/**
38+
* IP that has generated the console endpoint
39+
*/
3740
private String sourceIP;
41+
42+
/**
43+
* IP of the client that has connected to the console
44+
*/
45+
private String clientIp;
46+
3847
private String websocketUrl;
3948

4049
private String sessionUuid;
@@ -201,4 +210,12 @@ public void setClientProvidedExtraSecurityToken(String clientProvidedExtraSecuri
201210
public void setSessionUuid(String sessionUuid) {
202211
this.sessionUuid = sessionUuid;
203212
}
213+
214+
public String getClientIp() {
215+
return clientIp;
216+
}
217+
218+
public void setClientIp(String clientIp) {
219+
this.clientIp = clientIp;
220+
}
204221
}

services/console-proxy/server/src/main/java/com/cloud/consoleproxy/AjaxFIFOImageCache.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,11 @@
2121
import java.util.List;
2222
import java.util.Map;
2323

24-
import com.cloud.consoleproxy.util.Logger;
24+
import org.apache.logging.log4j.LogManager;
25+
import org.apache.logging.log4j.Logger;
2526

2627
public class AjaxFIFOImageCache {
27-
protected Logger logger = Logger.getLogger(getClass());
28+
protected Logger logger = LogManager.getLogger(getClass());
2829

2930
private List<Integer> fifoQueue;
3031
private Map<Integer, byte[]> cache;

services/console-proxy/server/src/main/java/com/cloud/consoleproxy/ConsoleProxy.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,17 +39,19 @@
3939
import org.apache.logging.log4j.core.config.Configurator;
4040
import org.eclipse.jetty.websocket.api.Session;
4141

42-
import com.cloud.consoleproxy.util.Logger;
4342
import com.cloud.utils.PropertiesUtil;
4443
import com.google.gson.Gson;
4544
import com.sun.net.httpserver.HttpServer;
4645

46+
import org.apache.logging.log4j.LogManager;
47+
import org.apache.logging.log4j.Logger;
48+
4749
/**
4850
*
4951
* ConsoleProxy, singleton class that manages overall activities in console proxy process. To make legacy code work, we still
5052
*/
5153
public class ConsoleProxy {
52-
protected static Logger LOGGER = Logger.getLogger(ConsoleProxy.class);
54+
protected static Logger LOGGER = LogManager.getLogger(ConsoleProxy.class);
5355

5456
public static final int KEYBOARD_RAW = 0;
5557
public static final int KEYBOARD_COOKED = 1;
@@ -280,7 +282,6 @@ public static void ensureRoute(String address) {
280282
public static void startWithContext(Properties conf, Object context, byte[] ksBits, String ksPassword, String password, Boolean isSourceIpCheckEnabled) {
281283
setEncryptorPassword(password);
282284
configLog4j();
283-
Logger.setFactory(new ConsoleProxyLoggerFactory());
284285
LOGGER.info("Start console proxy with context");
285286

286287
if (conf != null) {
@@ -427,7 +428,6 @@ private static void startupHttpCmdPort() {
427428
public static void main(String[] argv) {
428429
standaloneStart = true;
429430
configLog4j();
430-
Logger.setFactory(new ConsoleProxyLoggerFactory());
431431

432432
InputStream confs = ConsoleProxy.class.getResourceAsStream("/conf/consoleproxy.properties");
433433
Properties conf = new Properties();

services/console-proxy/server/src/main/java/com/cloud/consoleproxy/ConsoleProxyAjaxHandler.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,11 @@
3232
import com.sun.net.httpserver.HttpExchange;
3333
import com.sun.net.httpserver.HttpHandler;
3434

35-
import com.cloud.consoleproxy.util.Logger;
35+
import org.apache.logging.log4j.LogManager;
36+
import org.apache.logging.log4j.Logger;
3637

3738
public class ConsoleProxyAjaxHandler implements HttpHandler {
38-
protected Logger logger = Logger.getLogger(getClass());
39+
protected Logger logger = LogManager.getLogger(getClass());
3940

4041
public ConsoleProxyAjaxHandler() {
4142
}

services/console-proxy/server/src/main/java/com/cloud/consoleproxy/ConsoleProxyAjaxImageHandler.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,10 +28,11 @@
2828
import com.sun.net.httpserver.HttpExchange;
2929
import com.sun.net.httpserver.HttpHandler;
3030

31-
import com.cloud.consoleproxy.util.Logger;
31+
import org.apache.logging.log4j.LogManager;
32+
import org.apache.logging.log4j.Logger;
3233

3334
public class ConsoleProxyAjaxImageHandler implements HttpHandler {
34-
protected Logger logger = Logger.getLogger(getClass());
35+
protected Logger logger = LogManager.getLogger(getClass());
3536

3637
@Override
3738
public void handle(HttpExchange t) throws IOException {

services/console-proxy/server/src/main/java/com/cloud/consoleproxy/ConsoleProxyBaseServerFactoryImpl.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,11 @@
2323

2424
import com.sun.net.httpserver.HttpServer;
2525

26-
import com.cloud.consoleproxy.util.Logger;
26+
import org.apache.logging.log4j.LogManager;
27+
import org.apache.logging.log4j.Logger;
2728

2829
public class ConsoleProxyBaseServerFactoryImpl implements ConsoleProxyServerFactory {
29-
protected Logger logger = Logger.getLogger(getClass());
30+
protected Logger logger = LogManager.getLogger(getClass());
3031

3132
@Override
3233
public void init(byte[] ksBits, String ksPassword) {

services/console-proxy/server/src/main/java/com/cloud/consoleproxy/ConsoleProxyClientParam.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,8 +39,16 @@ public class ConsoleProxyClientParam {
3939
private String password;
4040
private String websocketUrl;
4141

42+
/**
43+
* IP that has generated the console endpoint
44+
*/
4245
private String sourceIP;
4346

47+
/**
48+
* IP of the client that has connected to the console
49+
*/
50+
private String clientIp;
51+
4452
private String sessionUuid;
4553

4654
/**
@@ -204,4 +212,12 @@ public String getClientProvidedExtraSecurityToken() {
204212
public void setClientProvidedExtraSecurityToken(String clientProvidedExtraSecurityToken) {
205213
this.clientProvidedExtraSecurityToken = clientProvidedExtraSecurityToken;
206214
}
215+
216+
public String getClientIp() {
217+
return clientIp;
218+
}
219+
220+
public void setClientIp(String clientIp) {
221+
this.clientIp = clientIp;
222+
}
207223
}

services/console-proxy/server/src/main/java/com/cloud/consoleproxy/ConsoleProxyCmdHandler.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,11 @@
2424
import com.sun.net.httpserver.HttpExchange;
2525
import com.sun.net.httpserver.HttpHandler;
2626

27-
import com.cloud.consoleproxy.util.Logger;
27+
import org.apache.logging.log4j.LogManager;
28+
import org.apache.logging.log4j.Logger;
2829

2930
public class ConsoleProxyCmdHandler implements HttpHandler {
30-
protected Logger logger = Logger.getLogger(getClass());
31+
protected Logger logger = LogManager.getLogger(getClass());
3132

3233
@Override
3334
public void handle(HttpExchange t) throws IOException {

services/console-proxy/server/src/main/java/com/cloud/consoleproxy/ConsoleProxyHttpHandlerHelper.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,11 @@
1919
import java.util.HashMap;
2020
import java.util.Map;
2121

22-
import com.cloud.consoleproxy.util.Logger;
22+
import org.apache.logging.log4j.LogManager;
23+
import org.apache.logging.log4j.Logger;
2324

2425
public class ConsoleProxyHttpHandlerHelper {
25-
protected static Logger LOGGER = Logger.getLogger(ConsoleProxyHttpHandlerHelper.class);
26+
protected static Logger LOGGER = LogManager.getLogger(ConsoleProxyHttpHandlerHelper.class);
2627

2728
public static Map<String, String> getQueryMap(String query) {
2829
String[] params = query.split("&");

services/console-proxy/server/src/main/java/com/cloud/consoleproxy/ConsoleProxyLoggerFactory.java

Lines changed: 0 additions & 104 deletions
This file was deleted.

0 commit comments

Comments
 (0)