Tôi đã cố gắng triển khai một Lambda trong Serverless để chạy trên một lịch biểu Cron gọi nó mỗi giờ. Khi nó được gọi, tôi muốn sự kiện bên trong Lambda được điền bởi đầu vào JSON của riêng tôi thay vì thông tin từ sự kiện Cron là đầu vào mặc định khi nó được triển khai.Làm thế nào để chuyển dữ liệu đầu vào json cho Cron được lập lịch Cron được triển khai trong Serverless khi sử dụng sự kiện?
Bên trong bảng điều khiển AWS, tôi có thể tự chuyển sang trình kích hoạt Cron cho Lambda và thay đổi đầu vào từ "Sự kiện được khớp" thành "Độ dài (văn bản JSON)" để nhận kết quả mà tôi muốn. Vì Serverless tạo ra quy tắc này trong khi triển khai Lambda, tôi cảm thấy có một số cách để thay đổi đầu vào thông qua một cấu hình trong tệp serverless.yml. Tôi đã không thể tìm thấy bất cứ điều gì trong khi tìm kiếm thông qua các tài liệu cho Serverless, vì vậy bây giờ tôi tự hỏi nếu điều này là có thể thông qua Serverless ở trạng thái hiện tại của nó, và nếu như vậy làm thế nào để đi về nó.
Mọi lời khuyên sẽ được đánh giá cao.
Chỉnh sửa: Có bản cập nhật cần thêm chức năng này, tuy nhiên tôi vẫn chưa thể triển khai với lịch biểu bằng JSON sử dụng Serverless 1.3.0 (và cũng đã được thử nghiệm với 1.2.0). Một số ví dụ về các serverless.yml tôi sử dụng là dưới đây:
functions:
test:
handler: test.test
description: "test serverless Lambda"
memorySize: 128
timeout: 300
events:
- schedule:
rate: rate(10 minutes)
input:
key: value
- schedule:
rate: rate(10 minutes)
input: '{"key": "value"}'
- schedule:
rate: rate(10 minutes)
input:
key: 'value'
ai có thể bình luận về trạng thái của tính năng này trong serverless như của 1.3.0, và có hoặc không serverless.yml của tôi ở trên có vẻ tốt đẹp ?
Chỉnh sửa 2: Đăng các serverless.yml làm việc
functions:
test:
handler: test.test
description: "test serverless Lambda"
memorySize: 128
timeout: 300
events:
- schedule:
rate: rate(10 minutes)
enabled: true
input:
key: value
- schedule:
rate: rate(10 minutes)
input: '{"key": "value"}'
enabled: true
- schedule:
rate: rate(10 minutes)
input:
key: 'value'
enabled: true
Tôi đã cập nhật câu trả lời của mình – Erndob