9월 6일 18기 CTO 오프모임에서 나눈 의미있는 이야기를 휘발되기 전에 몇 개 적어 둡니다.
모임 참가 전에 n8n 운영에 대한 몇 가지 질문 사항이 있어서 질문을 했습니다.
개발자 프로젝트의 단계를 보여주는 다이어그램
❓Q1 : 코드로 개발할 때는 DEV(개발환경), Staging (Product 환경과 같지만 Product로 반영하기 전의 테스트 환경), Product (실제 real 서비스)환경으로 구분되지만, Nocode Make나 n8n으로 개발, 반영할 때는 이런 환경을 구성하기가 쉽지 않다. n8n을 실제로 서비스할 때는 어떠한가?
✅️ A: 실제 GPTers에서 n8n을 사용하여 서비스 할 때도 개발환경은 따로 있지 않고, 혹여라도 실수할 사항을 대비하여, 문자 발송 같은 경우 5분의 시간지연을 두고, 관리자가 중지하지 않으면 발송되도록 중간에 안전장치를 두고 있다.
오류 처리기 - 한국
❓Q2. n8n으로 작업할 때 제일 먼저 에러 처리 로직 먼저 하신다 하셨는데, 그 방법 다시 안내해 주세요.
✅️ A:
1. Error Handeler workflow를 정의 한다.
에러가 났을 때 어떻게 할지를 처리하는 workflow를 만든다.
에러 처리 방법은 DB에 저장하는 방법, 메일이나, 텔레그램, slack 등으로 모니터링 할 수 있는 방법으로 알림 등을 처리할 수 있다.
사람의 이미지와 버튼이있는 웹 페이지의 스크린 샷
이름은 편하게 정하시되, 에러 처리 로직이라는 걸 명시적으로.
시작 노드는 Error Trigger로 시작해야 error가 발생했을 때 받을 수 있다.
많은 정보를 받을 수 있다. 에러가 발생한 서비스 구분이나 명칭, 에러 메세지 등등
2. workflow 작업시에 설정에서 Error Workflow 설정
버튼이있는 페이지의 스크린 샷
다른 workflow 작업을 할 때 save한 후 오른쪽 상단 점3개 누르고, Settings 클릭하면 아래의 화면이 보이는데, 여기에서 Error Workflow를 선택할 때 1번에서 만든 Error Handeller 를 선택해주면 설정 끝~!
WordPress 설정 페이지의 스크린 샷
여러 SUB 노드들이 연결되었을 경우에도 각 노드마다 에러 발생을 보내는 것이 아니라 가장 마지막 노드에 대해서 Error를 보낸다고 함. (이건 좀 사용해 봐야 장점을 분명히 알 수 있을 듯 함)
N8 사용자 정의 노드