/Users/jominseo/HGZero/ai-python/main.py:45: DeprecationWarning: on_event is deprecated, use lifespan event handlers instead. Read more about it in the [FastAPI docs for Lifespan Events](https://fastapi.tiangolo.com/advanced/events/). @app.on_event("startup") INFO: Will watch for changes in these directories: ['/Users/jominseo/HGZero/ai-python'] INFO: Uvicorn running on http://0.0.0.0:8086 (Press CTRL+C to quit) INFO: Started reloader process [80962] using WatchFiles INFO: Started server process [80965] INFO: Waiting for application startup. 2025-10-29 17:17:07,686 - main - INFO - 애플리케이션 시작 - Event Hub 리스너 백그라운드 실행 2025-10-29 17:17:07,686 - app.services.eventhub_service - INFO - Event Hub 리스너 시작 INFO: Application startup complete. 2025-10-29 17:17:07,782 - app.services.redis_service - INFO - Redis 연결 성공 2025-10-29 17:17:07,782 - azure.eventhub.aio._eventprocessor.event_processor - INFO - EventProcessor 'f0d1aefd-589a-4c4e-ba37-166dd514d7bb' is being started 2025-10-29 17:17:07,958 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: None -> 2025-10-29 17:17:08,052 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,052 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,052 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,053 - azure.eventhub._pyamqp.aio._session_async - INFO - Session state changed: -> 2025-10-29 17:17:08,054 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,054 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link receiver state changed: -> 2025-10-29 17:17:08,055 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,055 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link sender state changed: -> 2025-10-29 17:17:08,084 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,136 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,187 - azure.eventhub._pyamqp.aio._session_async - INFO - Session state changed: -> 2025-10-29 17:17:08,238 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,238 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link receiver state changed: -> 2025-10-29 17:17:08,289 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,289 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link sender state changed: -> 2025-10-29 17:17:08,290 - azure.eventhub._pyamqp.aio._cbs_async - INFO - CBS completed opening with status: 2025-10-29 17:17:08,495 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,495 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link receiver state changed: -> 2025-10-29 17:17:08,495 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,495 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link sender state changed: -> 2025-10-29 17:17:08,520 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,520 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link receiver state changed: -> 2025-10-29 17:17:08,521 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,521 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link sender state changed: -> 2025-10-29 17:17:08,560 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,560 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link receiver state changed: -> 2025-10-29 17:17:08,560 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,560 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link sender state changed: -> 2025-10-29 17:17:08,560 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,560 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link sender state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link receiver state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._session_async - INFO - Session state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._session_async - INFO - Session state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link sender state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link receiver state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link sender state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,561 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link receiver state changed: -> 2025-10-29 17:17:08,563 - azure.eventhub.aio._eventprocessor.event_processor - INFO - EventProcessor 'f0d1aefd-589a-4c4e-ba37-166dd514d7bb' has claimed partition '0' 2025-10-29 17:17:08,563 - azure.eventhub.aio._eventprocessor.event_processor - INFO - start ownership '0', checkpoint None 2025-10-29 17:17:08,673 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: None -> 2025-10-29 17:17:08,747 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,748 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,748 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,748 - azure.eventhub._pyamqp.aio._session_async - INFO - Session state changed: -> 2025-10-29 17:17:08,749 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,749 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link receiver state changed: -> 2025-10-29 17:17:08,749 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,749 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link sender state changed: -> 2025-10-29 17:17:08,773 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,823 - azure.eventhub._pyamqp.aio._connection_async - INFO - Connection state changed: -> 2025-10-29 17:17:08,874 - azure.eventhub._pyamqp.aio._session_async - INFO - Session state changed: -> 2025-10-29 17:17:08,926 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,926 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link receiver state changed: -> 2025-10-29 17:17:08,978 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:08,978 - azure.eventhub._pyamqp.aio._management_link_async - INFO - Management link sender state changed: -> 2025-10-29 17:17:08,978 - azure.eventhub._pyamqp.aio._cbs_async - INFO - CBS completed opening with status: 2025-10-29 17:17:09,182 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:09,201 - azure.eventhub._pyamqp.aio._link_async - INFO - Link state changed: -> 2025-10-29 17:17:09,275 - app.services.eventhub_service - INFO - 수신한 이벤트 원본 (처음 300자): {"eventId":"7436b96c-3a60-418b-848d-727770d7cfd9","eventType":"SegmentCreated","segmentId":"9483cf8a-e41e-49e9-b2c0-28519bba798d","recordingId":"test-meeting-001","meetingId":"test-meeting-001","text”:”오늘은 OFDM 기술 적용방안과 AICC 구축 협의에 대해 논의해보겠습니다.”,”speakerId":"UNKNOWN","speakerName":"참석자","timestamp": 2025-10-29 17:17:09,275 - app.services.eventhub_service - INFO - 수신한 이벤트 원본 (처음 300자): {"eventId":"7436b96c-3a60-418b-848d-727770d7cfd9","eventType":"SegmentCreated","segmentId":"9483cf8a-e41e-49e9-b2c0-28519bba798d","recordingId":"test-meeting-001","meetingId":"test-meeting-001","text”:”오늘은 OFDM 기술 적용방안과 AICC 구축 협의에 대해 논의해보겠습니다.”,”speakerId":"UNKNOWN","speakerName":"참석자","timestamp": 2025-10-29 17:17:09,275 - app.services.eventhub_service - INFO - 수신한 이벤트 원본 (처음 300자): {"eventId":"7436b96c-3a60-418b-848d-727770d7cfd9","eventType":"SegmentCreated","segmentId":"9483cf8a-e41e-49e9-b2c0-28519bba798e”,”recordingId":"test-meeting-001","meetingId":"test-meeting-001","text”:”오늘은 OFDM 기술 적용방안과 AICC 구축 협의에 대해 논의해보겠습니다.”,”speakerId":"UNKNOWN","speakerName":"참석자","timestamp": 2025-10-29 17:17:09,275 - app.services.eventhub_service - ERROR - 이벤트 처리 오류: Expecting ',' delimiter: line 1 column 144 (char 143) Traceback (most recent call last): File "/Users/jominseo/HGZero/ai-python/app/services/eventhub_service.py", line 71, in on_event event_data = json.loads(raw_body) File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/__init__.py", line 346, in loads return _default_decoder.decode(s) ~~~~~~~~~~~~~~~~~~~~~~~^^^ File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/decoder.py", line 345, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/decoder.py", line 361, in raw_decode obj, end = self.scan_once(s, idx) ~~~~~~~~~~~~~~^^^^^^^^ json.decoder.JSONDecodeError: Expecting ',' delimiter: line 1 column 144 (char 143) 2025-10-29 17:17:09,279 - app.services.eventhub_service - INFO - 수신한 이벤트 원본 (처음 300자): {"eventId":"7436b96c-3a60-418b-848d-727770d7cfe9","eventType":"SegmentCreated","segmentId":"9483cf8a-e41e-49e9-b2c0-28519bba798e”,”recordingId":"test-meeting-001","meetingId":"test-meeting-001","text”:”오늘은 OFDM 기술 적용방안과 AICC 구축 협의에 대해 논의해보겠습니다.”,”speakerId":"UNKNOWN","speakerName":"참석자","timestamp": 2025-10-29 17:17:09,280 - app.services.eventhub_service - ERROR - 이벤트 처리 오류: Expecting ',' delimiter: line 1 column 144 (char 143) Traceback (most recent call last): File "/Users/jominseo/HGZero/ai-python/app/services/eventhub_service.py", line 71, in on_event event_data = json.loads(raw_body) File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/__init__.py", line 346, in loads return _default_decoder.decode(s) ~~~~~~~~~~~~~~~~~~~~~~~^^^ File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/decoder.py", line 345, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/decoder.py", line 361, in raw_decode obj, end = self.scan_once(s, idx) ~~~~~~~~~~~~~~^^^^^^^^ json.decoder.JSONDecodeError: Expecting ',' delimiter: line 1 column 144 (char 143) 2025-10-29 17:17:09,280 - app.services.eventhub_service - INFO - 수신한 이벤트 원본 (처음 300자): {"eventId":"7436b96c-3a60-418b-848d-727770d7cfd9","eventType":"SegmentCreated","segmentId":"9483cf8a-e41e-49e9-b2c0-28519bba798d","recordingId":"test-meeting-001","meetingId":"test-meeting-001","text":"신제품 개발 일정에 대해 논의하고 있습니다.","speakerId":"UNKNOWN","speakerName":"참석자","timestamp":[2025,10,29,10,25, 2025-10-29 17:17:09,280 - app.services.eventhub_service - INFO - STT 텍스트 수신 - meetingId: test-meeting-001, 텍스트 길이: 24, timestamp: 1761701136000 2025-10-29 17:17:09,318 - app.services.eventhub_service - INFO - ✅ Redis 저장 완료 - meetingId: test-meeting-001, timestamp: 1761701136000 2025-10-29 17:17:09,319 - app.services.eventhub_service - INFO - 수신한 이벤트 원본 (처음 300자): {"eventId":"7436b96c-3a60-418b-848d-727770d7cfd9","eventType":"SegmentCreated","segmentId":"9483cf8a-e41e-49e9-b2c0-28519bba798d","recordingId":"test-meeting-001","meetingId":"test-meeting-001","text":"오늘은 OFDM 기술 적용방안과 AICC 구축 협의에 대해 논의해보겠습니다.","speakerId":"UNKNOWN","speakerName":"참석자","timestamp": 2025-10-29 17:17:09,319 - app.services.eventhub_service - INFO - STT 텍스트 수신 - meetingId: test-meeting-001, 텍스트 길이: 42, timestamp: 1761701137000 2025-10-29 17:17:09,365 - app.services.eventhub_service - INFO - ✅ Redis 저장 완료 - meetingId: test-meeting-001, timestamp: 1761701137000 2025-10-29 17:17:09,366 - app.services.eventhub_service - INFO - 수신한 이벤트 원본 (처음 300자): {"eventId":"7436b96c-3a60-418b-848d-727770d7cfd9","eventType":"SegmentCreated","segmentId":"9483cf8a-e41e-49e9-b2c0-28519bba798d","recordingId":"test-meeting-001","meetingId":"test-meeting-001”,”sessionId”:”meeting-123”,“text":"오늘은 OFDM 기술 적용방안과 AICC 구축 협의에 대해 논의해보겠습니다.","speakerId":"UNKNOWN","speak 2025-10-29 17:17:09,366 - app.services.eventhub_service - ERROR - 이벤트 처리 오류: Expecting ',' delimiter: line 1 column 227 (char 226) Traceback (most recent call last): File "/Users/jominseo/HGZero/ai-python/app/services/eventhub_service.py", line 71, in on_event event_data = json.loads(raw_body) File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/__init__.py", line 346, in loads return _default_decoder.decode(s) ~~~~~~~~~~~~~~~~~~~~~~~^^^ File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/decoder.py", line 345, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/decoder.py", line 361, in raw_decode obj, end = self.scan_once(s, idx) ~~~~~~~~~~~~~~^^^^^^^^ json.decoder.JSONDecodeError: Expecting ',' delimiter: line 1 column 227 (char 226) 2025-10-29 17:17:09,367 - app.services.eventhub_service - INFO - 수신한 이벤트 원본 (처음 300자): {"eventId":"7436b96c-3a60-418b-848d-727770d7cfd9","eventType":"SegmentCreated","segmentId":"9483cf8a-e41e-49e9-b2c0-28519bba798d","recordingId":"test-meeting-001","meetingId":"test-meeting-001”,”sessionId”:”meeting-123”,“text":"오늘은 OFDM 기술 적용방안과 AICC 구축 협의에 대해 논의해보겠습니다.","speakerId":"UNKNOWN","speak 2025-10-29 17:17:09,367 - app.services.eventhub_service - ERROR - 이벤트 처리 오류: Expecting ',' delimiter: line 1 column 227 (char 226) Traceback (most recent call last): File "/Users/jominseo/HGZero/ai-python/app/services/eventhub_service.py", line 71, in on_event event_data = json.loads(raw_body) File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/__init__.py", line 346, in loads return _default_decoder.decode(s) ~~~~~~~~~~~~~~~~~~~~~~~^^^ File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/decoder.py", line 345, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/decoder.py", line 361, in raw_decode obj, end = self.scan_once(s, idx) ~~~~~~~~~~~~~~^^^^^^^^ json.decoder.JSONDecodeError: Expecting ',' delimiter: line 1 column 227 (char 226) 2025-10-29 17:17:42,753 - app.services.eventhub_service - INFO - 수신한 이벤트 원본 (처음 300자): {"eventId":"7436b96c-3a60-418b-848d-727770d7cfd9","eventType":"SegmentCreated","segmentId":"9483cf8a-e41e-49e9-b2c0-28519bba798d","recordingId":"test-meeting-001","meetingId":"test-meeting-001","text":"오늘은 OFDM 기술 적용방안과 AICC 구축 협의에 대해 논의해보겠습니다.","speakerId":"UNKNOWN","speakerName":"참석자","timestamp": 2025-10-29 17:17:42,754 - app.services.eventhub_service - INFO - STT 텍스트 수신 - meetingId: test-meeting-001, 텍스트 길이: 42, timestamp: 1761701137000 2025-10-29 17:17:42,777 - app.services.eventhub_service - INFO - ✅ Redis 저장 완료 - meetingId: test-meeting-001, timestamp: 1761701137000 2025-10-29 17:18:03,217 - app.api.v1.suggestions - INFO - SSE 스트림 시작 - meetingId: test-meeting-001 INFO: 127.0.0.1:54044 - "GET /api/ai/suggestions/meetings/test-meeting-001/stream HTTP/1.1" 200 OK 2025-10-29 17:18:03,483 - app.services.redis_service - INFO - Redis 연결 성공 2025-10-29 17:20:29,604 - app.services.eventhub_service - INFO - 수신한 이벤트 원본 (처음 300자): {"eventId":"7436b96c-3a60-418b-848d-727770d7cfd9","eventType":"SegmentCreated","segmentId":"9483cf8a-e41e-49e9-b2c0-28519bba798d","recordingId":"test-meeting-001","meetingId":"test-meeting-001”,”sessionId”:”meeting-123”,“text":"오늘은 OFDM 기술 적용방안과 AICC 구축 협의에 대해 논의해보겠습니다.","speakerId":"UNKNOWN","speak 2025-10-29 17:20:29,605 - app.services.eventhub_service - ERROR - 이벤트 처리 오류: Expecting ',' delimiter: line 1 column 227 (char 226) Traceback (most recent call last): File "/Users/jominseo/HGZero/ai-python/app/services/eventhub_service.py", line 71, in on_event event_data = json.loads(raw_body) File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/__init__.py", line 346, in loads return _default_decoder.decode(s) ~~~~~~~~~~~~~~~~~~~~~~~^^^ File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/decoder.py", line 345, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^ File "/opt/homebrew/Cellar/python@3.13/3.13.7/Frameworks/Python.framework/Versions/3.13/lib/python3.13/json/decoder.py", line 361, in raw_decode obj, end = self.scan_once(s, idx) ~~~~~~~~~~~~~~^^^^^^^^ json.decoder.JSONDecodeError: Expecting ',' delimiter: line 1 column 227 (char 226)