惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

雷峰网
雷峰网
T
The Blog of Author Tim Ferriss
WordPress大学
WordPress大学
V
V2EX
Jina AI
Jina AI
S
Schneier on Security
Cyberwarzone
Cyberwarzone
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
PCI Perspectives
PCI Perspectives
美团技术团队
小众软件
小众软件
L
LangChain Blog
N
Netflix TechBlog - Medium
大猫的无限游戏
大猫的无限游戏
T
Threatpost
T
Tor Project blog
K
Kaspersky official blog
Microsoft Security Blog
Microsoft Security Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
Security Latest
Security Latest
H
Heimdal Security Blog
N
News and Events Feed by Topic
T
Threat Research - Cisco Blogs
J
Java Code Geeks
H
Hackread – Cybersecurity News, Data Breaches, AI and More
T
Tailwind CSS Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
M
MIT News - Artificial intelligence
Apple Machine Learning Research
Apple Machine Learning Research
N
News | PayPal Newsroom
I
Intezer
博客园 - 聂微东
U
Unit 42
Cisco Talos Blog
Cisco Talos Blog
量子位
T
The Exploit Database - CXSecurity.com
Last Week in AI
Last Week in AI
博客园_首页
月光博客
月光博客
Webroot Blog
Webroot Blog
I
InfoQ
The Cloudflare Blog
Attack and Defense Labs
Attack and Defense Labs
人人都是产品经理
人人都是产品经理
Project Zero
Project Zero
Hacker News: Ask HN
Hacker News: Ask HN
IT之家
IT之家
Google DeepMind News
Google DeepMind News
C
Cisco Blogs

Buttondown's blog

Email could have been X.400 times better The physicists who convinced Fermilab to send Brazil's emails Better in-app previews Analytics 3.0 Subscriber ID variables Comments! Send latest premium action Automation filtering Free API subscribers Surveys in automations Reply to replies Labels for RSS feeds How Jeremy Singer-Vine curates curious datasets for readers 2023 (and what's next) Email vs web content Sort by engagement Better gift subscriptions How Andy Dehnart built a career reviewing television New email template Email-based automations Opt-in reply tracking Automatic alt text More social network integrations Sort by metadata Overlarge image warnings Automation tag actions Pause emails mid-flight Search tags and automations Gift via automations Subscriber-driving emails Programmatic webhooks Email page views Tag statistics Discord webhook formatting Automatic subscriber cleanup RSS subscriber count Weekly subscriber reports More list columns Customizable list views How Max Voltar turned a side gig into a trusted keyboard resource How Nick Disabato runs two newsletters from one design consultancy Made-for-you share images Automation improvements End-of-email surveys Filter by date Survey-triggered automations More automation functionality New webhooks How France Insider built a news service with paid subscribers Email as primary key How John Willshire unites two businesses in one newsletter Confirmation reminders Email churned subscribers Email-to-draft Subscriber metadata columns ChatGPT integration Faster web archives Referral program Better search results TikTok embeds Subscriber timeline Spotify embeds Improved RSS-to-email Subscribe page OG image New analytics page Google Tag Manager Even more subscriber types Integrating Duda with Buttondown Linktree integration guide Advanced and enterprise plans Framer integration guide API requests page Team collaboration In-email surveys Better CSS settings Better RSS automation fetching! Editor toolbar improvements Smart filters Faster emails page RSS automations Faster email analytics Zapier error codes Image accessibility checks Tags vs newsletters OG image picker Image editor improvements API bulk actions Improved OpenAPI spec Mastodon support Better subscriber filtering Better subscriber validation Hotkey support! Programmatic access to analytics Stronger bulk actions Faster archive page Custom canonical URLs Email slug and metadata Improved writing interface Generating a Typescript router in Django Filter emails by source
Public postmortem: custom domain tracking links unavailable and delayed analytics
Matias Artopoulos Kozak · 2026-06-03 · via Buttondown's blog

Our public postmortem for the incident on June 1st, 2026.

Matias Artopoulos Kozak

Matias Artopoulos Kozak

June 3, 2026

TL;DR

Today, custom domain tracking links and analytics ingestion experienced downtime from around 2:10 UTC to 14:25 UTC, which caused the links in emails from newsletters with tracking and custom sending domains enabled to be unavailable and email analytics for most newsletters to be delayed.

This was caused by the main domain for the service that handles these tasks being deregistered from Heroku, making the DNS targets previously set invalid. As a result, custom tracking domains and our main endpoint for recieving email events were left pointing to a CNAME that didn't exist.

The domain was deregistered by a new internal system that removes inactive custom domains from Heroku. We created this system because we've begun to reach the 1000 domain limit in Heroku apps, which was affecting our ability to add new custom domains. Unfortunately, this system had a bug where it didn't filter out the main domain for the service, which meant it deregistered it after it detected we've crossed a threshold.

How we detect the issue?

Unfortunately, our automated systems weren't monitoring custom domain tracking links or event ingestion from our email sending providers. We detected this issue from user reports, which is unacceptable.

This is particularily bad as we had a similar incident 3 weeks ago, but we failed to implement the monitoring fixes that we had planned before this incident.

How did we mitigate the issue?

At 14:20 UTC we added the domain again to Heroku, updated DNS and regenerated the ACM certificates. This quickly restored availability for the main domain and custom tracking domains.

How will we prevent this from happening again?

  1. We fixed the issue in our internal system that caused the problem in the first place.
  2. We're adding monitoring to alert when either of these systems (custom domain tracking and email event ingestion) fail or have lower traffic than usual. This is a high priority issue that we've assigned an engineer to work on ASAP.
  3. We're prioritizing migrating this service to another platform to replace Heroku as our main hosting provider. We had already started the migration process, and will be completing it soon.