Package jetbrains.buildServer.agent
Class BaseServerLoggerFacade
- java.lang.Object
-
- jetbrains.buildServer.agent.BaseServerLoggerFacade
-
- All Implemented Interfaces:
BuildProgressLogger,FlowLogger,MessageTweakingSupport,JUnitLogger,SimpleBuildLogger
- Direct Known Subclasses:
ServerLoggerFacade
public abstract class BaseServerLoggerFacade extends Object implements JUnitLogger, FlowLogger, MessageTweakingSupport
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedBaseServerLoggerFacade()protectedBaseServerLoggerFacade(String flowId)BaseServerLoggerFacade(String flowId, String parentFlowId)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidactivityFinished(String activityName, String activityType)Finishes blockvoidactivityStarted(String activityName, String activityType)Starts new block in the build log.voidactivityStarted(String activityName, String activityDescription, String activityType)Starts new block in the build log.voidbuildFailureDescription(String message)Allows to fail build unconditionally.voidbuildStarted()voiddebug(String message)Logs a debug message.protected voiddisposeChildLoggers()voiddisposeFlow()Disposes this flow, i.e.voiderror(String message)Logs error.voidexception(Throwable th)Logs exception.abstract voidflush()Flushes messages buffer.StringgetFlowId()Returns flow id of this logger.FlowLoggergetFlowLogger(String flowId)Returns logger for specified flow id, or creates new logger if there were no loggers for this flow id yet.StringgetParentFlowId()FlowLoggergetThreadLogger()Returns flow logger for current thread.BuildProgressLoggergetTweakedLogger(BuildMessageTweaker tweaker)voidignoreServiceMessages(Runnable runnable)Run given block in a mode when service messages are not parsed and ignored, both on agent and servervoidinternalError(String type, String message, Throwable throwable)Reports internal error, i.e.protected abstract voidlog(BuildMessage1 message)voidlogBuildProblem(BuildProblemData buildProblem)Logs build problem that causes build failure on servervoidlogComparisonFailure(String testName, Throwable e, String expected, String actual)voidlogMessage(BuildMessage1 message)Logs specified build message as isvoidlogSuiteFinished(String name)voidlogSuiteFinished(String name, Date timestamp)voidlogSuiteStarted(String name)voidlogSuiteStarted(String name, Date timestamp)voidlogTestFailed(String testName, String message, String stackTrace)voidlogTestFailed(String testName, Throwable e)voidlogTestFinished(String name)voidlogTestFinished(String name, Date timestamp)voidlogTestIgnored(String name, String reason)voidlogTestStarted(String name)voidlogTestStarted(String name, Date timestamp)voidlogTestStdErr(String testName, String out)voidlogTestStdOut(String testName, String out)voidmessage(String message)Logs text message.voidmessage(String message, Status status)Logs text message.voidprogressFinished()Finishes current progress block.voidprogressMessage(String message)Same as message, but used from the 'Progress' ant task.voidprogressStarted(String message)Starts new progress block.voidstartFlow()Starts flow explicitly.voidtargetFinished(String targetName)Finishes Ant-like target in the build log.voidtargetStarted(String targetName)Starts Ant-like target in the build log.voidwarning(String message)Logs warning.
-
-
-
Method Detail
-
logTestStarted
public void logTestStarted(String name)
- Specified by:
logTestStartedin interfaceJUnitLogger
-
logTestStarted
public void logTestStarted(String name, Date timestamp)
- Specified by:
logTestStartedin interfaceJUnitLogger
-
logTestFinished
public void logTestFinished(String name)
- Specified by:
logTestFinishedin interfaceJUnitLogger
-
logTestFinished
public void logTestFinished(String name, Date timestamp)
- Specified by:
logTestFinishedin interfaceJUnitLogger
-
logTestIgnored
public void logTestIgnored(String name, String reason)
- Specified by:
logTestIgnoredin interfaceJUnitLogger
-
logSuiteStarted
public void logSuiteStarted(String name)
- Specified by:
logSuiteStartedin interfaceJUnitLogger
-
logSuiteStarted
public void logSuiteStarted(String name, Date timestamp)
- Specified by:
logSuiteStartedin interfaceJUnitLogger
-
logSuiteFinished
public void logSuiteFinished(String name)
- Specified by:
logSuiteFinishedin interfaceJUnitLogger
-
logSuiteFinished
public void logSuiteFinished(String name, Date timestamp)
- Specified by:
logSuiteFinishedin interfaceJUnitLogger
-
logTestStdOut
public void logTestStdOut(String testName, String out)
- Specified by:
logTestStdOutin interfaceJUnitLogger
-
logTestStdErr
public void logTestStdErr(String testName, String out)
- Specified by:
logTestStdErrin interfaceJUnitLogger
-
logComparisonFailure
public void logComparisonFailure(String testName, Throwable e, String expected, String actual)
- Specified by:
logComparisonFailurein interfaceJUnitLogger
-
logTestFailed
public void logTestFailed(String testName, Throwable e)
- Specified by:
logTestFailedin interfaceJUnitLogger
-
logTestFailed
public void logTestFailed(String testName, String message, String stackTrace)
- Specified by:
logTestFailedin interfaceJUnitLogger
-
activityStarted
public void activityStarted(String activityName, String activityDescription, String activityType)
Description copied from interface:BuildProgressLoggerStarts new block in the build log.- Specified by:
activityStartedin interfaceBuildProgressLogger- Parameters:
activityName- name of the blockactivityDescription- block descriptionactivityType- for standard block type refer to BLOCK_TYPE_* constants jetbrains.buildServer.messages.DefaultMessagesInfo, in case of non-standard block type use prefix CUSTOM_
-
activityStarted
public void activityStarted(String activityName, String activityType)
Description copied from interface:BuildProgressLoggerStarts new block in the build log.- Specified by:
activityStartedin interfaceBuildProgressLogger- Parameters:
activityName- name of the blockactivityType- for standard block type refer to BLOCK_TYPE_* constants jetbrains.buildServer.messages.DefaultMessagesInfo, in case of non-standard block type use prefix CUSTOM_
-
activityFinished
public void activityFinished(String activityName, String activityType)
Description copied from interface:BuildProgressLoggerFinishes block- Specified by:
activityFinishedin interfaceBuildProgressLogger- Parameters:
activityName- name of the blockactivityType- type of the block
-
targetStarted
public void targetStarted(String targetName)
Description copied from interface:BuildProgressLoggerStarts Ant-like target in the build log.- Specified by:
targetStartedin interfaceBuildProgressLogger- Parameters:
targetName- name of the target
-
targetFinished
public void targetFinished(String targetName)
Description copied from interface:BuildProgressLoggerFinishes Ant-like target in the build log.- Specified by:
targetFinishedin interfaceBuildProgressLogger- Parameters:
targetName- name of the target
-
progressStarted
public void progressStarted(String message)
Description copied from interface:BuildProgressLoggerStarts new progress block.- Specified by:
progressStartedin interfaceBuildProgressLogger- Parameters:
message- progress message
-
progressFinished
public void progressFinished()
Description copied from interface:BuildProgressLoggerFinishes current progress block.- Specified by:
progressFinishedin interfaceBuildProgressLogger
-
message
public void message(String message)
Description copied from interface:SimpleBuildLoggerLogs text message.- Specified by:
messagein interfaceSimpleBuildLogger- Parameters:
message- text message
-
debug
public void debug(String message)
Description copied from interface:SimpleBuildLoggerLogs a debug message. Content of debug messages is logged as is, service messages are not detected.- Specified by:
debugin interfaceSimpleBuildLogger- Parameters:
message- text message
-
message
public void message(String message, Status status)
Description copied from interface:SimpleBuildLoggerLogs text message.- Specified by:
messagein interfaceSimpleBuildLogger- Parameters:
message- text message
-
progressMessage
public void progressMessage(String message)
Description copied from interface:SimpleBuildLoggerSame as message, but used from the 'Progress' ant task. A dedicated method allows to distinguish progress-tracking messages user explicitly specified in the ant script- Specified by:
progressMessagein interfaceSimpleBuildLogger- Parameters:
message- text message
-
error
public void error(String message)
Description copied from interface:SimpleBuildLoggerLogs error.- Specified by:
errorin interfaceSimpleBuildLogger- Parameters:
message- error message
-
buildFailureDescription
public void buildFailureDescription(String message)
Description copied from interface:BuildProgressLoggerAllows to fail build unconditionally. Message should be short - used in build status text- Specified by:
buildFailureDescriptionin interfaceBuildProgressLogger- Parameters:
message- short message describing reason of the build failure (shown in red and used in status text)
-
warning
public void warning(String message)
Description copied from interface:SimpleBuildLoggerLogs warning.- Specified by:
warningin interfaceSimpleBuildLogger- Parameters:
message- warning
-
exception
public void exception(Throwable th)
Description copied from interface:SimpleBuildLoggerLogs exception.- Specified by:
exceptionin interfaceSimpleBuildLogger- Parameters:
th- exception.
-
internalError
public void internalError(String type, String message, Throwable throwable)
Description copied from interface:BuildProgressLoggerReports internal error, i.e. error which should mark build as "failed to start".- Specified by:
internalErrorin interfaceBuildProgressLogger- Parameters:
type- the error typemessage- the descriptionthrowable- the corresponding exception (nullable)
-
flush
public abstract void flush()
Description copied from interface:BuildProgressLoggerFlushes messages buffer.- Specified by:
flushin interfaceBuildProgressLogger- Specified by:
flushin interfaceJUnitLogger
-
log
protected abstract void log(BuildMessage1 message)
-
logMessage
public void logMessage(BuildMessage1 message)
Description copied from interface:BuildProgressLoggerLogs specified build message as is- Specified by:
logMessagein interfaceBuildProgressLogger- Parameters:
message- build message to log
-
startFlow
public void startFlow()
Description copied from interface:FlowLoggerStarts flow explicitly. A special message must be sent to TeamCity for each new flow. Usually a flow is started when the first message is logged using this logger, but sometimes there is a need to start flow explicitly. For such cases use this method.- Specified by:
startFlowin interfaceFlowLogger
-
ignoreServiceMessages
public void ignoreServiceMessages(Runnable runnable)
Description copied from interface:BuildProgressLoggerRun given block in a mode when service messages are not parsed and ignored, both on agent and server- Specified by:
ignoreServiceMessagesin interfaceBuildProgressLogger
-
getFlowLogger
public FlowLogger getFlowLogger(String flowId)
Description copied from interface:BuildProgressLoggerReturns logger for specified flow id, or creates new logger if there were no loggers for this flow id yet.- Specified by:
getFlowLoggerin interfaceBuildProgressLogger- Parameters:
flowId- id of the messages flow- Returns:
- see above
-
getThreadLogger
public FlowLogger getThreadLogger()
Description copied from interface:BuildProgressLoggerReturns flow logger for current thread. This is equivalent to callingBuildProgressLogger.getFlowLogger(String)with flow id generated based on current Thread object.- Specified by:
getThreadLoggerin interfaceBuildProgressLogger- Returns:
- see above.
-
getFlowId
public String getFlowId()
Description copied from interface:BuildProgressLoggerReturns flow id of this logger. Flow id is an id of the messages flow. If you need to log messages from separate independent threads, you should generate flow id for each thread and use logger with corresponding flow id. See alsoBuildProgressLogger.getThreadLogger().- Specified by:
getFlowIdin interfaceBuildProgressLogger- Returns:
- see above
-
disposeFlow
public void disposeFlow()
Description copied from interface:FlowLoggerDisposes this flow, i.e. sends a message to server that this flow won't be used anymore. If there were other flow loggers created by this logger, their flows will be disposed too.- Specified by:
disposeFlowin interfaceFlowLogger
-
getTweakedLogger
public BuildProgressLogger getTweakedLogger(BuildMessageTweaker tweaker)
- Specified by:
getTweakedLoggerin interfaceMessageTweakingSupport
-
buildStarted
public void buildStarted()
-
disposeChildLoggers
protected void disposeChildLoggers()
-
logBuildProblem
public void logBuildProblem(BuildProblemData buildProblem)
Description copied from interface:BuildProgressLoggerLogs build problem that causes build failure on server- Specified by:
logBuildProblemin interfaceBuildProgressLogger- Parameters:
buildProblem- build problem
-
getParentFlowId
public String getParentFlowId()
-
-