Cron expression là gì?
Cron là cách mô tả lịch chạy tự động bằng chuỗi ngắn thay vì cấu hình calendar từng ngày. Hệ thống backup đêm, gửi email báo cáo sáng thứ Hai, sync dữ liệu mỗi 15 phút — thường đều gắn với một cron expression trong crontab Linux, GitHub Actions schedule, Kubernetes CronJob, AWS EventBridge, hoặc scheduler nội bộ.
Biểu thức kiểu 0 9 1-5 rất gọn nhưng khó đọc nếu bạn chưa quen. Công cụ này dùng cronstrue để dịch sang câu tiếng Việt dễ hiểu — ví dụ “Vào 09:00, từ thứ Hai đến thứ Sáu”. Chạy hoàn toàn trên trình duyệt, không gửi biểu thức lên server.
Cấu trúc 5 trường (crontab Linux)
Thứ tự phổ biến (5 phần):
- Phút (0–59)
- Giờ (0–23)
- Ngày trong tháng (1–31)
- Tháng (1–12)
- Thứ trong tuần (0–7, 0 và 7 thường là Chủ nhật)
Ký hiệu hay gặp: (mọi giá trị), /n (mỗi n bước), 1-5 (khoảng), 1,15 (liệt kê). Một số hệ thống thêm giây (6–7 phần) hoặc cú pháp Quartz (?, L, W) — tool hỗ trợ nhiều dạng phổ biến; nếu báo lỗi, kiểm tra số field và tài liệu scheduler bạn dùng.
Ví dụ thường gặp
/5 *— mỗi 5 phút0 9 1-5— 09:00 thứ Hai đến thứ Sáu0 0 1— 00:00 ngày 1 hàng tháng30 2 0— 02:30 mỗi Chủ nhật (backup tuần)0 /6— mỗi 6 giờ, phút 0
Khi nào nên kiểm tra trước deploy?
- Job chạy production có thể xóa dữ liệu hoặc gửi email hàng loạt — nhầm
*ở cột ngày/tháng có thể chạy mỗi phút thay vì mỗi tháng. - Copy cron từ Stack Overflow sang múi giờ khác — biểu thức không gắn TZ; server UTC 09:00 khác 09:00 giờ Việt Nam.
- On-call đọc crontab đồng nghiệp — dịch sang tiếng Việt giúp bàn giao ca nhanh hơn.
Cách dùng
- Dán cron expression vào ô (có hoặc không có tên user crontab phía trước — chỉ cần phần 5–7 field).
- Đọc câu mô tả tiếng Việt bên dưới.
- Sửa biểu thức và xem lại cho đến khi khớp ý định.
Tool mô tả logic lịch theo chuỗi, không biết múi giờ server hay ngày nghỉ lễ. Việc chọn timezone và skip holiday thuộc cấu hình ứng dụng của bạn.
Công cụ liên quan
Khi job trả về JSON log hoặc config, format JSON và format YAML giúp đọc cấu hình trước khi gắn cron. Token trong pipeline CI thường là JWT — decode JWT để kiểm tra claim hết hạn mà không verify chữ ký trên máy local.