🧩 BE

네이버 로그인 issue

Assigned To
Date
2026/02/12
Status
Done
Type
Issue
Infra

Issue Point

실제 네이버 배치 기사와 대시보드 기사가 동기화 되지 않고 있는 문제 발생.
파이프라인 확인
get-naver-articles 확인 결과, dynamo에서 쿠키를 못받아오고 있었음.
[ERROR] KeyError: 'Item' Traceback (most recent call last): File "/var/task/handler.py", line 74, in lambda_handler return asyncio.run(async_lambda_handler(event, context)) File "/var/lang/lib/python3.11/asyncio/runners.py", line 190, in run return runner.run(main) File "/var/lang/lib/python3.11/asyncio/runners.py", line 118, in run return self._loop.run_until_complete(task) File "/var/lang/lib/python3.11/asyncio/base_events.py", line 654, in run_until_complete return future.result() File "/var/task/handler.py", line 14, in async_lambda_handler http = HttpClient.for_naver() File "/var/lang/lib/python3.11/site-packages/external/http_client.py", line 63, in for_naver cookies = DynamoDBClient().get_cached_naver_cookies() File "/var/lang/lib/python3.11/site-packages/common/aws/dynamodb/client.py", line 43, in get_cached_naver_cookies return response['Item'].get('cookies')
Shell
복사
get-naver-cookie 확인 결과, 로그인 실패 중
{ "level": "WARNING", "location": "login:461", "message": "네이버 로그인 실패: 로그인 페이지로 리다이렉트됨", "timestamp": "2026-02-12 09:00:28,359+0900", "service": "service_undefined", "xray_trace_id": "1-698d1819-273cacf4052809cc283145c3" } { "level": "ERROR", "location": "perform_naver_login:487", "message": "네이버 로그인 실패", "timestamp": "2026-02-12 09:00:28,359+0900", "service": "service_undefined", "xray_trace_id": "1-698d1819-273cacf4052809cc283145c3" } { "level": "ERROR", "location": "perform_naver_login:508", "message": "네이버 로그인 프로세스 실패: 네이버 로그인 실패", "timestamp": "2026-02-12 09:00:28,359+0900", "service": "service_undefined", "xray_trace_id": "1-698d1819-273cacf4052809cc283145c3" } { "level": "ERROR", "location": "execute_naver_login_cron:534", "message": "크론 작업 실패: 네이버 로그인 실패", "timestamp": "2026-02-12 09:00:28,359+0900", "service": "service_undefined", "xray_trace_id": "1-698d1819-273cacf4052809cc283145c3" } { "level": "ERROR", "location": "lambda_handler:566", "message": "Lambda 핸들러 실패: 네이버 로그인 실패", "timestamp": "2026-02-12 09:00:28,359+0900", "service": "service_undefined", "xray_trace_id": "1-698d1819-273cacf4052809cc283145c3" } { "level": "ERROR", "location": "lambda_handler:577", "message": "에러 응답 반환: {'statusCode': 500, 'body': '{\"success\":false,\"error\":\"네이버 로그인 실패\",\"timestamp\":\"2026-02-12T09:00:28.359745\"}'}", "timestamp": "2026-02-12 09:00:28,359+0900", "service": "service_undefined", "xray_trace_id": "1-698d1819-273cacf4052809cc283145c3" }
Shell
복사
kakao cookie도 확인해봤는데 이 부분은 잘 돌아감.
→ 네이버 내부에서 쿠키 받아오는 방식 바뀌었거나, 일시적인 서버 문제로 쿠키 수집이 안됐거나

Detail

예상 문제 시나리오

naver/handler.py
# 프록시 설정 proxies = { 'http': 'http://52.79.240.246:3028', 'https': 'http://52.79.240.246:3028' } logger.info(f"프록시 설정: {proxies['http']}")
Python
복사
현재 52.79.240.246 IP 프록시 서버로 계속해서 네이버 접근 시도중
→ 네이버에서 계속 같은 IP로 접속하는거 봇으로 감지해서 CAPCHA 띄움
→ 그럼 프록시 없이 접속해보면? → 성공은 하는데, 기기 인증 관련 로직 뜸(이 부분은 상관 X)
결론 : 네이버에서 proxy ip 너무 자주 로그인하니까 차단먹이고 2차 인증 걸어버림

Solution

EC2 인스턴스에서 EIP 새로 할당해서 IP값 바꿔서 재로그인 시도.
비용 절감을 위해 proxy 인스턴스만 중지 했다가 다시 시작
재할당된 proxy2 인스턴스의 public ip : 43.201.66.94
코드 수정 내역
external/external/http_client.py:20
lambda/login/naver/handler.py:158-159
→ 둘 다 하드코딩 되어있고, 그대로 github 올라감. 나중에 환경변수로 전환하는 방식으로 변경할 필요성이 있다고 생각됨.
기존 로그
변경 로그

추가 이슈

proxy ip를 바꾸고 github actions에서 변경 코드 트리거로 전체 람다 배포 실행
collect_realtime_main_articles도 http_client로 proxy를 사용하고 있는데 변경 코드가 없어서 함께 트리거 되지 않는 바람에 기사 수집 관련 문제 발생. 해당 부분 수동 트리거.