diff --git a/build/reports/problems/problems-report.html b/build/reports/problems/problems-report.html index 1869c93..ebb5bef 100644 --- a/build/reports/problems/problems-report.html +++ b/build/reports/problems/problems-report.html @@ -650,12 +650,12 @@ code + .copy-button { diff --git a/meeting/logs/meeting-service.log b/meeting/logs/meeting-service.log index 67df9d0..1a51b46 100644 --- a/meeting/logs/meeting-service.log +++ b/meeting/logs/meeting-service.log @@ -23467,3 +23467,1529 @@ This generated password is for development use only. Your security configuration 2025-10-31 13:13:45 [http-nio-8082-exec-1] INFO c.u.h.m.biz.service.MinutesService - Minutes decisions 값 확인 - minutesId: 4bf7c8cf-b85a-471f-93a9-d62b329c944d, decisions: null 2025-10-31 13:13:45 [http-nio-8082-exec-1] INFO c.u.h.m.i.c.MinutesController - 회의록 목록 조회 성공 - userId: minjun.kim@kt.com, total: 3, filtered: 3 2025-10-31 13:13:45 [http-nio-8082-exec-1] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MinutesController.getMinutesList 완료 - 실행시간: 780ms +2025-10-31 13:34:20 [main] INFO c.u.h.meeting.MeetingApplication - Starting MeetingApplication using Java 21.0.8 with PID 61239 (/Users/adela/home/workspace/recent/HGZero/meeting/build/classes/java/main started by adela in /Users/adela/home/workspace/recent/HGZero/meeting) +2025-10-31 13:34:20 [main] DEBUG c.u.h.meeting.MeetingApplication - Running with Spring Boot v3.3.5, Spring v6.1.14 +2025-10-31 13:34:20 [main] INFO c.u.h.meeting.MeetingApplication - The following 1 profile is active: "dev" +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 72 ms. Found 10 JPA repository interfaces. +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data Redis repositories in DEFAULT mode. +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.AgendaSectionJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.AgendaSectionRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MeetingAnalysisJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MeetingJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MeetingParticipantJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MinutesJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.MinutesSectionJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.SessionJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.TemplateJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.unicorn.hgzero.meeting.infra.gateway.repository.TodoJpaRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository +2025-10-31 13:34:20 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 22 ms. Found 0 Redis repository interfaces. +2025-10-31 13:34:21 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port 8082 (http) +2025-10-31 13:34:21 [main] INFO o.a.catalina.core.StandardService - Starting service [Tomcat] +2025-10-31 13:34:21 [main] INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.31] +2025-10-31 13:34:21 [main] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext +2025-10-31 13:34:21 [main] INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 1110 ms +2025-10-31 13:34:21 [main] INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] +2025-10-31 13:34:21 [main] INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 6.5.3.Final +2025-10-31 13:34:21 [main] INFO o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration boolean -> org.hibernate.type.BasicTypeReference@6f2a3b37 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration boolean -> org.hibernate.type.BasicTypeReference@6f2a3b37 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Boolean -> org.hibernate.type.BasicTypeReference@6f2a3b37 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration numeric_boolean -> org.hibernate.type.BasicTypeReference@323b0632 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.NumericBooleanConverter -> org.hibernate.type.BasicTypeReference@323b0632 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration true_false -> org.hibernate.type.BasicTypeReference@7cd8831c +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.TrueFalseConverter -> org.hibernate.type.BasicTypeReference@7cd8831c +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration yes_no -> org.hibernate.type.BasicTypeReference@146db8a6 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.YesNoConverter -> org.hibernate.type.BasicTypeReference@146db8a6 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte -> org.hibernate.type.BasicTypeReference@2a20da9f +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte -> org.hibernate.type.BasicTypeReference@2a20da9f +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Byte -> org.hibernate.type.BasicTypeReference@2a20da9f +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration binary -> org.hibernate.type.BasicTypeReference@40c0437f +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration byte[] -> org.hibernate.type.BasicTypeReference@40c0437f +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration [B -> org.hibernate.type.BasicTypeReference@40c0437f +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration binary_wrapper -> org.hibernate.type.BasicTypeReference@78b8f818 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration wrapper-binary -> org.hibernate.type.BasicTypeReference@78b8f818 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration image -> org.hibernate.type.BasicTypeReference@1e9d721 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration blob -> org.hibernate.type.BasicTypeReference@2d3111a1 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Blob -> org.hibernate.type.BasicTypeReference@2d3111a1 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_blob -> org.hibernate.type.BasicTypeReference@6f2864c3 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_blob_wrapper -> org.hibernate.type.BasicTypeReference@50ef2906 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration short -> org.hibernate.type.BasicTypeReference@1f70bce5 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration short -> org.hibernate.type.BasicTypeReference@1f70bce5 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Short -> org.hibernate.type.BasicTypeReference@1f70bce5 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration integer -> org.hibernate.type.BasicTypeReference@3ae91ab3 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration int -> org.hibernate.type.BasicTypeReference@3ae91ab3 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Integer -> org.hibernate.type.BasicTypeReference@3ae91ab3 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration long -> org.hibernate.type.BasicTypeReference@16cb6f51 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration long -> org.hibernate.type.BasicTypeReference@16cb6f51 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Long -> org.hibernate.type.BasicTypeReference@16cb6f51 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration float -> org.hibernate.type.BasicTypeReference@3fc5d397 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration float -> org.hibernate.type.BasicTypeReference@3fc5d397 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Float -> org.hibernate.type.BasicTypeReference@3fc5d397 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration double -> org.hibernate.type.BasicTypeReference@25c8c71e +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration double -> org.hibernate.type.BasicTypeReference@25c8c71e +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Double -> org.hibernate.type.BasicTypeReference@25c8c71e +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration big_integer -> org.hibernate.type.BasicTypeReference@57867d96 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.math.BigInteger -> org.hibernate.type.BasicTypeReference@57867d96 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration big_decimal -> org.hibernate.type.BasicTypeReference@1a7a21d0 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.math.BigDecimal -> org.hibernate.type.BasicTypeReference@1a7a21d0 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration character -> org.hibernate.type.BasicTypeReference@bb21063 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration char -> org.hibernate.type.BasicTypeReference@bb21063 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Character -> org.hibernate.type.BasicTypeReference@bb21063 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration character_nchar -> org.hibernate.type.BasicTypeReference@6821c63c +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration string -> org.hibernate.type.BasicTypeReference@c2f7c63 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.String -> org.hibernate.type.BasicTypeReference@c2f7c63 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration nstring -> org.hibernate.type.BasicTypeReference@4790b897 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration characters -> org.hibernate.type.BasicTypeReference@5cba890e +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration char[] -> org.hibernate.type.BasicTypeReference@5cba890e +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration [C -> org.hibernate.type.BasicTypeReference@5cba890e +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration wrapper-characters -> org.hibernate.type.BasicTypeReference@3a4cb483 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration text -> org.hibernate.type.BasicTypeReference@4d770bcd +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ntext -> org.hibernate.type.BasicTypeReference@fe156f4 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration clob -> org.hibernate.type.BasicTypeReference@79b4cff +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Clob -> org.hibernate.type.BasicTypeReference@79b4cff +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration nclob -> org.hibernate.type.BasicTypeReference@58ac0823 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.NClob -> org.hibernate.type.BasicTypeReference@58ac0823 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob -> org.hibernate.type.BasicTypeReference@2d705998 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob_char_array -> org.hibernate.type.BasicTypeReference@28a3fc34 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_clob_character_array -> org.hibernate.type.BasicTypeReference@7582a16b +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob -> org.hibernate.type.BasicTypeReference@4dd752e8 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob_character_array -> org.hibernate.type.BasicTypeReference@62c46e53 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration materialized_nclob_char_array -> org.hibernate.type.BasicTypeReference@55317c63 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Duration -> org.hibernate.type.BasicTypeReference@35d81657 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Duration -> org.hibernate.type.BasicTypeReference@35d81657 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalDateTime -> org.hibernate.type.BasicTypeReference@42ef5216 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalDateTime -> org.hibernate.type.BasicTypeReference@42ef5216 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalDate -> org.hibernate.type.BasicTypeReference@3180aee +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalDate -> org.hibernate.type.BasicTypeReference@3180aee +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration LocalTime -> org.hibernate.type.BasicTypeReference@5d94ac8a +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.LocalTime -> org.hibernate.type.BasicTypeReference@5d94ac8a +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTime -> org.hibernate.type.BasicTypeReference@288b73c1 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetDateTime -> org.hibernate.type.BasicTypeReference@288b73c1 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTimeWithTimezone -> org.hibernate.type.BasicTypeReference@104cfb24 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@5340ccb9 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTime -> org.hibernate.type.BasicTypeReference@2bc8caa7 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetTime -> org.hibernate.type.BasicTypeReference@2bc8caa7 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeUtc -> org.hibernate.type.BasicTypeReference@582ea164 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeWithTimezone -> org.hibernate.type.BasicTypeReference@2fccf49e +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@7abcc0da +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTime -> org.hibernate.type.BasicTypeReference@174cb0d8 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZonedDateTime -> org.hibernate.type.BasicTypeReference@174cb0d8 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTimeWithTimezone -> org.hibernate.type.BasicTypeReference@3ac406d4 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTimeWithoutTimezone -> org.hibernate.type.BasicTypeReference@72646d16 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration date -> org.hibernate.type.BasicTypeReference@6ec2d990 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Date -> org.hibernate.type.BasicTypeReference@6ec2d990 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration time -> org.hibernate.type.BasicTypeReference@1cfa7ee0 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Time -> org.hibernate.type.BasicTypeReference@1cfa7ee0 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration timestamp -> org.hibernate.type.BasicTypeReference@612290d +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.sql.Timestamp -> org.hibernate.type.BasicTypeReference@612290d +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Date -> org.hibernate.type.BasicTypeReference@612290d +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar -> org.hibernate.type.BasicTypeReference@57cff804 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Calendar -> org.hibernate.type.BasicTypeReference@57cff804 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.GregorianCalendar -> org.hibernate.type.BasicTypeReference@57cff804 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar_date -> org.hibernate.type.BasicTypeReference@2f39b534 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration calendar_time -> org.hibernate.type.BasicTypeReference@60fbc34d +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration instant -> org.hibernate.type.BasicTypeReference@7736c41e +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Instant -> org.hibernate.type.BasicTypeReference@7736c41e +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid -> org.hibernate.type.BasicTypeReference@5f911d24 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.UUID -> org.hibernate.type.BasicTypeReference@5f911d24 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration pg-uuid -> org.hibernate.type.BasicTypeReference@5f911d24 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid-binary -> org.hibernate.type.BasicTypeReference@3de383f7 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration uuid-char -> org.hibernate.type.BasicTypeReference@33ccead +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration class -> org.hibernate.type.BasicTypeReference@42ebece0 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Class -> org.hibernate.type.BasicTypeReference@42ebece0 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration currency -> org.hibernate.type.BasicTypeReference@15c4b1a4 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Currency -> org.hibernate.type.BasicTypeReference@15c4b1a4 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Currency -> org.hibernate.type.BasicTypeReference@15c4b1a4 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration locale -> org.hibernate.type.BasicTypeReference@341964d0 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.Locale -> org.hibernate.type.BasicTypeReference@341964d0 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration serializable -> org.hibernate.type.BasicTypeReference@51b59d58 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.io.Serializable -> org.hibernate.type.BasicTypeReference@51b59d58 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration timezone -> org.hibernate.type.BasicTypeReference@4ca4f762 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.util.TimeZone -> org.hibernate.type.BasicTypeReference@4ca4f762 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZoneOffset -> org.hibernate.type.BasicTypeReference@7c5d36c3 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZoneOffset -> org.hibernate.type.BasicTypeReference@7c5d36c3 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration url -> org.hibernate.type.BasicTypeReference@31de27c +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.net.URL -> org.hibernate.type.BasicTypeReference@31de27c +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration vector -> org.hibernate.type.BasicTypeReference@7ebfe01a +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration row_version -> org.hibernate.type.BasicTypeReference@154b0748 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration object -> org.hibernate.type.JavaObjectType@7030b74c +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Object -> org.hibernate.type.JavaObjectType@7030b74c +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration null -> org.hibernate.type.NullType@538f45f1 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_date -> org.hibernate.type.BasicTypeReference@64fc6470 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_time -> org.hibernate.type.BasicTypeReference@42db955e +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_timestamp -> org.hibernate.type.BasicTypeReference@6bd2f039 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar -> org.hibernate.type.BasicTypeReference@6c8ad6d7 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar_date -> org.hibernate.type.BasicTypeReference@2d0778d0 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_calendar_time -> org.hibernate.type.BasicTypeReference@33e8694b +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_binary -> org.hibernate.type.BasicTypeReference@4fc71437 +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration imm_serializable -> org.hibernate.type.BasicTypeReference@75c15f76 +2025-10-31 13:34:21 [main] INFO o.s.o.j.p.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer +2025-10-31 13:34:21 [main] WARN org.hibernate.orm.deprecation - HHH90000021: Encountered deprecated setting [hibernate.temp.use_jdbc_metadata_defaults], use [hibernate.boot.allow_jdbc_metadata_access] instead +2025-10-31 13:34:21 [main] WARN org.hibernate.orm.deprecation - HHH90000025: PostgreSQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default) +2025-10-31 13:34:21 [main] DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2003, org.hibernate.type.descriptor.sql.internal.ArrayDdlTypeImpl@2d5d001f) replaced previous registration(org.hibernate.type.descriptor.sql.internal.ArrayDdlTypeImpl@7a92827f) +2025-10-31 13:34:21 [main] DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(6, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@43094e0c) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@35efd12c) +2025-10-31 13:34:21 [main] DEBUG o.h.t.d.jdbc.spi.JdbcTypeRegistry - addDescriptor(2004, BlobTypeDescriptor(BLOB_BINDING)) replaced previous registration(BlobTypeDescriptor(DEFAULT)) +2025-10-31 13:34:21 [main] DEBUG o.h.t.d.jdbc.spi.JdbcTypeRegistry - addDescriptor(2005, ClobTypeDescriptor(CLOB_BINDING)) replaced previous registration(ClobTypeDescriptor(DEFAULT)) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration JAVA_OBJECT -> org.hibernate.type.JavaObjectType@584fb03d +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.lang.Object -> org.hibernate.type.JavaObjectType@584fb03d +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Type registration key [java.lang.Object] overrode previous entry : `org.hibernate.type.JavaObjectType@7030b74c` +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.DurationType -> basicType@1(java.time.Duration,3015) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration Duration -> basicType@1(java.time.Duration,3015) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.Duration -> basicType@1(java.time.Duration,3015) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.OffsetDateTimeType -> basicType@2(java.time.OffsetDateTime,3003) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetDateTime -> basicType@2(java.time.OffsetDateTime,3003) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetDateTime -> basicType@2(java.time.OffsetDateTime,3003) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.ZonedDateTimeType -> basicType@3(java.time.ZonedDateTime,3003) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration ZonedDateTime -> basicType@3(java.time.ZonedDateTime,3003) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.ZonedDateTime -> basicType@3(java.time.ZonedDateTime,3003) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration org.hibernate.type.OffsetTimeType -> basicType@4(java.time.OffsetTime,3007) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration OffsetTime -> basicType@4(java.time.OffsetTime,3007) +2025-10-31 13:34:21 [main] DEBUG o.hibernate.type.BasicTypeRegistry - Adding type registration java.time.OffsetTime -> basicType@4(java.time.OffsetTime,3007) +2025-10-31 13:34:21 [main] DEBUG o.h.type.spi.TypeConfiguration$Scope - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@4693d24f] to MetadataBuildingContext [org.hibernate.boot.internal.MetadataBuildingContextRootImpl@236a3e4] +2025-10-31 13:34:21 [main] WARN org.hibernate.orm.deprecation - HHH90000021: Encountered deprecated setting [javax.persistence.schema-generation.database.action], use [jakarta.persistence.schema-generation.database.action] instead +2025-10-31 13:34:21 [main] WARN org.hibernate.orm.deprecation - HHH90000021: Encountered deprecated setting [javax.persistence.schema-generation.scripts.action], use [jakarta.persistence.schema-generation.scripts.action] instead +2025-10-31 13:34:22 [main] INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) +2025-10-31 13:34:22 [main] DEBUG o.h.type.spi.TypeConfiguration$Scope - Scoping TypeConfiguration [org.hibernate.type.spi.TypeConfiguration@4693d24f] to SessionFactoryImplementor [org.hibernate.internal.SessionFactoryImpl@1cdbc986] +2025-10-31 13:34:22 [main] WARN org.hibernate.orm.deprecation - HHH90000021: Encountered deprecated setting [javax.persistence.schema-generation.database.action], use [jakarta.persistence.schema-generation.database.action] instead +2025-10-31 13:34:22 [main] WARN org.hibernate.orm.deprecation - HHH90000021: Encountered deprecated setting [javax.persistence.schema-generation.scripts.action], use [jakarta.persistence.schema-generation.scripts.action] instead +2025-10-31 13:34:22 [main] TRACE o.h.type.spi.TypeConfiguration$Scope - Handling #sessionFactoryCreated from [org.hibernate.internal.SessionFactoryImpl@1cdbc986] for TypeConfiguration +2025-10-31 13:34:22 [main] INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' +2025-10-31 13:34:22 [main] INFO o.s.d.j.r.query.QueryEnhancerFactory - Hibernate is in classpath; If applicable, HQL parser will be used. +2025-10-31 13:34:22 [main] INFO c.u.h.m.infra.cache.CacheConfig - ObjectMapper 설정 완료 +2025-10-31 13:34:22 [main] INFO c.u.h.m.infra.config.RedisConfig - Redis Lettuce Client 설정 완료 - Standalone 모드 (Master-Replica 자동 탐색 비활성화) +2025-10-31 13:34:22 [main] INFO c.u.h.m.infra.config.RedisConfig - LettuceConnectionFactory 설정 완료 - Host: 20.249.177.114:6379, Database: 1 +2025-10-31 13:34:22 [main] ERROR i.n.r.d.DnsServerAddressStreamProviders - Unable to load io.netty.resolver.dns.macos.MacOSDnsServerAddressStreamProvider, fallback to system defaults. This may result in incorrect DNS resolutions on MacOS. Check whether you have a dependency on 'io.netty:netty-resolver-dns-native-macos'. Use DEBUG level to see the full stack: java.lang.UnsatisfiedLinkError: failed to load the required native library +2025-10-31 13:34:22 [main] INFO c.u.h.m.infra.config.RedisConfig - RedisTemplate 설정 완료 +2025-10-31 13:34:22 [main] INFO c.u.h.m.infra.config.EventHubConfig - Initializing Azure EventHub configuration with hub name: hgzero-eventhub-name +2025-10-31 13:34:22 [main] INFO c.u.h.m.infra.config.EventHubConfig - Creating EventHub producer for hub: hgzero-eventhub-name +2025-10-31 13:34:23 [main] INFO c.a.m.e.EventHubClientBuilder - {"az.sdk.message":"Emitting a single connection.","connectionId":"MF_4ed394_1761885263024"} +2025-10-31 13:34:23 [main] INFO c.a.m.e.i.EventHubConnectionProcessor - {"az.sdk.message":"Setting next AMQP channel.","entityPath":"hgzero-eventhub-name"} +2025-10-31 13:34:23 [main] WARN o.s.b.a.o.j.JpaBaseConfiguration$JpaWebConfiguration - spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning +2025-10-31 13:34:23 [main] WARN o.s.b.a.s.s.UserDetailsServiceAutoConfiguration - + +Using generated security password: 48a04d4f-1f6a-4955-8160-4d597af68d66 + +This generated password is for development use only. Your security configuration must be updated before running your application in production. + +2025-10-31 13:34:23 [main] INFO o.s.s.c.a.a.c.InitializeUserDetailsBeanManagerConfigurer$InitializeUserDetailsManagerConfigurer - Global AuthenticationManager configured with UserDetailsService bean with name inMemoryUserDetailsManager +2025-10-31 13:34:23 [main] INFO c.u.h.m.infra.config.WebSocketConfig - WebSocket 핸들러 등록 완료 - endpoint: /ws/minutes/{minutesId} +2025-10-31 13:34:23 [main] INFO o.s.b.a.e.web.EndpointLinksResolver - Exposing 3 endpoints beneath base path '/actuator' +2025-10-31 13:34:23 [main] DEBUG o.s.s.web.DefaultSecurityFilterChain - Will secure any request with filters: DisableEncodeUrlFilter, WebAsyncManagerIntegrationFilter, SecurityContextHolderFilter, HeaderWriterFilter, CorsFilter, LogoutFilter, JwtAuthenticationFilter, RequestCacheAwareFilter, SecurityContextHolderAwareRequestFilter, AnonymousAuthenticationFilter, SessionManagementFilter, ExceptionTranslationFilter, AuthorizationFilter +2025-10-31 13:34:23 [main] WARN o.s.b.a.t.ThymeleafAutoConfiguration$DefaultTemplateResolverConfiguration - Cannot find template location: classpath:/templates/ (please add some templates, check your Thymeleaf configuration, or set spring.thymeleaf.check-template-location=false) +2025-10-31 13:34:24 [main] INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port 8082 (http) with context path '/' +2025-10-31 13:34:24 [main] INFO c.u.h.meeting.MeetingApplication - Started MeetingApplication in 4.353 seconds (process running for 4.54) +2025-10-31 13:34:28 [http-nio-8082-exec-1] INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' +2025-10-31 13:34:28 [http-nio-8082-exec-1] INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' +2025-10-31 13:34:28 [http-nio-8082-exec-1] INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 7 ms +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG o.s.security.web.FilterChainProxy - Securing GET /api/meetings/dashboard +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG c.u.h.m.i.c.j.JwtAuthenticationFilter - 헤더 기반 인증된 사용자: minjun.kim@kt.com (minjun.kim@kt.com) +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG o.s.security.web.FilterChainProxy - Secured GET /api/meetings/dashboard +2025-10-31 13:34:28 [http-nio-8082-exec-1] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.DashboardController.getDashboard 호출 - 파라미터: [minjun.kim@kt.com, minjun.kim@kt.com, minjun.kim@kt.com] +2025-10-31 13:34:28 [http-nio-8082-exec-1] INFO c.u.h.m.i.c.DashboardController - 대시보드 데이터 조회 요청 - userId: minjun.kim@kt.com +2025-10-31 13:34:28 [http-nio-8082-exec-1] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... +2025-10-31 13:34:28 [http-nio-8082-exec-1] INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection org.postgresql.jdbc.PgConnection@1966cd35 +2025-10-31 13:34:28 [http-nio-8082-exec-1] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG c.u.h.m.biz.service.DashboardService - Getting dashboard for user: minjun.kim@kt.com +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.meeting_id, + me1_0.created_at, + me1_0.description, + me1_0.end_time, + me1_0.ended_at, + me1_0.location, + me1_0.organizer_id, + me1_0.purpose, + me1_0.scheduled_at, + me1_0.started_at, + me1_0.status, + me1_0.template_id, + me1_0.title, + me1_0.updated_at + from + meetings me1_0 + where + me1_0.status=? + and me1_0.scheduled_at */ select + me1_0.meeting_id, + me1_0.created_at, + me1_0.description, + me1_0.end_time, + me1_0.ended_at, + me1_0.location, + me1_0.organizer_id, + me1_0.purpose, + me1_0.scheduled_at, + me1_0.started_at, + me1_0.status, + me1_0.template_id, + me1_0.title, + me1_0.updated_at + from + meetings me1_0 + where + me1_0.scheduled_at between ? and ? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.user_id=? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.meeting_id, + me1_0.created_at, + me1_0.description, + me1_0.end_time, + me1_0.ended_at, + me1_0.location, + me1_0.organizer_id, + me1_0.purpose, + me1_0.scheduled_at, + me1_0.started_at, + me1_0.status, + me1_0.template_id, + me1_0.title, + me1_0.updated_at + from + meetings me1_0 + where + me1_0.scheduled_at between ? and ? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.meeting_id, + me1_0.created_at, + me1_0.description, + me1_0.end_time, + me1_0.ended_at, + me1_0.location, + me1_0.organizer_id, + me1_0.purpose, + me1_0.scheduled_at, + me1_0.started_at, + me1_0.status, + me1_0.template_id, + me1_0.title, + me1_0.updated_at + from + meetings me1_0 + where + me1_0.scheduled_at between ? and ? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + select + p1_0.meeting_id, + p1_0.user_id, + p1_0.attended, + p1_0.created_at, + p1_0.invitation_status, + p1_0.updated_at + from + meeting_participants p1_0 + where + p1_0.meeting_id=? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + select + p1_0.meeting_id, + p1_0.user_id, + p1_0.attended, + p1_0.created_at, + p1_0.invitation_status, + p1_0.updated_at + from + meeting_participants p1_0 + where + p1_0.meeting_id=? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + select + p1_0.meeting_id, + p1_0.user_id, + p1_0.attended, + p1_0.created_at, + p1_0.invitation_status, + p1_0.updated_at + from + meeting_participants p1_0 + where + p1_0.meeting_id=? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + select + p1_0.meeting_id, + p1_0.user_id, + p1_0.attended, + p1_0.created_at, + p1_0.invitation_status, + p1_0.updated_at + from + meeting_participants p1_0 + where + p1_0.meeting_id=? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + select + p1_0.meeting_id, + p1_0.user_id, + p1_0.attended, + p1_0.created_at, + p1_0.invitation_status, + p1_0.updated_at + from + meeting_participants p1_0 + where + p1_0.meeting_id=? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG c.u.h.m.i.gateway.DashboardGateway - 조회된 회의 목록 - userId: minjun.kim@kt.com, 총 5개 (SCHEDULED: 0, IN_PROGRESS: 2, COMPLETED: 3) +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG c.u.h.m.i.gateway.DashboardGateway - 회의록 조회 시작 - userId: minjun.kim@kt.com, startTime: 2025-10-01T13:34:28.911033, endTime: 2025-10-31T13:34:28.911042 +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 + where + me1_0.created_by=? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG c.u.h.m.i.gateway.DashboardGateway - 조회된 회의록 수: 3 +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG c.u.h.m.i.gateway.DashboardGateway - - minutesId: 4bf7c8cf-b85a-471f-93a9-d62b329c944d, meetingId: ed7307b0-752c-4436-ad59-0cd3d315d8cb, title: AI플랫폼개발팀 주간회의록, createdBy: minjun.kim@kt.com, createdAt: 2025-10-31T13:04:03.980252 +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG c.u.h.m.i.gateway.DashboardGateway - - minutesId: minutes-test, meetingId: meeting-test, title: 2025년 1분기 제품 기획 회의, createdBy: minjun.kim@kt.com, createdAt: 2025-10-31T09:33:39.085860 +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG c.u.h.m.i.gateway.DashboardGateway - - minutesId: 465ca71a-c270-451f-bfdf-53b7b537db25, meetingId: 5571f815-5831-4ac5-9cfa-acfbe98f00d6, title: Q&A 에이전트 개발 회의록, createdBy: minjun.kim@kt.com, createdAt: 2025-10-31T03:21:09.721764 +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.meeting_id, + me1_0.created_at, + me1_0.description, + me1_0.end_time, + me1_0.ended_at, + me1_0.location, + me1_0.organizer_id, + me1_0.purpose, + me1_0.scheduled_at, + me1_0.started_at, + me1_0.status, + me1_0.template_id, + me1_0.title, + me1_0.updated_at + from + meetings me1_0 + where + me1_0.organizer_id=? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.user_id=? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.meeting_id, + me1_0.created_at, + me1_0.description, + me1_0.end_time, + me1_0.ended_at, + me1_0.location, + me1_0.organizer_id, + me1_0.purpose, + me1_0.scheduled_at, + me1_0.started_at, + me1_0.status, + me1_0.template_id, + me1_0.title, + me1_0.updated_at + from + meetings me1_0 + where + me1_0.scheduled_at between ? and ? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 + where + me1_0.created_by=? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 + where + me1_0.meeting_id=? +2025-10-31 13:34:28 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 + where + me1_0.meeting_id=? +2025-10-31 13:34:29 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 + where + me1_0.meeting_id=? +2025-10-31 13:34:29 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 + where + me1_0.meeting_id=? +2025-10-31 13:34:29 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 + where + me1_0.meeting_id=? +2025-10-31 13:34:29 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 +2025-10-31 13:34:29 [http-nio-8082-exec-1] DEBUG org.hibernate.SQL - + /* */ select + te1_0.todo_id, + te1_0.assignee_id, + te1_0.completed_at, + te1_0.created_at, + te1_0.description, + te1_0.due_date, + te1_0.meeting_id, + te1_0.minutes_id, + te1_0.priority, + te1_0.status, + te1_0.title, + te1_0.updated_at + from + todos te1_0 + where + te1_0.assignee_id=? +2025-10-31 13:34:29 [http-nio-8082-exec-1] INFO c.u.h.m.i.gateway.DashboardGateway - 대시보드 데이터 조회 완료 - userId: minjun.kim@kt.com, 예정 회의: 3개, 최근 회의록: 3개 +2025-10-31 13:34:29 [http-nio-8082-exec-1] INFO c.u.h.m.i.c.DashboardController - 대시보드 데이터 조회 완료 - userId: minjun.kim@kt.com +2025-10-31 13:34:29 [http-nio-8082-exec-1] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.DashboardController.getDashboard 완료 - 실행시간: 681ms +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG o.s.security.web.FilterChainProxy - Securing GET /api/meetings/minutes?page=0&size=10&sortBy=modified&sortDir=desc&status=all +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG c.u.h.m.i.c.j.JwtAuthenticationFilter - 헤더 기반 인증된 사용자: minjun.kim@kt.com (minjun.kim@kt.com) +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG o.s.security.web.FilterChainProxy - Secured GET /api/meetings/minutes?page=0&size=10&sortBy=modified&sortDir=desc&status=all +2025-10-31 13:34:39 [http-nio-8082-exec-3] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MinutesController.getMinutesList 호출 - 파라미터: [minjun.kim@kt.com, minjun.kim@kt.com, 0, 10, modified, desc, all, null, null] +2025-10-31 13:34:39 [http-nio-8082-exec-3] INFO c.u.h.m.i.c.MinutesController - 회의록 목록 조회 요청 - userId: minjun.kim@kt.com, page: 0, size: 10, status: all, participationType: null, search: null +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG c.u.h.m.biz.service.MinutesService - Getting minutes list by userId: minjun.kim@kt.com +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG c.u.h.m.infra.gateway.MinutesGateway - 사용자가 참여한 회의의 회의록 조회: minjun.kim@kt.com +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 + where + me1_0.created_by=? +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + select + me1_0.meeting_id, + me1_0.created_at, + me1_0.description, + me1_0.end_time, + me1_0.ended_at, + me1_0.location, + me1_0.organizer_id, + me1_0.purpose, + me1_0.scheduled_at, + me1_0.started_at, + me1_0.status, + me1_0.template_id, + me1_0.title, + me1_0.updated_at + from + meetings me1_0 + where + me1_0.meeting_id=? +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + select + p1_0.meeting_id, + p1_0.user_id, + p1_0.attended, + p1_0.created_at, + p1_0.invitation_status, + p1_0.updated_at + from + meeting_participants p1_0 + where + p1_0.meeting_id=? +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + count(*) + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* SELECT + m + FROM + MinutesSectionEntity m + WHERE + m.minutesId = :minutesId + ORDER BY + m.order ASC */ select + mse1_0.id, + mse1_0.content, + mse1_0.created_at, + mse1_0.locked, + mse1_0.locked_by, + mse1_0.minutes_id, + mse1_0."order", + mse1_0.title, + mse1_0.type, + mse1_0.updated_at, + mse1_0.verified + from + minutes_sections mse1_0 + where + mse1_0.minutes_id=? + order by + mse1_0."order" +2025-10-31 13:34:39 [http-nio-8082-exec-3] INFO c.u.h.m.biz.service.MinutesService - Minutes decisions 값 확인 - minutesId: minutes-test, decisions: 베타 버전 출시일: 2025년 12월 1일\n배경: 개발 일정 및 시장 진입 시기를 고려하여 12월 초 출시가 최적. Q4 마무리 전 베타 피드백 확보 가능.\n타겟 고객: 중소기업 및 스타트업\n배경: 사용자 인터뷰 결과, 중소기업과 스타트업이 회의록 작성에 가장 많은 시간을 소비하며 자동화 니즈가 높음. +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + select + me1_0.meeting_id, + me1_0.created_at, + me1_0.description, + me1_0.end_time, + me1_0.ended_at, + me1_0.location, + me1_0.organizer_id, + me1_0.purpose, + me1_0.scheduled_at, + me1_0.started_at, + me1_0.status, + me1_0.template_id, + me1_0.title, + me1_0.updated_at + from + meetings me1_0 + where + me1_0.meeting_id=? +2025-10-31 13:34:39 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + select + p1_0.meeting_id, + p1_0.user_id, + p1_0.attended, + p1_0.created_at, + p1_0.invitation_status, + p1_0.updated_at + from + meeting_participants p1_0 + where + p1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + count(*) + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* SELECT + m + FROM + MinutesSectionEntity m + WHERE + m.minutesId = :minutesId + ORDER BY + m.order ASC */ select + mse1_0.id, + mse1_0.content, + mse1_0.created_at, + mse1_0.locked, + mse1_0.locked_by, + mse1_0.minutes_id, + mse1_0."order", + mse1_0.title, + mse1_0.type, + mse1_0.updated_at, + mse1_0.verified + from + minutes_sections mse1_0 + where + mse1_0.minutes_id=? + order by + mse1_0."order" +2025-10-31 13:34:40 [http-nio-8082-exec-3] INFO c.u.h.m.biz.service.MinutesService - Minutes decisions 값 확인 - minutesId: 4bf7c8cf-b85a-471f-93a9-d62b329c944d, decisions: null +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + select + me1_0.meeting_id, + me1_0.created_at, + me1_0.description, + me1_0.end_time, + me1_0.ended_at, + me1_0.location, + me1_0.organizer_id, + me1_0.purpose, + me1_0.scheduled_at, + me1_0.started_at, + me1_0.status, + me1_0.template_id, + me1_0.title, + me1_0.updated_at + from + meetings me1_0 + where + me1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + select + p1_0.meeting_id, + p1_0.user_id, + p1_0.attended, + p1_0.created_at, + p1_0.invitation_status, + p1_0.updated_at + from + meeting_participants p1_0 + where + p1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + count(*) + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* SELECT + m + FROM + MinutesSectionEntity m + WHERE + m.minutesId = :minutesId + ORDER BY + m.order ASC */ select + mse1_0.id, + mse1_0.content, + mse1_0.created_at, + mse1_0.locked, + mse1_0.locked_by, + mse1_0.minutes_id, + mse1_0."order", + mse1_0.title, + mse1_0.type, + mse1_0.updated_at, + mse1_0.verified + from + minutes_sections mse1_0 + where + mse1_0.minutes_id=? + order by + mse1_0."order" +2025-10-31 13:34:40 [http-nio-8082-exec-3] INFO c.u.h.m.biz.service.MinutesService - Minutes decisions 값 확인 - minutesId: 465ca71a-c270-451f-bfdf-53b7b537db25, decisions: null +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG c.u.h.m.biz.service.MeetingService - Getting meeting: meeting-test +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG c.u.h.m.biz.service.MeetingService - Getting meeting: ed7307b0-752c-4436-ad59-0cd3d315d8cb +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG c.u.h.m.biz.service.MeetingService - Getting meeting: 5571f815-5831-4ac5-9cfa-acfbe98f00d6 +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG c.u.h.m.biz.service.MinutesService - Getting minutes list by userId: minjun.kim@kt.com +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG c.u.h.m.infra.gateway.MinutesGateway - 사용자가 참여한 회의의 회의록 조회: minjun.kim@kt.com +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 + where + me1_0.created_by=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + count(*) + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* SELECT + m + FROM + MinutesSectionEntity m + WHERE + m.minutesId = :minutesId + ORDER BY + m.order ASC */ select + mse1_0.id, + mse1_0.content, + mse1_0.created_at, + mse1_0.locked, + mse1_0.locked_by, + mse1_0.minutes_id, + mse1_0."order", + mse1_0.title, + mse1_0.type, + mse1_0.updated_at, + mse1_0.verified + from + minutes_sections mse1_0 + where + mse1_0.minutes_id=? + order by + mse1_0."order" +2025-10-31 13:34:40 [http-nio-8082-exec-3] INFO c.u.h.m.biz.service.MinutesService - Minutes decisions 값 확인 - minutesId: minutes-test, decisions: 베타 버전 출시일: 2025년 12월 1일\n배경: 개발 일정 및 시장 진입 시기를 고려하여 12월 초 출시가 최적. Q4 마무리 전 베타 피드백 확보 가능.\n타겟 고객: 중소기업 및 스타트업\n배경: 사용자 인터뷰 결과, 중소기업과 스타트업이 회의록 작성에 가장 많은 시간을 소비하며 자동화 니즈가 높음. +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + count(*) + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* SELECT + m + FROM + MinutesSectionEntity m + WHERE + m.minutesId = :minutesId + ORDER BY + m.order ASC */ select + mse1_0.id, + mse1_0.content, + mse1_0.created_at, + mse1_0.locked, + mse1_0.locked_by, + mse1_0.minutes_id, + mse1_0."order", + mse1_0.title, + mse1_0.type, + mse1_0.updated_at, + mse1_0.verified + from + minutes_sections mse1_0 + where + mse1_0.minutes_id=? + order by + mse1_0."order" +2025-10-31 13:34:40 [http-nio-8082-exec-3] INFO c.u.h.m.biz.service.MinutesService - Minutes decisions 값 확인 - minutesId: 4bf7c8cf-b85a-471f-93a9-d62b329c944d, decisions: null +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* */ select + count(*) + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:40 [http-nio-8082-exec-3] DEBUG org.hibernate.SQL - + /* SELECT + m + FROM + MinutesSectionEntity m + WHERE + m.minutesId = :minutesId + ORDER BY + m.order ASC */ select + mse1_0.id, + mse1_0.content, + mse1_0.created_at, + mse1_0.locked, + mse1_0.locked_by, + mse1_0.minutes_id, + mse1_0."order", + mse1_0.title, + mse1_0.type, + mse1_0.updated_at, + mse1_0.verified + from + minutes_sections mse1_0 + where + mse1_0.minutes_id=? + order by + mse1_0."order" +2025-10-31 13:34:40 [http-nio-8082-exec-3] INFO c.u.h.m.biz.service.MinutesService - Minutes decisions 값 확인 - minutesId: 465ca71a-c270-451f-bfdf-53b7b537db25, decisions: null +2025-10-31 13:34:40 [http-nio-8082-exec-3] INFO c.u.h.m.i.c.MinutesController - 회의록 목록 조회 성공 - userId: minjun.kim@kt.com, total: 3, filtered: 3 +2025-10-31 13:34:40 [http-nio-8082-exec-3] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MinutesController.getMinutesList 완료 - 실행시간: 729ms +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG o.s.security.web.FilterChainProxy - Securing GET /api/meetings/minutes/minutes-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG c.u.h.m.i.c.j.JwtAuthenticationFilter - 헤더 기반 인증된 사용자: minjun.kim@kt.com (minjun.kim@kt.com) +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG o.s.security.web.FilterChainProxy - Secured GET /api/meetings/minutes/minutes-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MinutesController.getMinutesDetail 호출 - 파라미터: [minjun.kim@kt.com, minjun.kim@kt.com, minutes-test] +2025-10-31 13:34:49 [http-nio-8082-exec-5] INFO c.u.h.m.i.c.MinutesController - 회의록 상세 조회 요청 - userId: minjun.kim@kt.com, minutesId: minutes-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG c.u.h.m.biz.service.MinutesService - Getting minutes DTO by id: minutes-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + select + me1_0.minutes_id, + me1_0.created_at, + me1_0.created_by, + me1_0.decisions, + me1_0.finalized_at, + me1_0.finalized_by, + me1_0.meeting_id, + me1_0.status, + me1_0.title, + me1_0.updated_at, + me1_0.user_id, + me1_0.version + from + minutes me1_0 + where + me1_0.minutes_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + select + me1_0.meeting_id, + me1_0.created_at, + me1_0.description, + me1_0.end_time, + me1_0.ended_at, + me1_0.location, + me1_0.organizer_id, + me1_0.purpose, + me1_0.scheduled_at, + me1_0.started_at, + me1_0.status, + me1_0.template_id, + me1_0.title, + me1_0.updated_at + from + meetings me1_0 + where + me1_0.meeting_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + select + p1_0.meeting_id, + p1_0.user_id, + p1_0.attended, + p1_0.created_at, + p1_0.invitation_status, + p1_0.updated_at + from + meeting_participants p1_0 + where + p1_0.meeting_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* */ select + count(*) + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* SELECT + m + FROM + MinutesSectionEntity m + WHERE + m.minutesId = :minutesId + ORDER BY + m.order ASC */ select + mse1_0.id, + mse1_0.content, + mse1_0.created_at, + mse1_0.locked, + mse1_0.locked_by, + mse1_0.minutes_id, + mse1_0."order", + mse1_0.title, + mse1_0.type, + mse1_0.updated_at, + mse1_0.verified + from + minutes_sections mse1_0 + where + mse1_0.minutes_id=? + order by + mse1_0."order" +2025-10-31 13:34:49 [http-nio-8082-exec-5] INFO c.u.h.m.biz.service.MinutesService - Minutes decisions 값 확인 - minutesId: minutes-test, decisions: 베타 버전 출시일: 2025년 12월 1일\n배경: 개발 일정 및 시장 진입 시기를 고려하여 12월 초 출시가 최적. Q4 마무리 전 베타 피드백 확보 가능.\n타겟 고객: 중소기업 및 스타트업\n배경: 사용자 인터뷰 결과, 중소기업과 스타트업이 회의록 작성에 가장 많은 시간을 소비하며 자동화 니즈가 높음. +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG c.u.h.m.biz.service.MeetingService - Getting meeting: meeting-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG c.u.h.m.biz.service.MeetingService - Getting meeting: meeting-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG c.u.h.m.biz.service.MeetingService - Getting meeting: meeting-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG c.u.h.m.biz.service.MeetingService - Getting meeting: meeting-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG c.u.h.m.biz.service.MeetingService - Getting meeting: meeting-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] INFO c.u.h.m.b.s.AgendaSectionService - 안건 섹션 목록 조회 - minutesId: minutes-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* */ select + ase1_0.id, + ase1_0.agenda_number, + ase1_0.agenda_title, + ase1_0.ai_summary_short, + ase1_0.created_at, + ase1_0.meeting_id, + ase1_0.minutes_id, + ase1_0.pending_items, + ase1_0.summary, + ase1_0.todos, + ase1_0.updated_at + from + agenda_sections ase1_0 + where + ase1_0.minutes_id=? + order by + ase1_0.agenda_number +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* */ select + te1_0.todo_id, + te1_0.assignee_id, + te1_0.completed_at, + te1_0.created_at, + te1_0.description, + te1_0.due_date, + te1_0.meeting_id, + te1_0.minutes_id, + te1_0.priority, + te1_0.status, + te1_0.title, + te1_0.updated_at + from + todos te1_0 + where + te1_0.minutes_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] INFO c.u.h.m.i.c.MinutesController - Todo 조회 성공 - minutesId: minutes-test, totalCount: 4 +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG c.u.h.m.biz.service.MeetingService - Getting meeting: meeting-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* */ select + mpe1_0.meeting_id, + mpe1_0.user_id, + mpe1_0.attended, + mpe1_0.created_at, + mpe1_0.invitation_status, + mpe1_0.updated_at + from + meeting_participants mpe1_0 + where + mpe1_0.meeting_id=? +2025-10-31 13:34:49 [http-nio-8082-exec-5] INFO c.u.h.m.i.c.MinutesController - Dashboard decisions 값 확인 - minutesId: minutes-test, decisions: 베타 버전 출시일: 2025년 12월 1일\n배경: 개발 일정 및 시장 진입 시기를 고려하여 12월 초 출시가 최적. Q4 마무리 전 베타 피드백 확보 가능.\n타겟 고객: 중소기업 및 스타트업\n배경: 사용자 인터뷰 결과, 중소기업과 스타트업이 회의록 작성에 가장 많은 시간을 소비하며 자동화 니즈가 높음. +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG c.u.h.m.b.s.MinutesSectionService - Getting sections by minutes: minutes-test +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG org.hibernate.SQL - + /* SELECT + m + FROM + MinutesSectionEntity m + WHERE + m.minutesId = :minutesId + ORDER BY + m.order ASC */ select + mse1_0.id, + mse1_0.content, + mse1_0.created_at, + mse1_0.locked, + mse1_0.locked_by, + mse1_0.minutes_id, + mse1_0."order", + mse1_0.title, + mse1_0.type, + mse1_0.updated_at, + mse1_0.verified + from + minutes_sections mse1_0 + where + mse1_0.minutes_id=? + order by + mse1_0."order" +2025-10-31 13:34:49 [http-nio-8082-exec-5] DEBUG c.u.h.m.i.gateway.AiServiceGateway - AI 분석 결과 캐시 미스, AI 서비스 호출 - minutesId: minutes-test +2025-10-31 13:34:50 [http-nio-8082-exec-5] ERROR c.u.h.m.i.gateway.AiServiceGateway - AI 서비스 호출 실패 - minutesId: minutes-test, error: I/O error on POST request for "http://ai:8080/api/v1/analysis/minutes": ai +org.springframework.web.client.ResourceAccessException: I/O error on POST request for "http://ai:8080/api/v1/analysis/minutes": ai + at org.springframework.web.client.RestTemplate.createResourceAccessException(RestTemplate.java:915) + at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:895) + at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:790) + at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:672) + at com.unicorn.hgzero.meeting.infra.gateway.AiServiceGateway.requestAiAnalysis(AiServiceGateway.java:107) + at com.unicorn.hgzero.meeting.infra.gateway.AiServiceGateway.getAiAnalysis(AiServiceGateway.java:51) + at com.unicorn.hgzero.meeting.infra.controller.MinutesController.enhanceWithAiAnalysis(MinutesController.java:1009) + at com.unicorn.hgzero.meeting.infra.controller.MinutesController.getMinutesDetail(MinutesController.java:162) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:355) + at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196) + at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) + at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) + at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89) + at com.unicorn.hgzero.common.aop.LoggingAspect.logController(LoggingAspect.java:56) + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:637) + at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:627) + at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:71) + at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) + at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) + at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97) + at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184) + at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.proceed(CglibAopProxy.java:768) + at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:720) + at com.unicorn.hgzero.meeting.infra.controller.MinutesController$$SpringCGLIB$$0.getMinutesDetail() + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) + at java.base/java.lang.reflect.Method.invoke(Method.java:580) + at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:255) + at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:188) + at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:926) + at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:831) + at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) + at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) + at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) + at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) + at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) + at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) + at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:195) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:108) + at org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231) + at org.springframework.security.web.ObservationFilterChainDecorator$FilterObservation$SimpleFilterObservation.lambda$wrap$1(ObservationFilterChainDecorator.java:479) + at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$1(ObservationFilterChainDecorator.java:340) + at org.springframework.security.web.ObservationFilterChainDecorator.lambda$wrapSecured$0(ObservationFilterChainDecorator.java:82) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:128) + at org.springframework.security.web.access.intercept.AuthorizationFilter.doFilter(AuthorizationFilter.java:100) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:126) + at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:120) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:131) + at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:85) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:179) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at com.unicorn.hgzero.meeting.infra.config.jwt.JwtAuthenticationFilter.doFilterInternal(JwtAuthenticationFilter.java:60) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107) + at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) + at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82) + at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) + at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$0(ObservationFilterChainDecorator.java:323) + at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:224) + at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) + at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233) + at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191) + at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113) + at org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$3(HandlerMappingIntrospector.java:195) + at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113) + at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74) + at org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:230) + at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:362) + at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:278) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:113) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) + at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) + at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) + at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) + at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) + at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) + at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:483) + at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) + at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) + at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) + at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) + at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:384) + at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) + at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:905) + at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) + at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) + at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) + at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) + at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) + at java.base/java.lang.Thread.run(Thread.java:1583) +Caused by: java.net.UnknownHostException: ai + at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:567) + at java.base/java.net.Socket.connect(Socket.java:751) + at java.base/sun.net.NetworkClient.doConnect(NetworkClient.java:178) + at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:531) + at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:636) + at java.base/sun.net.www.http.HttpClient.(HttpClient.java:282) + at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:386) + at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:408) + at java.base/sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1320) + at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1253) + at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1139) + at java.base/sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:1068) + at org.springframework.http.client.SimpleClientHttpRequest.executeInternal(SimpleClientHttpRequest.java:79) + at org.springframework.http.client.AbstractStreamingClientHttpRequest.executeInternal(AbstractStreamingClientHttpRequest.java:70) + at org.springframework.http.client.AbstractClientHttpRequest.execute(AbstractClientHttpRequest.java:66) + at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:889) + ... 158 common frames omitted +2025-10-31 13:34:50 [http-nio-8082-exec-5] DEBUG c.u.h.m.i.c.MinutesController - AI 분석 요청 이벤트 발행 스킵 - DB 값 사용 - minutesId: minutes-test +2025-10-31 13:34:50 [http-nio-8082-exec-5] DEBUG c.u.h.m.infra.cache.CacheService - 회의록 상세 캐시 저장 - minutesId: minutes-test +2025-10-31 13:34:50 [http-nio-8082-exec-5] INFO c.u.h.m.i.c.MinutesController - 회의록 상세 조회 성공 - minutesId: minutes-test +2025-10-31 13:34:50 [http-nio-8082-exec-5] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MinutesController.getMinutesDetail 완료 - 실행시간: 777ms +2025-10-31 13:35:04 [http-nio-8082-exec-7] DEBUG o.s.security.web.FilterChainProxy - Securing GET /api/meetings/minutes/minutes-test +2025-10-31 13:35:04 [http-nio-8082-exec-7] DEBUG c.u.h.m.i.c.j.JwtAuthenticationFilter - 헤더 기반 인증된 사용자: minjun.kim@kt.com (minjun.kim@kt.com) +2025-10-31 13:35:04 [http-nio-8082-exec-7] DEBUG o.s.security.web.FilterChainProxy - Secured GET /api/meetings/minutes/minutes-test +2025-10-31 13:35:04 [http-nio-8082-exec-7] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MinutesController.getMinutesDetail 호출 - 파라미터: [minjun.kim@kt.com, minjun.kim@kt.com, minutes-test] +2025-10-31 13:35:04 [http-nio-8082-exec-7] INFO c.u.h.m.i.c.MinutesController - 회의록 상세 조회 요청 - userId: minjun.kim@kt.com, minutesId: minutes-test +2025-10-31 13:35:04 [http-nio-8082-exec-7] DEBUG c.u.h.m.i.c.MinutesController - 회의록 상세 캐시 히트 - minutesId: minutes-test +2025-10-31 13:35:04 [http-nio-8082-exec-7] INFO c.u.hgzero.common.aop.LoggingAspect - [Controller] com.unicorn.hgzero.meeting.infra.controller.MinutesController.getMinutesDetail 완료 - 실행시간: 51ms diff --git a/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/service/EndMeetingService.java b/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/service/EndMeetingService.java index ef4969d..6e26fb7 100644 --- a/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/service/EndMeetingService.java +++ b/meeting/src/main/java/com/unicorn/hgzero/meeting/biz/service/EndMeetingService.java @@ -177,12 +177,13 @@ public class EndMeetingService implements EndMeetingUseCase { */ private MinutesEntity getOrCreateConsolidatedMinutes(MeetingEntity meeting) { // userId가 NULL인 회의록 찾기 (AI 통합 회의록) - Optional existing = minutesRepository + List existingList = minutesRepository .findByMeetingIdAndUserIdIsNull(meeting.getMeetingId()); - if (existing.isPresent()) { - log.debug("기존 통합 회의록 사용 - minutesId: {}", existing.get().getMinutesId()); - return existing.get(); + if (!existingList.isEmpty()) { + MinutesEntity existing = existingList.get(0); + log.debug("기존 통합 회의록 사용 - minutesId: {}", existing.getMinutesId()); + return existing; } // 없으면 새로 생성