Urgent.News

What's breaking now, across thousands of outlets.

Tech

Kubernetes: un runbook para fallos de email

Un pipeline puede mostrar un pod saludable y, aun así, fallar cuando necesita leer un email de verificación. Este caso confunde porque mezcla varias dependencias: Kubernetes, la cola del mensaje, el proveedor de correo y el buzón que usa el test. En una guardia, la pregunta “¿llegó el correo?” no ayuda mucho. Es mejor preguntar en qué capa se perdió la señal y qué evidencia tenemos. Este runbook…

Original Spanish Read in English

Un fallo en el envío de correos electrónicos a través de Kubernetes puede confundirse por una aplicación saludable, ya que involucra varias dependencias, como el correo electrónico, la cola de mensajes y el buzón. En lugar de preguntar si el correo llegó, es mejor investigar dónde se perdió la señal y qué evidencia hay. Este runbook ofrece una forma rápida para investigar los fallos sin tener que reiniciar todo el clúster. El síntoma es que el pod está verde, pero el pipeline está rojo.

Los tests suelen crear una cuenta, esperar un mensaje y terminar con un tiempo de espera. Si el pod está en Running pero no se recibe el correo, se deben investigar varios síntomas. Por ejemplo, el evento de registro se puede crear sin entrar en la cola, el worker puede reintentar con una configuración antigua, o el mensaje puede llegar a otra dirección o ser filtrado. También es posible que el test comience antes de guardar la hora de inicio, o que el buzón de prueba sea compartido por dos trabajos.

Para investigar, se deben seguir cuatro comprobaciones en este orden: la aplicación, la cola y el worker, el buzón y el test. Si el evento nunca sale de la aplicación, aumentar el tamaño del pod no ayuda. También es útil registrar el identificador del buzón, el job que lo reservó y el tiempo de creación. No es necesario guardar todo el contenido del mensaje en los logs del clúster.

El runbook sugiere mantener un contexto de ejecución, con un nombre de job, un run_id y un correlation_id, para rastrear el problema desde el test hasta el correo electrónico.

Para cada paso, se debe comprobar si hubo un error y si es transitorio, permanente o causado por datos del test. También es importante comparar los relojes para asegurarse de que el test se inició antes de la hora de inicio y que se haya recibido el correo después de ese momento. Los pods de CI no deben consumir el mismo buzón de prueba, por lo que se debe establecer una reserva con TTL y nombre del job para evitar problemas de prueba.

En la implementación, se debe separar los emails de registro por escenario para que una prueba de recuperación no lea el correo de un alta. La interfaz también debe mostrar estados claros en flujos de correo electrónico, incluso cuando el backend todavía está esperando. Los tiempos y reintentos deben definirse para cada capa, como el intervalo de consulta, el tiempo de espera del proveedor y el tiempo de ejecución del test. También es importante mantener los términos de búsqueda fuera de variables y reglas de alerta.

Antes de cerrar el incidente, se deben verificar varios aspectos, como que el evento de registro tenga un identificador rastreable, que la cola registre el resultado final y el número de intentos, que el buzón pertenezca a un solo job y tenga un TTL, que el test use una frontera temporal, que se eliminen los datos sensibles de los logs y que el alerta enlace al run_id y a la causa observada. También es útil documentar qué hacer si cada capa falla.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

Telegram bot development: business work in topics

For business, Telegram is one of the most capable platforms available right now. I find it especially convenient to create groups, add bots and keep each area of work in its own topic What you can…

  • Telegram offers features like groups, bots, and topics for business
  • Bot development involves user interface and system response
  • Users choose Telegram for automation and organized work topics

Room Pagination for Live Auction Dashboards: Reconnect and Backfill Without Drift

Short answer: treat room pagination as a reconnect protocol, not a scrolling feature. Keep a durable cursor per workspace, fetch a bounded page after reconnect, then apply events in order with an…

  • Room pagination treated as reconnect protocol, not scrolling feature
  • Maintain durable cursor per workspace, fetch bounded page after reconnect
  • Apply events in order using idempotent reducer to avoid drift

Four attributes left out of PraisonAI's subprocess blocklist

Four attributes left out of PraisonAI's subprocess blocklist Python sandboxes built from an attribute blocklist have a characteristic failure: the list is a description of what the author remembered…

  • Four attributes missing from Python sandbox blocklist in PraisonAI
  • Attributes: traceback, tbframe, fback, fbuiltins
  • Vulnerability identified in CVE-2026-39888 with high CVSS 3.1 score of 9.9

5 Telegram Group Management Mistakes That Cost Me Members

I've been running Telegram communities for a while now — one peaked above 20,000 members — and I've made almost every mistake you can make with a group.

  • Neglected onboarding process, allowing unprotected chat entry
  • Vague rules document led to confusion and disputes
  • Aggressive keyword filtering censored legitimate messages

Your Kimi K3.1 Pro Responses Truncate Silently

You point an existing OpenAI-compatible client at Kimi K3.1 Pro and it works on the first try. Then a long generation comes back cut off mid-sentence, and nothing in your code complained.

  • Kimi K3.1 Pro truncates responses silently
  • Detect truncation by checking finishreason
  • Choose correct variant to prevent truncation

More from Saturday 24 October →