← 학습 노트 목록으로
🔄 Week 7 · n8n Deep Dive

n8n 깊이 파고들기 — 무인 피자 공장으로 이해하는 워크플로우 자동화

📎 발표 자료 기반: 사내 발표 슬라이드 n8n-설명자료.pptx (7장) 내용을 토대로, 실제 운영 팁·UI 화면 흐름·예외 처리 패턴·n8n AI 활용법을 보강한 확장판이에요.


🍕 쉬운 비유: 무인 피자 공장

Week 5에서 우리는 "디지털 공장 조립 라인"이라는 큰 그림을 봤어요. 이번 주에는 그중에서도 n8n이라는 도구 하나를 깊게 들여다 봐요. 비유를 한 단계만 더 좁혀볼게요.

🏭 한밤중에도 피자가 나오는 공장

피자 가게 사장님이 매일 밤마다 직접 반죽을 치대고, 굽고, 토핑을 올리고, 박스에 담는다고 상상해 봐요. 며칠은 버틸 수 있어도, 한 달이 지나면 손목이 남아나질 않겠죠.

이 사장님이 어느 날 무인 공장 라인을 한 줄 깔았어요.

  • ① 반죽 기계 — 밀가루·물·이스트를 자동으로 섞고 발효까지 끝냄
  • ② 오븐 — 반죽이 도착하면 정해진 온도·시간으로 자동으로 구움
  • ③ 토핑 로봇 — 메뉴별로 다른 토핑을 정확히 올려줌
  • ④ 포장 기계 — 박스 접고, 피자 담고, 라벨 붙임

이제 사장님은 새벽에도 침대에 누워 있어요. 하는 일은 단 하나, "라인이 잘 돌아가는지 가끔 확인하고, 불량 피자가 없는지 점검하는 일"이죠.

🤖 n8n = "내 업무 라인을 똑같이 깔아주는 도구"

n8n이 하는 일이 바로 이거예요. 피자 대신 이메일·문서·뉴스·고객 응답 같은 데이터를 흘려보내고, 사람 손이 닿지 않아도 결과물이 구글 시트·Slack·Notion·메일함으로 알아서 떨어지게 만들어요.

  🥖 반죽 기계         🔥 오븐            🍅 토핑 로봇        📦 포장 기계
  (트리거)            (변환)             (AI 처리)          (저장·전송)
  ┌──────────┐       ┌──────────┐       ┌──────────┐       ┌──────────┐
  │ RSS에 새 │  ──→  │ HTML 정리·│  ──→  │ ChatGPT  │  ──→  │ 구글시트  │
  │ 뉴스 도착 │       │ 본문 추출 │       │ 가 3줄요약│       │ + 메일 발송│
  └──────────┘       └──────────┘       └──────────┘       └──────────┘

       🏭 한 번 깔아두면, 사장님(나)은 결과만 받아보면 끝
        

🍕 한 줄 비유: n8n = "내 업무용 무인 피자 공장". 재료(데이터)만 흘려보내면, 사람의 손이 닿지 않아도 결과물(자동 정리·요약·알림)이 24시간 만들어져요.


🔄 Week 5 복습 — Week 7은 어디에 있나?

Week 5에서는 Make.comn8n을 나란히 놓고 "어떤 자동화 도구가 있는지" 전체 지도를 봤어요. 이번 주는 그중 n8n 하나만 좀 더 깊게 들어가는 시간이에요. 사내 발표 자료를 기반으로, 실제 화면에서 어떻게 보이고 어디서 막히는지까지 짚어볼게요.

📍 Weeks 1~7 한 장 지도

주차 주제 이번 주와의 관계
Week 1AI Agentn8n 노드 안에 들어갈 "AI 직원"
Week 2RAGn8n + Vector DB로 RAG 파이프라인 구축 가능
Week 3APIn8n의 모든 노드는 본질적으로 API 호출
Week 4NotebookLMn8n으로 자료를 자동 수집해 NotebookLM에 넣어줄 수 있음
Week 5Make.com & n8n 개요오늘의 출발선 — 도구 비교까지 끝낸 상태
Week 6LLM 원리n8n의 LLM 노드에서 모델별 차이를 의식해서 고를 수 있음
Week 7 (오늘)n8n 깊이실제 화면·예외 처리·n8n AI까지 — 손에 잡히게

🎯 오늘의 위치: Week 5가 "지도"였다면, Week 7은 "한 도시(n8n)를 걸어서 돌아보는 투어"예요. 새 도구를 또 배우는 게 아니라, 같은 도구를 한 단계 더 깊게 만지는 시간이에요.


🛠️ n8n이란? 워크플로우 자동화 플랫폼

📎 슬라이드 1 원문: "n8n = 워크플로우 자동화 플랫폼. 워크플로우란 특정 결과물을 위해 일련의 작업들이 연결되어 진행되는 작업 흐름. 사람의 작업이 필요 없이 반죽 → 굽기 → 토핑 올리기 → 포장까지 자동화. 사람은 관리·감독하고 제품 점검만 하면 끝."

n8n은 독일 베를린에서 만들어진 오픈소스 워크플로우 자동화 도구예요. 이름은 "n-eight-n" (nodemation 의 줄임말)이라고 읽어요. Make.com과 가장 큰 차이는 "코드가 필요하면 코드까지 쓸 수 있다"는 점이에요.

🧩 워크플로우, 한 단어로 정리

워크플로우(Workflow)는 단순히 "작업들의 순서"가 아니라, "하나의 결과물을 만들기 위해 작업들이 줄로 연결된 흐름"이에요. 발표 자료의 피자 비유를 그대로 가져오면 이렇게 돼요.

  사람이 직접 하는 워크플로우 (Before)
  ┌─────────┐  ┌─────────┐  ┌─────────┐  ┌─────────┐
  │ 반죽    │→│  굽기   │→│  토핑   │→│  포장   │
  │ (사람)  │  │ (사람)  │  │ (사람)  │  │ (사람)  │
  └─────────┘  └─────────┘  └─────────┘  └─────────┘
       각 단계마다 사람이 손을 댐 — 멈추거나 늦으면 라인 전체가 멈춤

  n8n으로 깐 워크플로우 (After)
  ┌─────────┐  ┌─────────┐  ┌─────────┐  ┌─────────┐
  │ 반죽    │→│  굽기   │→│  토핑   │→│  포장   │
  │ (자동)  │  │ (자동)  │  │ (자동)  │  │ (자동)  │
  └─────────┘  └─────────┘  └─────────┘  └─────────┘
       사람은 라인 옆에서 점검만 — 라인은 24시간 알아서 돈다
        

🏗️ n8n의 5가지 구조 키워드

  • Node(노드) — 작업 한 단위. 각 노드는 "한 가지 일"만 잘함 (예: Gmail에서 메일 읽기, ChatGPT에게 요약 시키기, Google Sheets에 한 줄 추가).
  • Trigger(트리거) — 워크플로우를 시작하는 신호. 시간 기반(매일 8시), 이벤트 기반(새 이메일 도착), 수동(버튼 클릭) 세 종류가 있음.
  • Connection(연결선) — 노드와 노드 사이에 데이터가 흐르는 길. JSON 형태로 전달됨.
  • Execution(실행) — 워크플로우가 한 번 돌아간 결과 기록. 어떤 데이터가 어떤 노드를 거쳐 갔는지 모두 남아 디버깅이 쉬움.
  • Credential(인증 정보) — API 키·OAuth 토큰을 한 곳에 안전하게 저장. 여러 워크플로우에서 재사용 가능.

💡 핵심 비유 한 줄 더: 노드 = 공장의 한 기계 / 연결선 = 컨베이어 벨트 / 트리거 = 라인 시작 버튼 / Credential = 공장 출입증.


⚙️ 흐름 자동화 = 단일 기능이 아닌 "연결"

📎 슬라이드 2 원문: "n8n으로 가능한 것 = 단일 기능보다는 '흐름 자동화' 해주는 워크플로우. [검색 → 수집 → 분석 → 데이터 저장]을 각각 실행 ✕ → 하나의 흐름으로 완성 ⭕"

이 슬라이드가 사실상 발표의 핵심이에요. 사람들이 자동화 도구를 처음 만지면 "이건 그냥 Gmail 필터랑 비슷한 거 아냐?"라고 자주 오해해요. 결정적으로 다른 건 여러 단계를 하나의 흐름으로 묶는 능력이에요.

❌ 단일 기능들의 따로 노는 풍경

   🔍 검색          📥 수집         🧠 분석         💾 저장
  ┌────────┐      ┌────────┐      ┌────────┐      ┌────────┐
  │ 사람이 │      │ 사람이 │      │ 사람이 │      │ 사람이 │
  │ Google │      │ Word에  │      │ ChatGPT│      │ 시트에  │
  │ 검색   │      │ 복붙   │      │ 에 질문 │      │ 정리   │
  └────────┘      └────────┘      └────────┘      └────────┘
        ↑                ↑                ↑               ↑
   각 단계마다 사람이 끼어들어야 함 → 끊김의 연속
        

✅ n8n이 하나로 묶은 풍경

   🔍 검색  →  📥 수집  →  🧠 분석  →  💾 저장
  ┌──────────────────────────────────────────────┐
  │  HTTP   →  HTML    →  OpenAI   →  Google     │
  │ Request    Extract     Node        Sheets    │
  │  노드       노드        노드        노드       │
  └──────────────────────────────────────────────┘
                       ↑
       사람이 끼어들지 않음 — 데이터가 자동으로 흐름
        

🎯 관점 전환: n8n은 "새로운 기능"이 아니에요. 우리가 이미 손으로 하던 일들(검색·복붙·요약·저장)을 줄로 묶어주는 도구일 뿐이에요. 그래서 "이 작업을 사람이 어떻게 하지?"를 분해할 줄 알면 누구나 만들 수 있어요.


🎯 n8n으로 가능한 것 4가지

📎 슬라이드 3 원문: "① 데이터 자동 처리 — 엑셀/구글시트 자동 업데이트, CSV 정리. 예) 뉴스 데이터 자동 수집 → 구글시트에 매일 업데이트. ② API & 서비스 연결 — 여러 서비스 이어 붙이기, 다른 사이트 데이터 가져오기, 외부 시스템 연동. 예) 분석이 필요한 데이터를 GPT로 보냄 → GPT의 응답을 다시 구글 시트에 업데이트."

발표 자료에 나온 2가지 카테고리에, 실제 회사 업무에서 가장 자주 쓰이는 2가지를 더 추가해서 4가지로 정리했어요.

1️⃣ 데이터 자동 처리 — "표 만드는 일을 사람이 더 안 해도 됨"

  • 엑셀·구글 시트 자동 업데이트: 매일 / 매주 / 매시간 단위로 데이터 추가
  • CSV 정리 & 변환: 형식이 제각각인 파일들을 한 표준으로 가공
  • 중복 제거 / 정렬 / 필터링: 코드 한 줄 없이 Set·Filter·Sort 노드로 처리

📝 실제 예: 매일 아침 8시, 회사 메인 페이지의 뉴스 카테고리에 새 글이 올라왔는지 확인 → 새 글이 있으면 제목·날짜·링크를 구글 시트에 한 줄씩 추가. 한 달이 지나면 시트 한 장에 자동으로 만들어진 뉴스 아카이브가 쌓여요.

2️⃣ API & 서비스 연결 — "프로그램끼리 통화하는 일을 사람이 안 함"

  • 여러 SaaS 이어 붙이기: Slack ↔ Notion ↔ Google Calendar ↔ Gmail
  • 다른 사이트 데이터 긁어오기: 공개 API 또는 RSS·HTML 스크래핑
  • 외부 시스템과 연동: 사내 DB·ERP·CRM과의 양방향 연결

📝 실제 예: 회사 문서함에 PDF가 올라옴 → n8n이 텍스트 추출 → ChatGPT 노드가 "이 문서가 어떤 부서 자료인지" 분류 → 분류 결과를 다시 구글 시트에 기록 + 해당 부서 Slack 채널에 알림. 사람이 만진 적은 한 번도 없음.

3️⃣ AI 워크플로우 — "AI 호출도 라인 한가운데에 들어감"

  • LLM 노드: OpenAI, Anthropic, Gemini, Azure OpenAI, 로컬 Ollama까지 모두 지원
  • LangChain 스타일 에이전트 노드: Chat Memory + Tool Use + RAG가 기본 내장
  • Vector Store 노드: Pinecone, Qdrant, Supabase, PGVector 등 — Week 2의 RAG가 여기서 실제로 만들어짐

📝 실제 예: 고객 문의 이메일 도착 → 본문을 사내 매뉴얼 Vector DB에서 검색(RAG) → 검색 결과 + 원본 문의를 Claude 노드에 전달 → 초안 답변 생성 → 운영자 Slack에 검수 요청 + 답변 초안 첨부. 운영자는 승인 한 번만 누름.

4️⃣ 알림 & 모니터링 — "내가 보고 있어야 할 일을 라인이 대신 봐줌"

  • 가격·재고 모니터링: 특정 페이지가 바뀌면 Slack DM
  • 오류 감시: API 응답이 500이면 즉시 알림 + 자동 재시도
  • 일일 리포트: 매일 아침 어제 매출·VOC·핵심 지표를 자동 요약해서 메일

📝 실제 예: 매시 정각마다 사내 대시보드 API 호출 → 어제 대비 매출이 -20% 이상 떨어졌으면 슬랙 #alert 채널에 빨간 메시지 + 즉시 GPT에게 가능한 원인 3가지를 추정시켜 같이 보냄.

🧭 고르는 기준: "이 일을 이번 주에 두 번 이상 손으로 했다면, n8n으로 깔 가치가 있다"가 좋은 출발선이에요.


📰 실전 예시: RSS → 메일 + 구글 시트

📎 슬라이드 4 원문: "[RSS 데이터 수집 예시] '뉴스 RSS에서 요약만 메일로 받아보고, 구글 시트에 데일리로 저장해서 모아보고 싶어'. 기존: RSS 링크를 매일 직접 확인하고 뉴스 데이터가 있으면 구글 시트에 복사 붙여넣기… 매일 반복. n8n 사용: 매일 아침 8시에 워크플로우 실행 예약 → 구글 시트에서 데이터 확인만 하기."

발표에서 들었던 RSS 예시를 실제 n8n 노드 구성으로 풀어볼게요. 처음 만들 워크플로우로 가장 추천하는 시나리오 중 하나예요. 만드는 데 30분이면 충분해요.

난이도 ⭐⭐ · 노드 6개 · 만드는 시간 ≈ 30분 · 매일 자동 실행

🗞️ "매일 아침 8시, 어제 뉴스 요약을 메일과 시트로 받기"

🎯 목표 (Sentence 한 줄 사양)

매일 아침 8시에 관심 RSS 3~5개를 자동 확인 → 새 글이면 ChatGPT로 3줄 요약 → 요약본을 내 메일로 보내고, 구글 시트에도 같은 내용을 한 줄로 저장.

🧱 노드 구성

  ┌─────────────────────────────────────────────────────────────┐
  │                                                             │
  │   ⏰ Schedule          📡 RSS Read         🔍 Filter         │
  │   Trigger          →   (3~5개 피드)    →  (어제~오늘만)      │
  │   (매일 08:00)                                              │
  │                                                             │
  │        ↓                                                    │
  │                                                             │
  │   🧠 OpenAI       →    ✉️ Send Email     →   📊 Google      │
  │   (3줄 요약)            (나에게)              Sheets        │
  │                                              (한 줄 append) │
  │                                                             │
  └─────────────────────────────────────────────────────────────┘
          

📋 노드별 상세

  1. Schedule Trigger — Cron 표현식 0 8 * * * 또는 GUI로 "매일 08:00 KST" 설정.
  2. RSS Read (×N) — 관심 RSS 주소를 노드 N개로 나란히 배치. 또는 SplitInBatches 1개로 묶어서 반복 처리.
  3. IF (Filter)pubDate가 어제 00:00 이후인 항목만 통과시킴 (오래된 글이 매일 반복 들어오는 걸 막음).
  4. OpenAI Node — 시스템 프롬프트: "다음 뉴스 본문을 3문장으로 요약하라. 핵심 사실·수치만." / 입력: {{ $json.content }}.
  5. Send Email — Gmail/SMTP 노드. 제목: "오늘의 뉴스 요약 ({{ $today }})", 본문은 요약본들을 줄바꿈으로 이어 붙임.
  6. Google Sheets — Append Row 액션. 컬럼: 날짜·매체·제목·요약·원본 링크.

💡 운영하면서 자주 만나는 함정

  • RSS 피드가 중간에 끊김 → 다음 단계가 줄줄이 실패. 각 RSS 노드 뒤에 Error Trigger를 연결하거나, "Continue On Fail" 옵션을 켜두면 한 피드가 죽어도 라인은 살아 돌아감.
  • 같은 글이 매일 들어옴 → 시트가 중복으로 뚱뚱해짐. link를 키로 잡아 Sheets의 "Append or Update" 액션을 쓰거나, 별도 Lookup 노드로 중복 검사.
  • OpenAI가 가끔 토큰 한도 초과 → 본문이 너무 길 때. {{ $json.content.slice(0, 4000) }}처럼 잘라서 보내거나, Token Counter 노드로 사전 검사.

🚀 왜 이걸 첫 시나리오로 추천? RSS 예시는 n8n의 모든 핵심 개념(트리거·반복·조건·LLM·외부 서비스 저장)이 한 번에 모이는 미니 종합 선물 세트예요. 하나만 만들어보면 그 다음 시나리오는 "이거 비슷하게 만들면 되겠네"가 됩니다.


🤖 n8n AI — 워크플로우를 대신 그려주는 AI

📎 슬라이드 5 원문: "워크플로우 생성에 많은 시간을 쓰고 싶지 않다. 만들고 싶은 워크플로우가 머릿속에는 있지만 어떤 순서로 만들지 모르겠다. 구현하고 싶은 결과물이 있는데 어떤 node가 필요한지 모르겠다 → 워크플로우 생성을 도와주는 n8n AI. 내 워크플로우 상태를 같이 보면서 자동으로 node 추가 및 플로우 순서까지 알아서 세팅."

n8n AI는 오른쪽 사이드 패널의 채팅창으로 동작해요. 평범한 ChatGPT와 결정적으로 다른 점은, AI가 지금 내 캔버스의 노드 구조를 직접 보면서 답한다는 점이에요. 그래서 "여기 다음에 어떤 노드가 들어가야 해?"라고 물으면 현재 흐름의 맥락에 맞춰 추천해 줘요.

🧠 어떤 상황에서 진짜 도움이 되나

상황 n8n AI에게 물어볼 말 기대할 수 있는 답
처음부터 만들 때 "매일 아침 RSS 3개를 읽어 GPT로 요약해서 슬랙에 보내고 싶어" 전체 노드 구조를 한 번에 캔버스에 자동 배치
다음 노드가 막힐 때 "여기 OpenAI 노드 다음에 응답을 표 형식으로 정리하려면?" Set·Code·Function 노드 + 필요한 JS 스니펫까지 제안
오류 메시지가 났을 때 (에러 메시지 붙여 넣기) "이게 왜 뜨지?" 가장 흔한 원인 + 어느 노드 어떤 옵션을 바꾸면 되는지 안내
데이터 변환이 헷갈릴 때 "이 JSON에서 author 이름만 뽑고 싶어" Set 노드 + {{ $json.author.name }} 표현식 즉시 생성

⚠️ n8n AI 쓸 때 주의할 점

  • 로컬 PC 설치 버전(Self-hosted)에서는 기본 비활성화 — 슬라이드 6에 나온 대로, n8n AI는 클라우드 버전 한정이에요 (자체호스팅에서 켜려면 별도 API 키 연결 필요).
  • 크레딧이 한정적 — 무료 체험 기간에는 질문 1회당 1크레딧씩 차감, 총 20크레딧만 제공돼요. 잘 모르는 부분에 집중해서 쓰는 게 좋아요.
  • AI 답을 그대로 믿지 말 것 — 노드 이름이나 옵션을 실제 노드 패널에서 다시 확인해야 해요. AI가 옛날 버전의 옵션을 말해주는 경우가 가끔 있어요.
  • 민감 데이터를 프롬프트에 넣지 말 것 — n8n AI도 결국 OpenAI/Anthropic API로 흐르므로, API 키·고객 데이터를 채팅에 직접 붙여 넣으면 안 돼요.

🎯 n8n AI를 잘 쓰는 한 줄: "내가 만들고 싶은 결과물을 비기술적 한 문장으로 설명하고, AI가 그려준 초안을 한 노드씩 직접 검증하면서 채워 나가기". 처음 골격은 AI, 디테일은 내가 — 이 분업이 가장 효율적이에요.


🚀 n8n 가입 & 시작하기

📎 슬라이드 6 원문: "https://n8n.io/ 접속 후 가입 → n8n 클라우드 사용 가능. (n8n 클라우드: 따로 로컬 PC에 별도 설치 없이 웹에서 사용 가능, n8n AI 사용 가능 / 로컬 PC에선 AI 사용 ✕). 가입 후 14일간 무료 체험 기간. n8n AI 사용 크레딧 20개 제공 (질문 1번당 1개씩 차감)."

n8n을 시작하는 방법은 두 갈래예요. 어디서 시작하느냐에 따라 가능한 기능과 비용이 달라져요.

☁️ 방법 A: n8n Cloud (가장 쉬움, 추천)

  1. n8n.io 접속 → 우측 상단 "Get started" 클릭.
  2. 이메일·구글 계정으로 가입.
  3. 워크스페이스 이름을 정하면 나만의 URL 한 개가 생성됨 (예: https://myteam.app.n8n.cloud).
  4. 가입 즉시 14일 무료 체험 시작 — 모든 기능 + n8n AI 20크레딧 포함.
  5. 체험 종료 시 자동 결제되지 않아요. 카드 등록 자체가 가입 시 필수가 아님(2026년 5월 현재).

처음이라면 무조건 클라우드부터. 자체호스팅은 자유롭지만 Docker·서버 지식이 필요해요. 클라우드에서 충분히 만져본 다음, "데이터 주권이 정말 필요하다"가 되면 그때 자체호스팅으로 옮기는 게 가장 안전해요.

💻 방법 B: 자체호스팅 (Self-hosted)

로컬 PC나 사내 서버에 직접 깔아서 쓰는 방법이에요. Docker 기준 명령 한 줄이면 시작돼요.

  # Docker 한 줄로 시작
  docker run -it --rm \
    --name n8n \
    -p 5678:5678 \
    -v n8n_data:/home/node/.n8n \
    docker.n8n.io/n8nio/n8n

  # 그 다음 브라우저에서
  http://localhost:5678
        

📊 클라우드 vs 자체호스팅 — 결정에 필요한 차이

항목 n8n Cloud Self-hosted
설치 없음 (가입 5분) Docker 필요 (대략 20~60분)
n8n AI ✅ 기본 제공 (크레딧 차감) ❌ 기본 비활성 (별도 연결 필요)
비용 14일 무료 → 월 €20부터 서버비만 (커뮤니티 에디션 무료)
데이터 위치 n8n EU 서버 내 서버 (완전 통제)
업데이트 자동 수동 (Docker 이미지 pull)
처음 시작에 추천 ⭐⭐⭐⭐⭐ ⭐⭐

⚠️ n8n AI 크레딧 절약 팁: 20크레딧이 생각보다 빨리 사라져요. 정말 막힐 때만 쓰고, "이 노드 이름이 뭐였더라" 같은 단순 검색은 n8n 공식 문서(docs.n8n.io)에서 직접 찾는 게 훨씬 빨라요.


💡 세팅 Tip — 실수 줄이는 4가지 + α

📎 슬라이드 7 원문: "① 만들고자 하는 결과물을 단계적으로 구성해보기. ② 단계별로 충분히 테스트 하기 (중간 단계 오류 시 이후 단계도 전부 오류). ③ 예외처리 / 오류 방지 Node 추가하기 (데이터가 빈 값일 때, 여러 개로 반환될 때). ④ 실행 중 발생한 오류는 GPT / Claude에게 물어봐도 Good."

발표 자료 마지막 슬라이드의 4가지 팁은 실전에서 가장 자주 막히는 지점들을 정확하게 짚었어요. 각각에 실제 운영 경험에서 나온 보강을 더 붙였어요.

1️⃣ 결과물을 "단계적으로" 구성하기

큰 워크플로우를 한 번에 그리려고 하면 중간에 길을 잃어요. 시작은 항상 "트리거 → 1개 노드 → 1개 출력"으로 최소 동작을 먼저 확인하고, 그 다음에 한 노드씩 추가해 나가는 게 정석이에요.

  • v0.1 — 트리거 + Set 노드 1개로 "워크플로우가 켜지긴 한다" 확인
  • v0.2 — 실제 외부 API/RSS 한 곳만 연결해서 데이터 들어오는지 확인
  • v0.3 — 변환 노드 추가 (Filter·Set·Code)
  • v0.4 — LLM 노드 붙이기
  • v0.5 — 저장·알림 노드까지

이렇게 5단계로 쪼개면 어느 버전에서 망가져도 한 단계만 되돌리면 돼요.

2️⃣ 단계별로 "충분히" 테스트하기

n8n의 강력한 기능 중 하나가 "Execute Node" — 워크플로우 전체를 돌리지 않고 한 노드만 실행해서 결과를 볼 수 있어요. 노드 아이콘 위에 마우스를 올리면 보이는 ▶️ 버튼이에요.

  • 한 노드를 만들면 그 즉시 ▶️로 실행해서 출력 JSON을 확인해보기.
  • 예상한 키(title, pubDate...)가 정말 그 이름으로 들어오는지 확인. 종종 Title(대문자) 같은 작은 차이로 다음 노드가 줄줄이 깨져요.
  • 실행 결과는 좌측 "Executions" 탭에 자동으로 기록 — 며칠 전에 왜 실패했는지도 그대로 보임.

3️⃣ 예외처리 / 오류 방지 Node 추가하기

실전에서 워크플로우를 무너뜨리는 가장 흔한 두 가지 시나리오 ↓

케이스 A: 데이터가 빈 값(empty)일 때

   ❌ 위험한 흐름
   RSS Read ──→ OpenAI (요약)
                  ↑
       오늘 RSS에 새 글이 0개면? → 빈 입력 → OpenAI 에러 → 워크플로우 중단

   ✅ 안전한 흐름
   RSS Read ──→ IF (items.length > 0?) ──→ OpenAI
                       │
                       └─ NO ──→ Stop / 그냥 종료
        

케이스 B: 데이터가 여러 개 반환될 때

   ❌ 위험한 흐름
   API 조회 ──→ Set (item[0]만 사용)
                       ↑
        결과가 0개일 수도, 100개일 수도 있는데 [0]만 쓰면 정보 손실/에러

   ✅ 안전한 흐름
   API 조회 ──→ SplitInBatches ──→ 각 항목별 처리 ──→ Merge
        
  • IF 노드: 조건 분기 — 데이터가 비었거나 형식이 다를 때 다른 길로 보내기
  • Error Trigger 워크플로우: 별도의 워크플로우를 만들어서, 어느 워크플로우든 실패하면 "Slack DM + 에러 로그를 시트에 기록" 같은 공통 후처리를 자동으로 돌려줌
  • 각 노드의 "Settings" 탭 → Continue On Fail: 한 노드가 죽어도 다음 노드로 진행 (저장은 실패해도 알림은 가게 만들고 싶을 때 유용)
  • Retry On Fail: 일시적인 네트워크 오류처럼, 잠깐 후에 다시 시도하면 성공할 만한 노드에 켜두기 (재시도 횟수·간격 설정 가능)

4️⃣ 오류는 GPT / Claude에게 물어봐도 Good

발표 자료가 짚어준 그대로예요. n8n 오류 메시지는 종종 NodeApiError: 400 Bad Request — invalid value for property X 같이 추상적이라, 처음에는 무슨 말인지 모르는 게 정상이에요.

아래 형식으로 LLM에게 붙여 넣으면 가장 효과적이에요.

  [상황]
  n8n에서 OpenAI 노드를 쓰는데 다음 에러가 떴어.

  [에러 메시지]
  (여기에 에러창의 텍스트 전체를 복사)

  [노드 구성]
  - 직전 노드: HTTP Request (RSS 본문 가져옴)
  - 현재 노드: OpenAI Chat Model
  - 프롬프트: "다음 본문을 3문장으로 요약하라: {{ $json.content }}"

  [기대했던 결과]
  요약된 텍스트가 출력

  [실제 결과]
  위 에러로 노드 빨강 표시
        

이런 형식으로 물으면 LLM이 어느 노드의 어떤 옵션을 바꿔야 하는지까지 짚어줘요. 그냥 "에러 났어요"보다 5배는 정확한 답이 나옵니다.

➕ α: 발표에 없던, 실전에서 진짜 필요한 5가지

  1. 워크플로우 이름 규칙 정하기[부서][작업][주기] 설명 형태로 통일 (예: [CX][고객문의분류][realtime] Zendesk → GPT). 30개 넘어가면 이름 없이는 못 찾아요.
  2. 버전 관리 — 큰 수정 전에는 "Duplicate"로 복사본을 만들고 v2를 붙여서 실험. 망가지면 원본을 다시 활성화.
  3. 실행 로그 보관 기간 — 기본값이 무한이라 디스크가 빨리 참. Settings에서 7~14일로 줄이면 충분.
  4. Credential은 절대 워크플로우에 평문으로 박지 말 것 — 좌측 "Credentials" 메뉴에서 따로 등록하고, 노드에서는 드롭다운으로 선택. 팀에 워크플로우 공유할 때 키가 새지 않아요.
  5. Sub-workflow로 쪼개기 — 같은 처리 로직(예: "이메일 보내기")을 여러 워크플로우가 공유한다면, Sub-workflow 노드로 분리. 한 곳만 고치면 전부 반영됨.

⚖️ n8n vs Make.com 빠른 비교 (Week 5 심화)

Week 5에서 다뤘던 비교를 "오늘 깊게 본 n8n 관점에서" 다시 한 번 정리해요. 같은 비교지만 강조점이 달라요.

기준 n8n Make.com
철학 오픈소스 · 코드도 쓸 수 있는 자유 완전 GUI · 비개발자 최적화
AI/RAG 노드 LangChain 노드 기본 내장, Vector DB 다수 지원 LLM 모듈 있음, RAG는 직접 조립 필요
자체호스팅 ✅ Docker 한 줄 ❌ 클라우드 전용
n8n AI 같은 워크플로우 빌더 AI ✅ 클라우드 한정 제공 템플릿 갤러리 위주
요금 모델 워크플로우 수 / 실행 횟수 기준 Operation 횟수 기준 (모듈 1번 = 1)
코드 노드 JavaScript · Python · Function 노드 강력 제한적 (Iterator / Aggregator로 우회)

🧭 오늘의 결론 한 줄 더: "AI·RAG·LLM이 워크플로우의 중심이라면 n8n. SaaS 연동만 깔끔히 묶고 싶다면 Make." 이번 주 우리가 깊이 본 도구가 n8n인 이유는 — AX팀이 결국 다루는 일은 AI를 중간에 끼우는 자동화가 많기 때문이에요.


❓ FAQ

Q1. n8n 무료로 끝까지 쓸 수 있나요?

자체호스팅 커뮤니티 에디션은 무료예요 (영구). 클라우드는 14일 무료 + 그 뒤로 유료 플랜이에요. 단, 자체호스팅은 서버를 직접 관리해야 하므로 시간 비용을 따져보세요.

Q2. n8n AI가 만들어준 워크플로우, 그대로 써도 되나요?

그대로 쓰지 마세요. AI는 큰 흐름은 정확하지만 세부 옵션(필드 이름·인증 방식·페이지네이션)은 실제 API와 다를 때가 있어요. 한 노드씩 ▶️로 직접 실행해서 출력이 기대대로인지 확인이 필수.

Q3. 자체호스팅하면 n8n AI를 영영 못 쓰나요?

완전히 못 쓰는 건 아니에요. 본인의 OpenAI API 키를 환경변수로 연결하면 비슷한 기능을 켤 수 있어요. 다만 클라우드 버전만큼 매끄럽지는 않아요.

Q4. 워크플로우가 너무 많아지면 관리가 어렵지 않나요?

맞아요. 그래서 이름 규칙태그(Tag)가 중요해요. n8n은 워크플로우에 태그를 여러 개 붙일 수 있어요(예: cx, daily, llm). 30개가 넘어가는 시점부터는 워크플로우 목록을 Notion이나 시트로 별도 정리하는 걸 추천해요.

Q5. 회사 데이터를 n8n 클라우드에 보내는 게 보안상 괜찮나요?

⚠️ 경우에 따라 다름. n8n 클라우드는 EU 서버에서 동작하고 SOC2 Type II 인증을 받았어요. 하지만 고객 개인정보·계약서·연구 원자료처럼 절대 외부로 나가면 안 되는 데이터를 다룬다면, 자체호스팅이 정답이에요. Week 5의 보안 체크리스트를 다시 한 번 보세요.

Q6. 실수로 워크플로우를 망가뜨렸어요. 되돌릴 수 있나요?

Workflow History 기능이 있어요 (좌측 메뉴 → 워크플로우 클릭 → 우측 상단 시계 아이콘). 최근 저장된 버전들로 원클릭 롤백 가능. 큰 수정 전에는 항상 먼저 저장해서 복원 지점을 만들어 두세요.


🎓 핵심 요약

이번 주를 한 장으로 정리하면 ↓

  • n8n = 무인 피자 공장 — 한 번 라인(워크플로우)을 깔아두면 24시간 알아서 돌아가는 자동화 도구.
  • 핵심은 "단일 기능"이 아니라 "흐름의 연결" — 검색·수집·분석·저장을 따로따로가 아니라 하나의 줄로 묶는 게 자동화의 본질.
  • 4가지 활용 영역 — ① 데이터 자동 처리 ② API/서비스 연결 ③ AI 워크플로우(RAG·Agent) ④ 알림·모니터링.
  • RSS → 메일 + 시트 예제첫 시나리오로 가장 적합 — 핵심 개념이 한 번에 다 모임.
  • n8n AI는 막힐 때 큰 도움이지만, 클라우드 한정 / 14일 20크레딧 / 답을 그대로 믿지 않기가 3대 주의사항.
  • 세팅의 4계명 — ① 단계적으로 만들기 ② 노드별 즉시 테스트 ③ 예외처리 노드 추가 ④ 막히면 GPT/Claude에게 형식 갖춰 물어보기.
  • Make vs n8n — AI/RAG 중심이면 n8n, SaaS 단순 연동이면 Make. AX팀 업무는 대체로 n8n 쪽이 잘 맞음.

🍕 한 줄 마무리: n8n은 "내 업무용 무인 피자 공장을 직접 깔 수 있는 도구"예요. 첫 라인은 30분이면 깔 수 있어요. 이번 주말 안에 RSS 예제 하나만 따라 만들어 보세요 — 그 한 번이 자동화 감각의 시작점이에요. 🏭⚙️🚀

🍕 수고하셨습니다!
이번 주말, 내 첫 무인 라인을 한 줄 깔러 가볼까요?