override fun onStandardOutput()

in agent/src/main/kotlin/com/jetbrains/teamcity/plugins/unrealengine/agent/build/log/UnrealEngineProcessListener.kt [33:64]


    override fun onStandardOutput(text: String) {
        val event = logEventParser.parse(text)

        if (event.message.isEmpty()) {
            return
        }

        val handler = handlers.firstOrNull { it.tryHandleEvent(event) }
        if (handler != null) {
            agentLogger.debug(
                """Log event was handled by "${handler::class.simpleName}":
                |${event.toLogString()}
                """.trimMargin(),
            )
            return
        }

        when (event.level) {
            LogLevel.Error, LogLevel.Critical -> {
                buildStdOutLogger.error(event.message)
                buildLogger.logBuildProblem(event.asBuildProblem())
            }
            LogLevel.Warning -> {
                buildStdOutLogger.warn(event.message)
                buildLogger.warning(event.message)
            }
            else -> {
                buildStdOutLogger.info(event.message)
                buildLogger.message(event.message)
            }
        }
    }