Δημιουργήστε εύκολα εκφράσεις cron για προγραμματισμένες εργασίες
Η χρήση της Γεννήτριας Εκφράσεων Cron είναι πολύ απλή:
Οι εκφράσεις Cron χρησιμοποιούνται σε διάφορα σενάρια αυτοματισμού, συμπεριλαμβανομένης της διαχείρισης συστημάτων, του DevOps και των CI/CD pipelines:
Όταν εκτελείτε περιοδικά σενάρια σε διακομιστές Linux, καταχωρήστε εκφράσεις cron στο crontab. Παραδείγματα: Εκτέλεση σεναρίου αντιγράφων ασφαλείας στις 2 π.μ. καθημερινά (0 2 * * *), εκτέλεση εναλλαγής αρχείων καταγραφής κάθε Κυριακή (0 0 * * 0), κ.λπ.
Οι ενεργοποιήσεις προγράμματος των GitHub Actions και τα προγραμματισμένα pipelines του GitLab CI χρησιμοποιούν εκφράσεις cron για την αυτοματοποίηση περιοδικών builds, tests και deployments. Παράδειγμα: Εκτέλεση σουίτας δοκιμών καθημερινά στις 3 π.μ. (0 3 * * *).
Οι πόροι Kubernetes CronJob χρησιμοποιούν εκφράσεις cron για την περιοδική εκτέλεση εργασιών σε κοντέινερ. Παράδειγμα: Εκτέλεση εργασίας δημιουργίας αντιγράφων ασφαλείας βάσης δεδομένων καθημερινά στη 1 π.μ. (0 1 * * *).
Όταν χρησιμοποιείτε το ofelia (προγραμματιστής εργασιών Docker) με το Docker Compose, μπορείτε να χρησιμοποιήσετε εκφράσεις cron για την περιοδική εκτέλεση εργασιών κοντέινερ.
Οι εκφράσεις Cron χρησιμοποιούνται για περιοδικές εργασίες σε εργαλεία παρακολούθησης, όπως η αξιολόγηση κανόνων του Prometheus και η αποστολή ειδοποιήσεων του Grafana.
Χρησιμοποιήστε εκφράσεις cron για προγράμματα περιοδικής εκτέλεσης αντιγράφων ασφαλείας βάσεων δεδομένων, συστημάτων αρχείων και αποθήκευσης cloud.
Χρησιμοποιείται για τον προγραμματισμό σεναρίων εκκαθάρισης που διαγράφουν περιοδικά παλιά αρχεία καταγραφής και προσωρινά αρχεία.
Μια έκφραση cron είναι μια μορφή που χρησιμοποιείται για τον καθορισμό προγραμμάτων εκτέλεσης εργασιών στον προγραμματιστή εργασιών 'cron' του Unix/Linux. Έχει πλέον υιοθετηθεί ευρέως σε υπηρεσίες cloud, εργαλεία CI/CD και πλατφόρμες ενορχήστρωσης κοντέινερ.
Μια τυπική έκφραση cron αποτελείται από 5 πεδία:
Κάθε πεδίο μπορεί να χρησιμοποιήσει την ακόλουθη σήμανση:
Η σύνταξη των εκφράσεων Cron είναι δύσκολο να θυμηθεί κανείς και είναι επιρρεπής σε λάθη όταν γράφεται χειροκίνητα. Αυτό το εργαλείο διασφαλίζει ότι δημιουργείτε ακριβείς, χωρίς λάθη εκφράσεις cron.
Πολύπλοκα προγράμματα μπορούν να διαμορφωθούν εύκολα, απλά επιλέγοντας επιλογές για κάθε πεδίο. Μπορείτε να ορίσετε προγράμματα χρησιμοποιώντας φυσικές εκφράσεις όπως 'κάθε Δευτέρα στις 9 π.μ.'.
Δείτε πότε θα εκτελεστεί πραγματικά η δημιουργημένη έκφραση cron, βλέποντας τους επόμενους 5 προγραμματισμένους χρόνους εκτέλεσης σε πραγματικό χρόνο. Εντοπίστε λάθη διαμόρφωσης πριν από την ανάπτυξη.
Οι δημιουργημένες εκφράσεις cron λειτουργούν με όλα τα συστήματα που είναι συμβατά με cron, συμπεριλαμβανομένων των Linux crontab, Kubernetes CronJob, GitHub Actions, Docker, AWS EventBridge και άλλων.
Δεν χρειάζεται να ανατρέχετε στην τεκμηρίωση για να ελέγξετε τη σύνταξη των εκφράσεων cron. Χρησιμοποιήστε προεπιλογές για να διαμορφώσετε κοινά προγράμματα (ωριαία, καθημερινά, εβδομαδιαία, μηνιαία) με ένα μόνο κλικ.
Οι εκφράσεις Cron δεν περιέχουν πληροφορίες ζώνης ώρας. Η ζώνη ώρας εκτέλεσης εξαρτάται από την ώρα συστήματος του διακομιστή ή τη διαμόρφωση του κοντέινερ. Για υπηρεσίες cloud, συχνά χρειάζεται να καθορίσετε ρητά τις ρυθμίσεις ζώνης ώρας (π.χ., το GitHub Actions χρησιμοποιεί UTC).
Όταν καθορίζονται τόσο το πεδίο ημέρας (3ο) όσο και το πεδίο ημέρας εβδομάδας (5ο), αντιμετωπίζονται ως συνθήκες Ή. Παράδειγμα: '15 10 1 * 1' σημαίνει 'στις 10:15 την 1η κάθε μήνα' Ή 'στις 10:15 κάθε Δευτέρα'.
Πριν την εφαρμογή στην παραγωγή, συνιστούμε δοκιμαστικές εκτελέσεις σε σύντομα διαστήματα (π.χ., κάθε λεπτό) για να επαληθεύσετε την αναμενόμενη συμπεριφορά. Ενεργοποιήστε την έξοδο αρχείων καταγραφής για να παρακολουθείτε το ιστορικό εκτέλεσης.
Πάντα να ρυθμίζετε ειδοποιήσεις για αποτυχίες εργασιών cron (email, Slack, PagerDuty, κ.λπ.). Αυτό είναι απαραίτητο ειδικά για κρίσιμες λειτουργίες όπως αντίγραφα ασφαλείας ή επεξεργασία πληρωμών.
Οι τυπικές εκφράσεις cron χρησιμοποιούν μορφή 5 πεδίων και συνήθως χωρούν σε 20 χαρακτήρες. Αυτό το εργαλείο μπορεί να δημιουργήσει όλα τα μοτίβα εκφράσεων cron 5 πεδίων. Ορισμένα συστήματα υποστηρίζουν μορφές 6 πεδίων (συμπεριλαμβανομένων δευτερολέπτων) ή 7 πεδίων (συμπεριλαμβανομένου έτους), αλλά αυτό το εργαλείο υποστηρίζει την πιο ευρέως χρησιμοποιούμενη μορφή 5 πεδίων.
Μπορείτε να τις χρησιμοποιήσετε σε οποιοδήποτε σύστημα υποστηρίζει εκφράσεις cron: Linux/Unix crontab, Kubernetes CronJob, GitHub Actions, GitLab CI/CD, AWS EventBridge, Google Cloud Scheduler, Docker (ofelia), Jenkins, CircleCI και άλλα.
Ναι, μπορείτε. Επιλέξτε '1,5' (Δευτέρα και Παρασκευή) στο πεδίο ημέρας εβδομάδας, '9' στο πεδίο ώρας και '0' στο πεδίο λεπτού για να δημιουργήσετε '0 9 * * 1,5'.
Οι εκφράσεις Cron δεν περιλαμβάνουν πληροφορίες ζώνης ώρας. Ο χρόνος εκτέλεσης εξαρτάται από την ώρα συστήματος του διακομιστή ή του κοντέινερ που εκτελεί την εργασία. Το GitHub Actions χρησιμοποιεί UTC, το AWS χρησιμοποιεί τοπικές ζώνες ώρας, κ.λπ., ανάλογα με την πλατφόρμα.
Στις περισσότερες περιπτώσεις, συμπεριφέρονται το ίδιο. Και τα δύο σημαίνουν 'κάθε 5 λεπτά', αλλά το '*/5' είναι πιο συνοπτικό και ευανάγνωστο, γι' αυτό συνιστάται.
Καθορίστε '1-5' στο πεδίο ημέρας εβδομάδας. Αυτό στοχεύει μόνο από Δευτέρα έως Παρασκευή. Παράδειγμα: '0 9 * * 1-5' σημαίνει 9 π.μ. τις καθημερινές.
Εάν η έκφραση cron είναι άκυρη ή καθορίζει πολύ σπάνιες συνθήκες (π.χ., 30 Φεβρουαρίου), οι επόμενοι χρόνοι εκτέλεσης δεν μπορούν να υπολογιστούν. Ελέγξτε τη διαμόρφωσή σας.
Ναι, εάν η ζώνη ώρας του διακομιστή έχει ενεργοποιημένη τη θερινή ώρα, οι χρόνοι εκτέλεσης του cron θα επηρεαστούν. Κατά τις μεταβάσεις της θερινής ώρας, οι εργασίες ενδέχεται να παραλειφθούν ή να εκτελεστούν δύο φορές. Για κρίσιμες εργασίες, εξετάστε το ενδεχόμενο λειτουργίας σε UTC.
Test and debug regular expressions
Encode and decode Base64
Decode JWT tokens
Convert between 12-hour and 24-hour formats
UUID generator tool