Class SimpleBuildLogger
- java.lang.Object
-
- com.atlassian.bamboo.build.logger.SimpleBuildLogger
-
- All Implemented Interfaces:
BuildLogger
,BuildLoggerWithoutLogAccess
public class SimpleBuildLogger extends Object implements BuildLogger
The simple logger simply stores all the logs internally as a list... Useful for testing
-
-
Constructor Summary
Constructors Constructor Description SimpleBuildLogger()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description @NotNull String
addBuildLogEntry(@NotNull LogEntry logEntry)
Add a new build log entry.String
addBuildLogEntry(@NotNull String logString)
Create a new build log entry from text to append to logs@NotNull String
addErrorLogEntry(@NotNull LogEntry logEntry)
Add a new build error log entry.String
addErrorLogEntry(String logString)
Add a new build error log entry from text.void
addErrorLogEntry(String logString, @Nullable Throwable e)
Adds an error log entry and each frame of the stack trace as a new error log entryvoid
close()
@NotNull List<LogEntry>
getBuildLog()
@NotNull List<LogEntry>
getErrorLog()
@NotNull LogInterceptorStack
getInterceptorStack()
@NotNull List<LogEntry>
getLastNLogEntries(int n)
Provide the latest build details (last n lines of logs).int
getLogEntryCount()
Total number of log entries.@NotNull LogMutatorStack
getMutatorStack()
List<String>
getStringErrorLogs()
List<String>
getStringLogs()
long
getTimeOfLastLog()
last time a log entry was added.boolean
isPersistent()
void
setTimeOfLastLog(long timeOfLastLog)
set time of last log.void
stopStreamingBuildLogs()
Stop streaming any logs to the build logs file-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.atlassian.bamboo.build.logger.BuildLoggerWithoutLogAccess
transfersLogsAsArtifact
-
-
-
-
Method Detail
-
getLastNLogEntries
@NotNull public @NotNull List<LogEntry> getLastNLogEntries(int n)
Description copied from interface:BuildLogger
Provide the latest build details (last n lines of logs). This is not persisted.- Specified by:
getLastNLogEntries
in interfaceBuildLogger
- Returns:
- The list of
LogEntry
s.
-
addBuildLogEntry
@NotNull public @NotNull String addBuildLogEntry(@NotNull @NotNull LogEntry logEntry)
Description copied from interface:BuildLoggerWithoutLogAccess
Add a new build log entry. This will get appended to the end of the log.- Specified by:
addBuildLogEntry
in interfaceBuildLoggerWithoutLogAccess
- Parameters:
logEntry
- The data being logged- Returns:
- The line of text being logged. From
LogEntry.getUnstyledLog()
.
-
addErrorLogEntry
@NotNull public @NotNull String addErrorLogEntry(@NotNull @NotNull LogEntry logEntry)
Description copied from interface:BuildLoggerWithoutLogAccess
Add a new build error log entry. This will get appended to the end of the log and to the end of the errors.- Specified by:
addErrorLogEntry
in interfaceBuildLoggerWithoutLogAccess
- Parameters:
logEntry
- The data being logged- Returns:
- The line of text being logged. From
LogEntry.getUnstyledLog()
.
-
addBuildLogEntry
public String addBuildLogEntry(@NotNull @NotNull String logString)
Description copied from interface:BuildLoggerWithoutLogAccess
Create a new build log entry from text to append to logs- Specified by:
addBuildLogEntry
in interfaceBuildLoggerWithoutLogAccess
- Parameters:
logString
- text to create log entry from- Returns:
- The line of text being logged. From
LogEntry.getUnstyledLog()
.
-
addErrorLogEntry
public String addErrorLogEntry(String logString)
Description copied from interface:BuildLoggerWithoutLogAccess
Add a new build error log entry from text. This will get appended to the end of the log and to the end of the errors.- Specified by:
addErrorLogEntry
in interfaceBuildLoggerWithoutLogAccess
- Parameters:
logString
- The text to create log entry from- Returns:
- The line of text being logged. From
LogEntry.getUnstyledLog()
.
-
addErrorLogEntry
public void addErrorLogEntry(String logString, @Nullable @Nullable Throwable e)
Description copied from interface:BuildLoggerWithoutLogAccess
Adds an error log entry and each frame of the stack trace as a new error log entry- Specified by:
addErrorLogEntry
in interfaceBuildLoggerWithoutLogAccess
-
stopStreamingBuildLogs
public void stopStreamingBuildLogs()
Description copied from interface:BuildLoggerWithoutLogAccess
Stop streaming any logs to the build logs file- Specified by:
stopStreamingBuildLogs
in interfaceBuildLoggerWithoutLogAccess
-
getTimeOfLastLog
public long getTimeOfLastLog()
Description copied from interface:BuildLoggerWithoutLogAccess
last time a log entry was added. If no logs, returns 0- Specified by:
getTimeOfLastLog
in interfaceBuildLoggerWithoutLogAccess
- Returns:
-
setTimeOfLastLog
public void setTimeOfLastLog(long timeOfLastLog)
Description copied from interface:BuildLoggerWithoutLogAccess
set time of last log. Used for loading buildings in progress after restarts- Specified by:
setTimeOfLastLog
in interfaceBuildLoggerWithoutLogAccess
-
getInterceptorStack
@NotNull public @NotNull LogInterceptorStack getInterceptorStack()
- Specified by:
getInterceptorStack
in interfaceBuildLoggerWithoutLogAccess
- Returns:
- stack of log interceptors attached to this build logger
-
getMutatorStack
@NotNull public @NotNull LogMutatorStack getMutatorStack()
- Specified by:
getMutatorStack
in interfaceBuildLoggerWithoutLogAccess
- Returns:
- stack of log mutators attached to this build logger
-
close
public void close()
- Specified by:
close
in interfaceBuildLoggerWithoutLogAccess
-
getLogEntryCount
public int getLogEntryCount()
Description copied from interface:BuildLogger
Total number of log entries.- Specified by:
getLogEntryCount
in interfaceBuildLogger
-
isPersistent
public boolean isPersistent()
- Specified by:
isPersistent
in interfaceBuildLoggerWithoutLogAccess
- Returns:
- true if underlying logger saves to disk
-
-