kazzle.config.ts. Một thành phần có thể có bao nhiêu trigger tùy ý.
Cấu trúc
processModechọn vòng đời — máy chủ chạy lâu dài hoặc chạy một lần cho mỗi trigger.triggers[]liệt kê các sự kiện sẽ kích hoạt thành phần này.
processMode
Triggers
Mỗi trigger có mộtname (duy nhất trong thành phần), một kind, và — tùy thuộc vào chế độ — một schedule và/hoặc path.
Chế độ persistent — HTTP vào máy chủ
Khi một trigger kích hoạt cho một thành phần persistent, Kazzle POST đến máy chủ của bạn tạipath được khai báo. Yêu cầu mang theo:
Đối với webhook triggers, phần thân yêu cầu gốc được chuyển tiếp dưới dạng phần thân POST. Đối với schedule triggers, phần thân trống.
Chế độ triggered — một lần cho mỗi trigger
Khi một trigger kích hoạt cho một thành phầntriggered, Kazzle tạo tập lệnh entry mới và chờ nó thoát. Không có path; tập lệnh tìm hiểu trigger nào kích hoạt từ các biến môi trường.
URL Webhook
triggerName phải khớp với một mục kind: 'webhook' trong triggers[] của thành phần đó. Các tên trigger không xác định trả về 404.
Độ phân giải lịch trình
Biểu thức cron là 5 trường (phút, giờ, ngày trong tháng, tháng, ngày trong tuần) và độ phân giải phút là mức tối thiểu. Các lịch trình dưới phút bị từ chối tại thời điểm xác thực manifest.Cách ghi lại các lần chạy
Mỗi lần kích hoạt trigger ghi một hàngprocess_runs với trigger_name, triggered_by, run_id và trạng thái thoát của lần chạy. Bạn có thể truy vấn những điều này từ mã của riêng bạn hoặc kiểm tra chúng trong chế độ xem chạy của ứng dụng.
Hết tín dụng
Một lần chạy không thành công được ghi lại và ghi nhật ký, nhưng lịch trình tiếp tục chạy theo nhịp độ bình thường — một lần chạy không ổn định không bao giờ vô hiệu hóa trigger. Điều duy nhất dừng một lần chạy là tín dụng: mỗi lần kích hoạt trigger được kiểm tra dựa trên số dư của không gian, và trong khi không gian hết tín dụng (hoặc không có thiết lập thanh toán) các lần chạy bị bỏ qua với402. Điều này tự khôi phục — lịch trình vẫn được vũ trang và lần kích hoạt tiếp theo sau khi bạn nạp tiền chạy bình thường, không cần tiếp tục thủ công.
Thêm tự động hóa sau
Một ứng dụng đơn giản có thể bắt đầu mà không có trigger và có được chúng sau — thêm bản tóm tắt hàng ngày, kết nối Stripe, chạy dọn dẹp. Vòng đời của thành phần (processMode) và triggers (triggers[]) độc lập, vì vậy bạn có thể thay đổi chúng mà không cần viết lại phần còn lại của ứng dụng.