-
Notifications
You must be signed in to change notification settings - Fork 16
Commit
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
package com.teamscale.jacoco.agent.util; | ||
|
||
import ch.qos.logback.classic.spi.ILoggingEvent; | ||
import ch.qos.logback.core.AppenderBase; | ||
import com.teamscale.jacoco.agent.options.TeamscaleCredentials; | ||
Check failure on line 5 in agent/src/main/java/com/teamscale/jacoco/agent/util/TeamscaleLogAppender.java
|
||
|
||
public class TeamscaleLogAppender extends AppenderBase<ILoggingEvent> { | ||
Check warning on line 7 in agent/src/main/java/com/teamscale/jacoco/agent/util/TeamscaleLogAppender.java
|
||
|
||
public static void start(TeamscaleCredentials credentials) { | ||
Check warning on line 9 in agent/src/main/java/com/teamscale/jacoco/agent/util/TeamscaleLogAppender.java
|
||
TeamscaleLogAppender.credentials = credentials; | ||
if (credentials == null) { | ||
enabled = false; | ||
// TODO (FS) cancel any background threads and clear any buffered messages | ||
Check warning on line 13 in agent/src/main/java/com/teamscale/jacoco/agent/util/TeamscaleLogAppender.java
|
||
} | ||
} | ||
|
||
private static TeamscaleCredentials credentials = null; | ||
Check warning on line 17 in agent/src/main/java/com/teamscale/jacoco/agent/util/TeamscaleLogAppender.java
|
||
private static boolean enabled = true; | ||
|
||
@Override | ||
protected void append(ILoggingEvent eventObject) { | ||
if (!enabled) { | ||
return; | ||
} | ||
// TODO (FS) buffer and send events to Teamscale asynchronously | ||
Check warning on line 25 in agent/src/main/java/com/teamscale/jacoco/agent/util/TeamscaleLogAppender.java
|
||
// TODO (FS) log messages may arrive before credentials are set. buffer in this case until either disabled() or credentials are available | ||
Check warning on line 26 in agent/src/main/java/com/teamscale/jacoco/agent/util/TeamscaleLogAppender.java
|
||
System.err.println( | ||
Check warning on line 27 in agent/src/main/java/com/teamscale/jacoco/agent/util/TeamscaleLogAppender.java
|
||
"----> event: " + eventObject.getTimeStamp() + " " + eventObject.getLevel() + " " + eventObject.getLoggerName() + " " + eventObject.getFormattedMessage()); | ||
} | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<!-- This configuration can be run after any other configuration to add the TeamscaleLogAppender. --> | ||
<configuration> | ||
<appender name="Teamscale" class="com.teamscale.jacoco.agent.util.TeamscaleLogAppender"> | ||
</appender> | ||
|
||
<root> | ||
<appender-ref ref="Teamscale"/> | ||
</root> | ||
</configuration> |