<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Debugging on ferkakta.dev</title><link>https://ferkakta.dev/tags/debugging/</link><description>Recent content in Debugging on ferkakta.dev</description><generator>Hugo</generator><language>en-US</language><copyright>Copyright fizz.</copyright><lastBuildDate>Wed, 11 Mar 2026 16:00:00 -0400</lastBuildDate><atom:link href="https://ferkakta.dev/tags/debugging/index.xml" rel="self" type="application/rss+xml"/><item><title>I debugged a Lambda timeout for 6 hours. The fix was 4 CLI commands.</title><link>https://ferkakta.dev/lambda-timeout-forensic-arc/</link><pubDate>Wed, 11 Mar 2026 16:00:00 -0400</pubDate><guid>https://ferkakta.dev/lambda-timeout-forensic-arc/</guid><description>&lt;p&gt;The ticket said the Lambda tracer was timing out. The Slack thread said &lt;code&gt;ConnectTimeoutError&lt;/code&gt; to an internal tracing endpoint. Four Lambda functions had been moved into a VPC the day before so they could reach &lt;code&gt;tracer.internal.ferkakta.net&lt;/code&gt; — an internal ALB at &lt;code&gt;10.x.x.x&lt;/code&gt;, only reachable from inside the VPC. The migration was verified, the API returned success, the ticket should not have existed.&lt;/p&gt;
&lt;p&gt;The people who built this system had moved on to other projects. The people using it were in a different timezone. There was no architecture doc, no runbook, no one to pair with. I had CloudWatch, a kubectl context, and AWS credentials.&lt;/p&gt;</description></item><item><title>IAM eventual consistency is 4 seconds — if your policy still doesn't work, you have a bug</title><link>https://ferkakta.dev/iam-eventual-consistency-is-four-seconds/</link><pubDate>Thu, 26 Feb 2026 09:00:00 -0600</pubDate><guid>https://ferkakta.dev/iam-eventual-consistency-is-four-seconds/</guid><description>&lt;p&gt;I changed an IAM inline policy on a role — added an &lt;code&gt;sts:AssumeRole&lt;/code&gt; statement so a pod could assume a cross-account SES role. Ran &lt;code&gt;terraform apply&lt;/code&gt;. Checked the policy with &lt;code&gt;get-role-policy&lt;/code&gt;. The old policy came back. No new statement.&lt;/p&gt;
&lt;p&gt;I said &amp;ldquo;propagation delay&amp;rdquo; and moved on to other work.&lt;/p&gt;
&lt;p&gt;Twenty minutes later I checked again. Same old policy. That&amp;rsquo;s not propagation.&lt;/p&gt;
&lt;h2 id="what-eventual-consistency-actually-means"&gt;What eventual consistency actually means&lt;/h2&gt;
&lt;p&gt;AWS IAM uses a distributed computing model. Changes to policies, roles, and credentials take time to replicate across endpoints. AWS documents this explicitly and recommends not including IAM changes in critical code paths.&lt;/p&gt;</description></item></channel></rss>