본문 바로가기
IT

n8n RSS 피드 nan 값 감지되면 슬랙 알림 안 가는 문제 해결하는 방법

by qwanjk 2025. 7. 27.
반응형

RSS 피드로 새 글을 모니터링하다가 'nan' 값이 들어오면 슬랙 알림이 제대로 가지 않는 경험이 있으신가요? 저도 이 문제로 며칠을 고생했는데, n8n 워크플로우에서 간단한 필터링만 추가하면 해결돼요.

 

보통 RSS 피드에서 제목이나 링크, 날짜 필드에 'nan'이 들어가면 전체 워크플로우가 멈추거나 알림이 누락되는 경우가 많아요. 특히 자동화로 돌려놓고 나중에 확인하면 중요한 알림을 놓친 걸 발견하게 되죠.

 

RSS 피드에 nan 값이 들어가면 왜 문제가 생길까요?

 

n8n이나 다른 자동화 도구들은 RSS 피드의 각 필드를 읽어서 처리하는데, 'nan'(Not a Number)이라는 값을 만나면 제대로 된 데이터로 인식하지 못해요.

 

예를 들어 RSS 피드의 제목 필드가 'nan'이면:

 

  • 새 글로 인식하지 못함
  • 슬랙 메시지 포맷이 깨짐
  • 워크플로우 전체가 에러로 중단

 

이런 상황이 벌어지면 RSS 피드는 계속 업데이트되는데 정작 알림은 가지 않는 거예요. 나중에 수동으로 확인하면 이미 놓친 정보가 한두 개가 아니죠.

 

실제로 pandas나 numpy 같은 데이터 처리 라이브러리에서도 nan 값은 특별히 처리해줘야 해요. dropna()로 제거하거나 fillna()로 대체하는 것처럼요.

 

반응형

 

n8n에서 nan 값 필터링하는 실전 방법

 

제가 실제로 사용하고 있는 n8n 워크플로우 구성을 공유할게요. 핵심은 RSS Feed Trigger 바로 다음에 Filter 노드를 추가하는 거예요.

 

1. RSS Feed Read Trigger 설정

  • 모니터링할 RSS 피드 URL 입력
  • 체크 주기 설정 (저는 5분마다)

 

2. Filter 노드 추가하기

  • RSS 트리거 다음에 Filter 노드 연결
  • 조건 추가(Add condition) 클릭
  • 필드별로 아래 조건 설정:
    • title is not equal 'nan'
    • link is not equal 'nan'
    • pubDate is not empty

 

여러 조건을 AND로 연결해서 모든 필드가 정상일 때만 통과하도록 설정해요.

 

3. 고급 필터링 (선택사항) 만약 'nan' 외에도 null, undefined 같은 값들도 걸러내고 싶다면 Code 노드를 사용해요:

// Code 노드 예시
items = items.filter(item => {
  const title = item.json.title;
  const link = item.json.link;
  
  return title !== 'nan' && 
         title !== null && 
         title !== undefined &&
         link !== 'nan' &&
         link !== null;
});

return items;

 

4. Slack 노드로 알림 보내기

  • 필터를 통과한 데이터만 슬랙으로 전송
  • 메시지 포맷 설정 (제목, 링크, 요약 등)

 

실무에서 놓치기 쉬운 체크포인트들

 

제가 몇 달 운영하면서 깨달은 추가 팁들이에요.

 

빈 문자열도 함께 체크하기
'nan'만 체크하면 안 돼요. 빈 문자열(''), null, undefined도 같이 걸러내야 해요. RSS 피드마다 오류 데이터 형태가 다르거든요.

 

Always Output 옵션 활용
Filter 노드에서 이 옵션을 켜두면 필터링 결과가 없을 때도 다음 노드로 넘어가요. 대신 "결과 없음" 알림을 보낼 수 있어서 워크플로우가 정상 작동하는지 확인하기 좋아요.

 

정규표현식으로 다양한 패턴 잡기
가끔 'NaN', 'NAN', 'n/a' 같은 변형도 나타나요. 이럴 때는 정규표현식을 써서 한 번에 처리하면 편해요.

 

슬랙 권한 체크는 필수
아무리 필터링을 잘해도 슬랙 봇 권한이 없으면 소용없어요. chat:write 권한이 있는지, 채널에 봇이 추가됐는지 꼭 확인하세요.

 

저는 이렇게 설정한 후로 6개월째 문제없이 RSS 알림을 받고 있어요. 처음엔 nan 값 때문에 하루에도 몇 번씩 알림이 끊겼는데, 지금은 새벽에도 안심하고 자동화에 맡겨둬요.

 

n8n 커뮤니티에서도 비슷한 문제를 겪는 분들이 많더라고요. 혹시 다른 자동화 도구를 쓰신다면 비슷한 방식으로 필터링 로직을 추가해보세요. Zapier나 Make(구 Integromat)에서도 조건부 필터 기능이 있거든요.

 

마지막으로, RSS 피드 제공자 측에서 데이터 품질을 개선하는 게 근본적인 해결책이지만, 우리가 컨트롤할 수 없는 부분이니 이렇게 방어적으로 코딩하는 게 현실적이에요.

 

 

2025.06.18 - [생산성] - Zapier 자동화 첫걸음 내 반복 업무를 없애는 방법

 

Zapier 자동화 첫걸음 내 반복 업무를 없애는 방법

Zapier는 프로그래밍 없이도 여러 앱을 연결해서 반복 업무를 자동으로 처리해주는 도구예요. Gmail에서 받은 메일을 자동으로 구글 시트에 저장하거나 설문조사 응답이 들어오면 바로 답장 메일

qwanjk.tistory.com

 

 

반응형