Posts by Artem Senenko

@Artem Senenko

Artem Senenko

uptimepage.dev
Kiev, Ukraine uptimepage.dev Joined April 2026
811 Points • 62 Badges • 44 Connections • 45 Followers • 48 Following

Posts by Artem Senenko

Artem Senenko • • in Articles • 8 min read
> TL;DR. Most DNS changes do not take your site down. A new MX record or an edited SPF record usually still resolves, so your uptime checks stay green. To catch these changes, list every record a name should have. Then get an alert when the live answ...
post-cover-31079
Artem Senenko • • in Articles • 9 min read
> TL;DR. Google's SRE book works out that a 24/7 on-call rotation needs at least eight engineers. A team of two or three cannot reach that number, so it has to change what the number is built from: which alerts page a person, which hours are covered,...
post-cover-30020
Artem Senenko • • in Articles • 12 min read
> TL;DR. Uncle Bob released uml-viewerhttps://github.com/unclebob/uml-viewer, a clickable architecture diagram that draws Dependency Rule violations in red and is meant to be driven together with a coding agent. It only parses Clojure, so I wrote a 2...
Artem Senenko • • in Articles • 12 min read
> TL;DR. ICMP, TCP and UDP all travel inside IP packets, but they ask different questions. ICMP echo ping asks "does this address answer at all?" and needs no port. TCP asks "is a program listening on this port?" and gets a clear yes, a clear no, or ...
post-cover-27050
Artem Senenko • • in Articles • 7 min read
> TL;DR. One HTTP check on your homepage is not enough to know your site works. It cannot tell you when your domain expires, because an expired domain still returns 200 OK from a parking page. Mail dies at the same time, just as quietly, and you keep...
post-cover-24097
Artem Senenko • • in Articles • 7 min read
> TL;DR. The most common false alert in uptime monitoring is one probe location having a bad network day. I treated that as a design requirement from day one, so the checking pipeline has two gates: a region only counts as down after it fails the sam...
post-cover-23750
Artem Senenko • • in Articles • 6 min read
> TL;DR. I asked an AI model to turn my codebase into three things: a one-page summary for me, a JSON file for the next AI agent, and an interactive map you can click. It worked well, but only after one boring step: check every number against the cod...
post-cover-23346
Artem Senenko • • in Articles • 7 min read
> TL;DR. During an outage your status page has a second job: holding trust while the fix is still in progress. Write plainly. Say what customers feel first, say what you are doing, and promise a time for the next update. Then keep that promise, even ...
post-cover-23142
Artem Senenko • • in Articles • 4 min read
I build Uptimepage, an open-source uptime monitorhttps://uptimepage.dev and status page written in Rust. People ask why Rust and not Go, since Go is the usual pick for this kind of network service. Here is the honest answer. It is not that Rust wins ...
post-cover-23075
Artem Senenko • • in Articles • 3 min read
Cover photo by the blowuphttps://unsplash.com/@theblowup on Unsplash. I build an uptime monitor, so this question lands in my inbox a lot: is 98% uptime good? For a public website or a paid API, no. For an internal tool or a side project, it is fin...
post-cover-22889
Artem Senenko • • in Articles • 4 min read
A status page is the one dashboard a company publishes about its own service. It is also the one place where the company has a reason to look good. That is a problem. If the page can be edited to look better than reality, it stops being useful. So wh...
Artem Senenko • • in Articles • 3 min read
If you have ever seen a team argue about whether they can ship a risky change, an error budget is the tool that ends the argument with a number. Here is how it works, with the formulas and a simple way to turn it into alerts. What an error budget is...
post-cover-22497
Artem Senenko • • in Articles • 5 min read
> TL;DR. > > A monitoring alert said I was dropping check results. The disk was 100% full. My actual data was 20 MB. ClickHouse had quietly written 12 GB of logs about itself, mostly system.textlog and system.tracelog. Those same logs also burn CPU a...
Artem Senenko • • in Articles • 7 min read
> TL;DR. My uptime monitor keeps config and incidents in Postgres and check results in ClickHouse. The split is one rule: does a row ever change? Config gets edited, so it wants Postgres transactions and constraints. A check result is written once an...
post-cover-22131
Artem Senenko • • in Articles • 3 min read
> TL;DR. An uptime prober is a strange HTTP client, so I swapped reqwest for raw hyper. It needs the opposite of what a normal client gives you: no connection pool, so the cold path gets measured instead of hidden; every phase timed, even when connec...
post-cover-22048
Artem Senenko • • in Articles • 5 min read
Originally published on uptimepage.devhttps://uptimepage.dev/blog/email-bombing-uptime-pages. I build an uptime monitoring tool. Part of my job is to attack it before someone else does. This post is about one attack that most people in this space do...
post-cover-22003
Artem Senenko • • in Articles • 7 min read
I spent the last few months building Uptimepagehttps://uptimepage.dev, an open-source uptime monitor and status page written in Rust. This post is the build story: the decisions that shaped it, the parts I rewrote, and the numbers that came out the o...
Artem Senenko • • in Launches • 1 min read
Uptime monitoring and status pages in one Rust binary...
Posted in AI group
Artem Senenko • • in Articles • 2 min read
Situation. I was working on lumen-argushttps://github.com/lumen-argus/lumen-argus, a project that runs across three Claude Code sessions in three different repos. They needed to share context — "I just refactored the auth module," "the schema migrati...
chevron_left