- StartupInfoPrinter 클래스 추가 - 서비스 시작 시 배너 출력
eapim-portal CI / build (push) Has been cancelled
eapim-portal Test / test (push) Has been cancelled

- MessageCode 채널 필드 @Deprecated 추가 및 기본값 설정
- MessageCode 신규 생성자 추가 - channel 파라미터 제거
This commit is contained in:
Rinjae
2026-07-01 10:37:08 +09:00
parent a91b56ed11
commit c403118289
@@ -0,0 +1,51 @@
package com.eactive.apim.portal.config;
import org.springframework.boot.context.event.ApplicationReadyEvent;
import org.springframework.boot.system.ApplicationPid;
import org.springframework.context.ApplicationListener;
import org.springframework.core.env.Environment;
import org.springframework.stereotype.Component;
/**
* Prints a startup banner to stdout once boot is complete.
*
* <p>Uses {@link System#out} directly (not a logger) so the info is shown even when
* the logback console appender is disabled (CONSOLE_LOG_ENABLED=false).
*/
@Component
public class StartupInfoPrinter implements ApplicationListener<ApplicationReadyEvent> {
@Override
public void onApplicationEvent(ApplicationReadyEvent event) {
Environment env = event.getApplicationContext().getEnvironment();
String port = env.getProperty("server.port", "8080");
String contextPath = env.getProperty("server.servlet.context-path", "/");
if (!contextPath.startsWith("/")) {
contextPath = "/" + contextPath;
}
String url = "http://localhost:" + port + contextPath;
String[] active = env.getActiveProfiles();
String profile = active.length == 0
? String.join(", ", env.getDefaultProfiles())
: String.join(", ", active);
String instanceName = env.getProperty("inst.Name", System.getProperty("inst.Name", "unknown"));
String pid = new ApplicationPid().toString();
StringBuilder sb = new StringBuilder();
sb.append(System.lineSeparator());
sb.append("=====================================================").append(System.lineSeparator());
sb.append(" EAPIM Portal - startup complete").append(System.lineSeparator());
sb.append("=====================================================").append(System.lineSeparator());
sb.append(" URL : ").append(url).append(System.lineSeparator());
sb.append(" Spring profile : ").append(profile).append(System.lineSeparator());
sb.append(" Instance name : ").append(instanceName).append(System.lineSeparator());
sb.append(" PID : ").append(pid).append(System.lineSeparator());
sb.append("=====================================================").append(System.lineSeparator());
System.out.println(sb);
System.out.flush();
}
}