Generador cron d’AWS
Generador cron
Comptador de text
JSON a CSV
CSV a JSON
Conversor de timestamp Unix
Generador d’UUID v4 i v7
JSON a TypeScript
Markdown a PDF
Base 64
Imatges
JSON
Codi QR
Contrasenyes
Unitats
Hash
Colors
Eines PDF
Editor de PDF
Codificador d'URL
Conversor de majúscules i minúscules
Lorem Ipsum
Comprovador de regex
Descodificador JWT
Diferència de text
Optimitzador SVG
Visualitzador EXIF
Extractor de colors
Generador de favicons
Convertidor universal
Convertidor d'hores
Divisor de PDF
Imatges a PDF
PDF a Imatge
Eliminar Fons
Tornar al BlogUTILX / Notes i guies

Cron a AWS: exemples d’EventBridge i diferències amb Unix

Generador cron d’AWS

Converteix la intenció en una regla d’AWS

Un horari d’AWS pot ser vàlid i representar una intenció operativa equivocada. Abans de crear un recurs, escriu el requisit com una regla de calendari: minut i hora, dies vàlids, zona horària i anys. Després decideix si la destinació és EventBridge Scheduler o una regla programada heretada. El generador cron d’AWS manté aquestes decisions al costat de les dates calculades. Funciona localment i no necessita cap compte ni credencial d’AWS.

Una taula de revisió útil té sis columnes: minut 0–59, hora 0–23, dia mensual 1–31, mes 1–12 o JAN–DEC, dia setmanal 1–7 o SUN–SAT i any 1970–2199. Posa ? a la columna de dia no usada. En migrar, Unix 0 9 * * 1-5 esdevé AWS cron(0 9 ? * MON-FRI *); el ? té significat.

Verifica un exemple fix d’últim divendres

Fes servir un cas fix: cron(15 10 ? * 6L 2026-2027), EventBridge Scheduler, UTC, després de 2026-09-18T00:00:00Z. Les tres primeres coincidències són 2026-09-25T10:15:00.000Z, 2026-10-30T10:15:00.000Z i 2026-11-27T10:15:00.000Z. 6L indica l’últim divendres segons AWS i ? deixa sense especificar el dia del mes. L’instant inicial queda exclòs. És un exemple comprovable amb un calendari.

Afegeix dos casos. cron(0/15 * * * ? *) després de les 10:00 UTC dona 10:15, 10:30 i 10:45; és un patró de calendari, no un temporitzador des del desplegament. cron(0 8 1 * ? *) després de 2026-07-01T08:00:00Z dona l’1 d’agost, setembre i octubre a les 08:00 UTC. Les dates esperades revelen errors.

Revisa l’horari en un ordre repetible

Tria primer el servei. Scheduler admet una zona IANA; les regles heretades usen UTC. Introdueix minut, hora, dia del mes, mes, dia de la setmana i any. Posa ? exactament en un camp de dia, calcula i revisa diverses coincidències, inclosos canvis de mes. Compara hora local, desplaçament i instant UTC. Copia cron(...) només quan concordi amb el requisit. A AWS configura separadament destinació, rol, finestra flexible, reintents i cua d’errors.

Prova els dies especials per separat. En UTC després de 2026-08-01T00:00:00Z, cron(0 9 1W * ? *) tria dilluns 3 d’agost: el dia 1 és dissabte i el dia de dilluns a divendres ha de quedar dins l’agost. Per a cron(0 9 ? * TUE#2 *), les dates següents són 11 d’agost, 8 de setembre i 13 d’octubre. No s’admeten llistes amb diverses regles #.

Entén els sis camps i operadors

Cron Unix sol tenir cinc camps i combina els dies segons la seva implementació. AWS n’exigeix sis i acaba amb un any entre 1970 i 2199. Admet noms de mesos i dies. L expressa una regla d’últim dia, nW el feiner més proper a un dia mensual i n#k la k-èsima aparició setmanal. L’eina admet L sola com a dissabte i 6L com a últim divendres. Rebutja combinacions ambigües en lloc d’endevinar.

Llegeix cada camp com un conjunt. La barra defineix increments dins del camp, no un interval transcorregut. Un interval d’hores 20-2 cobreix nit i matinada. Els noms faciliten la revisió i la còpia normalitza a majúscules. L al dia mensual significa l’últim dia; una L sola significa dissabte únicament al dia setmanal; 6L significa l’últim divendres. nW busca el dia de dilluns a divendres més proper. LW, desplaçaments de L i llistes especials queden fora del subconjunt.

Diagnostica expressions plausibles però errònies

Un error greu és copiar cinc camps Unix i afegir-ne un per intuïció. Tradueix el requisit. Un altre és definir regles als dos camps de dia: AWS obliga a usar ? en un. Tampoc són vàlides llistes amb diverses expressions #. Un resultat buit no sempre indica sintaxi errònia. La cerca cobreix cinc anys; una expressió amb 2199 pot ser vàlida i no mostrar dates des de 2026.

Si el resultat sorprèn, simplifica: canvia l’any per *, usa UTC i substitueix temporalment el dia especial per un valor simple. Restaura cada restricció. Comprova si l’instant inicial ha quedat exclòs, si l’any cau dins els cinc següents i si ? apareix exactament en un camp de dia. Així separes l’horitzó d’un error de camp o zona.

Separa zones, canvi horari i precisió

Scheduler avalua l’hora civil de la zona indicada. Si una hora no existeix durant el salt de primavera, omet aquella execució; a l’hora repetida de tardor invoca una sola vegada. Les regles heretades es mantenen en UTC i la relació amb l’hora d’una ciutat canvia segons l’estació. AWS indica precisió de minut: programar 10:15 no promet un mil·lisegon exacte. Les finestres flexibles i el lliurament són configuracions separades.

Per a Madrid, prova cron(30 2 * * ? *) amb Scheduler. El 29 de març de 2026, 02:30 no existeix i s’omet. El 25 d’octubre, 02:30 apareix dues vegades al rellotge, però Scheduler invoca una vegada en la primera. Com a regla heretada, UTC no té salt ni repetició; la representació de Madrid canvia amb l’offset.

Què no pot demostrar una previsualització local

Aquesta pàgina simula el calendari; no prova un desplegament d’AWS. Accepta 256 caràcters, retorna fins a deu coincidències i s’atura al cap de cinc anys. No comprova permisos IAM, payloads, quotes, reintents, latència, disponibilitat ni idempotència. Els instants són coincidències esperades, no proves que AWS hagi acceptat el recurs o que la destinació hagi rebut un esdeveniment.

AWS documenta precisió de 60 segons. Una fila 10:15 identifica el minut, no garanteix latència. Scheduler també pot usar una finestra flexible i el lliurament es pot reintentar; l’eina no modela aquestes opcions. Si el procés exigeix exactitud, fes la destinació idempotent i observa registres reals en lloc de tractar les files com execucions.

Conserva proves amb l’expressió

Desa expressió, servei, zona, instant de referència i dates esperades a la revisió. Comprova una setmana normal, un canvi de mes, l’operador especial i un canvi horari quan usis zona local. Revisa l’any. A la consola o infraestructura com a codi confirma expressió i zona, prova la destinació i observa mètriques. Enllaça la guia de cron Unix quan documentis una migració.

Abans d’activar, demana que una altra persona derivi les tres primeres dates. Prova un mes amb dia 1 en cap de setmana per W, un mes amb cinc dies candidats per # o L i un canvi horari. Confirma que la infraestructura conserva la zona. Després de desplegar, usa una destinació innòcua, revisa mètriques i errors i documenta la reversió.

La revisió final ha de distingir tres rellotges: l’hora escrita a la regla, l’hora civil que interpreta Scheduler i l’instant UTC que queda registrat. En una regla heretada només intervenen l’expressió UTC i la seva representació posterior. Si l’equip usa noms com MON o JAN, conserva també el requisit llegible; si usa números, documenta la correspondència. Repeteix la prova quan canviï la zona o l’interval d’anys, perquè totes dues decisions modifiquen les dates sense canviar necessàriament el minut i l’hora. Comprova també que el dia especial existeixi en mesos curts i que una regla mensual no s’hagi confós amb una freqüència temporal.

Desa també la versió exacta que copiaràs. Els parèntesis de cron(...) i les majúscules dels noms fan visible el dialecte en una revisió textual. Comprova l’instant inicial exclusiu: una coincidència exacta amb aquest instant no apareix com a resultat següent. Aquest detall evita interpretar com un error un primer resultat que avança fins al pròxim minut o dia admissible.

Fonts: Tipus d’horari d’AWS EventBridge Scheduler i Patrons de regles programades d’AWS EventBridge.