Mỗi node đều có cài đặt "Retry On Fail" trong các tùy chọn của nó. Đối với các node AI gọi API bên ngoài (OpenAI, Anthropic, SerpAPI), hãy bật tùy chọn này:
Số lần thử lại tối đa: 3
Thời gian chờ giữa các lần thử lại: Lùi thời gian theo cấp số nhân (1s → 2s → 4s)
Thử lại khi: Mã trạng thái HTTP cụ thể (429 giới hạn tốc độ, 500 lỗi máy chủ, 503 không khả dụng)
Điều này xử lý lỗi phổ biến nhất: API bị quá tải tạm thời. Quy trình làm việc sẽ tạm dừng, thử lại và tiếp tục - không cần can thiệp thủ công.
Cấp độ node: Đầu ra lỗi
Từ n8n 2.0 trở đi, mỗi node đều có đầu ra lỗi. Nếu một node bị lỗi (ngay cả sau khi thử lại), đầu ra lỗi sẽ gửi mục bị lỗi đến một đường dẫn khác. Bạn có thể:
Chuyển hướng lỗi đến thông báo Slack: "Email classifier failed for message from {{$json.from}}"
Ghi nhật ký lỗi vào Google Sheet để xem xét sau
Gửi mục đến quy trình làm việc dự phòng
Điều này rất quan trọng đối với các quy trình làm việc AI. LLM đôi khi trả về kết quả không mong muốn, JSON bị lỗi hoặc hết thời gian chờ - việc bắt các lỗi này sẽ ngăn toàn bộ quy trình làm việc của bạn bị sập.
Cấp độ workflow: Error Workflow
n8n có tính năng Error Workflow toàn cục. Tạo một quy trình làm việc riêng biệt được kích hoạt bất cứ khi nào một workflow trong phiên bản của bạn bị lỗi. Nó nhận được thông tin chi tiết về lỗi, tên quy trình làm việc và ID thực thi.
Một quy trình xử lý lỗi điển hình sẽ gửi một tin nhắn Slack:
🚨 Quy trình "Phân loại email bằng AI" thất bại
Lỗi: API OpenAI trả về mã lỗi 429 (giới hạn số lần thực thi)
Mã thực thi: #48293
Thời gian: 2026-03-05 14:23:00
Thiết lập điều này trong Settings → Workflows → Error Workflow.
✅ Kiểm tra nhanh: Quy trình làm việc RAG của bạn bị lỗi do kho lưu trữ vector Supabase tạm thời không khả dụng. Bạn nên thiết lập xử lý lỗi nào?
Câu trả lời: Ba lớp. (1) Retry On Fail đối với node Supabase - với 3 lần thử lại và lùi thời gian theo cấp số nhân. (2) Một thông báo lỗi trên node Supabase chuyển hướng đến phản hồi dự phòng: "I'm having trouble accessing the knowledge base right now. Please try again in a moment" (Tôi đang gặp sự cố khi truy cập cơ sở tri thức ngay bây giờ. Vui lòng thử lại sau một lát). (3) Quy trình xử lý lỗi toàn cục gửi cảnh báo Slack để bạn biết kho lưu trữ vector đang gặp sự cố.
Chế độ hàng đợi: Xử lý nhiều người dùng đồng thời
Theo mặc định, n8n chạy các quy trình làm việc theo trình tự - mỗi lần thực hiện một quy trình. Người dùng thứ hai sẽ đợi cho đến khi người dùng đầu tiên hoàn thành. Đối với các quy trình làm việc AI mất 5 - 10 giây mỗi lần thực hiện, điều này tạo ra những điểm nghẽn gây khó chịu.
Chế độ hàng đợi khắc phục điều này bằng cách sử dụng Redis làm trung gian truyền tin:
Các trình kích hoạt quy trình công việc tạo ra "công việc" trong hàng đợi Redis
Các tiến trình xử lý sẽ nhận công việc và thực thi chúng đồng thời
Nhiều tiến trình xử lý có thể chạy trên cùng một máy hoặc trên nhiều máy chủ
Để bật chế độ hàng đợi (tự host):
# Trong các biến môi trường của bạn
EXECUTIONS_MODE=queue
QUEUE_BULL_REDIS_HOST=localhost
QUEUE_BULL_REDIS_PORT=6379
n8n Cloud tự động bật chế độ hàng đợi - không cần cấu hình.
Lưu ý quan trọng: Hãy nhớ từ bài học 5 rằng Simple Memory không hoạt động ở chế độ hàng đợi. Khi bạn chuyển sang chế độ hàng đợi, bất kỳ quy trình công việc nào sử dụng Simple Memory sẽ mất lịch sử hội thoại giữa các tin nhắn. Đây là lý do tại sao PostgreSQL hoặc Redis Memory là cần thiết cho chatbot sản xuất.
Quản lý thông tin xác thực
Hệ thống thông tin xác thực của n8n mã hóa các thông tin bí mật khi lưu trữ. Nhưng vẫn có những thực hành cần tuân theo:
Nên làm
Sử dụng các node thông tin xác thực của n8n cho mọi dịch vụ (OpenAI, Gmail, Slack, Supabase)
Xuất quy trình công việc sang Git - dữ liệu thông tin xác thực được tự động loại trừ
Xoay vòng API key định kỳ
Sử dụng tính năng External Secrets cho môi trường doanh nghiệp (AWS Secrets Manager, HashiCorp Vault)
Không nên làm
Hardcode API key trong các node Code hoặc biểu thức
Chia sẻ các bản xuất quy trình công việc có chứa thông tin bí mật trong những node Set
Sử dụng cùng một API key trên môi trường phát triển, thử nghiệm và sản xuất
Tách biệt môi trường: Đối với các triển khai nghiêm túc, hãy chạy những phiên bản n8n riêng biệt cho môi trường phát triển và sản xuất. Xuất quy trình làm việc từ môi trường phát triển dưới dạng JSON, nhập vào môi trường sản xuất và cấu hình thông tin xác thực sản xuất riêng biệt. Điều này giúp ngăn chặn việc rò rỉ thông tin xác thực thử nghiệm và việc sử dụng thông tin xác thực sản xuất trong các thử nghiệm.
✅ Kiểm tra nhanh: Một thành viên trong nhóm muốn chia sẻ một quy trình làm việc bao gồm thông tin xác thực OpenAI. Họ xuất quy trình làm việc dưới dạng JSON và gửi qua email. Điều này có an toàn không?
Câu trả lời: Có, đối với chính thông tin xác thực - n8n loại trừ dữ liệu thông tin xác thực khỏi những bản xuất theo thiết kế. Nhưng hãy kiểm tra kỹ xem không ai hardcode các key trong những node Code hoặc các trường node Set. Người nhận sẽ cần cấu hình thông tin xác thực OpenAI của riêng họ và kết nối nó với quy trình làm việc đã nhập.
Giám sát và ghi nhật ký
n8n cung cấp nhật ký thực thi theo mặc định - mỗi lần chạy quy trình làm việc đều được ghi lại với đầu vào, đầu ra và thời gian. Nhưng đối với các quy trình làm việc AI sản xuất, bạn cần nhiều hơn:
Những gì cần giám sát:
Số liệu
Tại sao điều đó lại quan trọng
Cách theo dõi
Thời gian thực thi
Việc gọi AI diễn ra chậm - hãy phát hiện khi nào chúng trở nên chậm hơn
Nhật ký thực thi n8n (tích hợp sẵn)
Tỷ lệ thành công
Nắm bắt được khi nào tỷ lệ lỗi tăng đột biến
Quy trình xử lý lỗi + bảng điều khiển
Sử dụng token
Kiểm soát chi phí LLM
Bảng điều khiển hoặc phần mềm trung gian của OpenAI
Sử dụng bộ nhớ
Lịch sử hội thoại dài tiêu tốn nhiều RAM
Giám sát máy chủ
Độ sâu hàng đợi
Phát hiện sự tích tụ hàng tồn đọng
Giám sát Redis
Thiết lập giám sát đơn giản:
Tạo Error Workflow (gửi cảnh báo đến Slack/email)
Thêm node "ghi nhật ký" ở cuối các quy trình quan trọng để ghi dữ liệu thực thi vào Google Sheets hoặc cơ sở dữ liệu
Kiểm tra danh sách thực thi n8n hàng ngày để tìm các lần chạy thất bại
Để giám sát nâng cao, n8n hỗ trợ xuất số liệu Prometheus và tích hợp Sentry.
Sự tham gia của con người
Một số quyết định của AI không nên được tự động hóa hoàn toàn. n8n hỗ trợ mô hình "gửi và chờ" để con người giám sát:
AI Agent phân loại email là "khẩn cấp - chuyển cho bộ phận pháp lý"
Thay vì tự động gửi cho bộ phận pháp lý, quy trình sẽ gửi một tin nhắn Slack: "AI muốn chuyển vấn đề này cho bộ phận pháp lý. Chấp thuận hay từ chối?"
Quy trình sẽ chờ người dùng nhấp vào "Chấp thuận" hoặc "Từ chối"
Dựa trên phản hồi, quy trình sẽ tiếp tục hoặc bị hủy bỏ
Sử dụng tính năng Send Message and Wait for Response (có sẵn trong Slack, Email và các node khác). Điều này đặc biệt quan trọng đối với các quyết định AI có tính rủi ro cao - phê duyệt chi phí, gửi thông báo bên ngoài hoặc chỉnh sửa dữ liệu.
Tổng hợp lại: Danh sách kiểm tra sản xuất
Trước khi kích hoạt bất kỳ quy trình làm việc AI nào cho người dùng thực:
Xử lý lỗi:
- [ ] Chức năng Retry on fail được bật cho tất cả các node API bên ngoài (3 lần thử lại, lùi thời gian theo cấp số nhân)
- [ ] Đầu ra lỗi được cấu hình trên các node AI với phản hồi dự phòng
- [ ] Quy trình xử lý lỗi toàn cầu được thiết lập với cảnh báo qua Slack/email
Hiệu suất:
- [ ] Chế độ hàng đợi được bật (tự host) hoặc được xác nhận (Cloud)
- [ ] Loại bộ nhớ là PostgreSQL hoặc Redis (KHÔNG phải Simple Memory)
- [ ] Window Buffer được cấu hình để giới hạn lịch sử hội thoại
Bảo mật:
- [ ] Tất cả thông tin xác thực được lưu trữ trong hệ thống thông tin xác thực của n8n
- [ ] Không có API key được hardcode trong các node Code hoặc biểu thức
- [ ] JSON quy trình làm việc được xem xét trước khi cam kết với Git
Giám sát:
- [ ] Nhật ký thực thi được lưu giữ để khắc phục sự cố
- [ ] Việc sử dụng token được theo dõi (kiểm tra bảng điều khiển nhà cung cấp LLM hàng tuần)
- [ ] Sự tham gia của con người trong các quyết định quan trọng
Những điểm chính cần ghi nhớ
Sử dụng ba lớp xử lý lỗi: Thử lại node, đầu ra lỗi và quy trình xử lý lỗi toàn cục
Chế độ hàng đợi (với Redis) cho phép thực thi đồng thời - cần thiết cho triển khai sản xuất đa người dùng
Không bao giờ hardcode thông tin đăng nhập - sử dụng hệ thống thông tin đăng nhập của n8n và xuất quy trình làm việc một cách an toàn sang Git
Simple Memory bị lỗi ở chế độ hàng đợi - luôn sử dụng PostgreSQL hoặc Redis Memory trong môi trường sản xuất
Giám sát việc sử dụng token - các vòng lặp của AI agent có thể tiêu thụ token nhanh hơn bạn nghĩ
Thêm sự tham gia của con người vào quy trình cho các quyết định quan trọng bằng cách sử dụng mô hình gửi và chờ
Câu 1:
Một nhà phát triển xuất JSON quy trình công việc để cam kết với Git. Họ nên kiểm tra rủi ro bảo mật nào?
GIẢI THÍCH:
n8n cố ý loại trừ dữ liệu thông tin xác thực khỏi việc xuất quy trình công việc - đó là thiết kế an toàn. Rủi ro thực sự là khi các nhà phát triển hardcode những API key trực tiếp trong các node Code, node HTTP Request hoặc trường biểu thức thay vì sử dụng hệ thống thông tin xác thực của n8n. Luôn sử dụng các node xác thực, không bao giờ hardcode các thông tin bí mật và xem lại những file JSON quy trình làm việc trước khi lưu lại.
Câu 2:
ạn có 5 quy trình làm việc AI đang chạy trên một phiên bản n8n duy nhất. Người dùng báo cáo rằng phản hồi chậm trong giờ cao điểm. Bạn nên thay đổi điều gì?
GIẢI THÍCH:
Theo mặc định, n8n chạy các tác vụ tuần tự (từng tác vụ một). Chế độ hàng đợi với Redis phân phối các tác vụ trên những tiến trình worker, cho phép xử lý đồng thời. Đây là cấu hình sản xuất được n8n khuyến nghị. Một phiên bản n8n duy nhất có thể xử lý khoảng 100 tác vụ đồng thời ở chế độ hàng đợi. Để xử lý nhiều hơn, hãy thêm các phiên bản worker bổ sung.
Câu 3:
Quy trình làm việc AI Agent của bạn bị lỗi khi API của OpenAI trả về lỗi giới hạn tốc độ. Cách tốt nhất để xử lý vấn đề này là gì?
GIẢI THÍCH:
Lỗi giới hạn tốc độ (HTTP 429) chỉ là tạm thời - API đang yêu cầu bạn giảm tốc độ, chứ không phải là có gì đó bị hỏng. Độ trễ tăng dần sẽ thử lại yêu cầu với độ trễ tăng dần, cho phép API có thời gian khôi phục. n8n có cài đặt thử lại tích hợp trên mỗi node: Kích hoạt 'Retry On Fail', đặt số lần thử lại tối đa là 3 và cấu hình độ trễ tăng dần. Việc chuyển đổi nhà cung cấp hoặc nâng cấp gói API có thể giúp ích về lâu dài nhưng không khắc phục được lỗi ngay lập tức.
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây: