<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>SNS on {O}</title>
    <link>https://omarmakled.com/tags/sns/</link>
    <description>Recent content in SNS on {O}</description>
    <generator>Hugo -- 0.151.1</generator>
    <language>en-us</language>
    <atom:link href="https://omarmakled.com/tags/sns/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Serverless Messaging with AWS SAM: SNS, SQS, and Lambda</title>
      <link>https://omarmakled.com/posts/sam-sns-sqs/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://omarmakled.com/posts/sam-sns-sqs/</guid>
      <description>&lt;p&gt;This example shows how to build a &lt;strong&gt;serverless messaging pipeline&lt;/strong&gt; using &lt;strong&gt;AWS SAM&lt;/strong&gt;. The project uses &lt;strong&gt;SNS&lt;/strong&gt; to publish messages, &lt;strong&gt;SQS&lt;/strong&gt; queues to separate concerns, and &lt;strong&gt;Lambda functions&lt;/strong&gt; to process the data. It also uses &lt;strong&gt;filter policies&lt;/strong&gt; to control message delivery to each queue.&lt;/p&gt;
&lt;p&gt;This architecture is useful when you want to send different types of data to different consumers, and keep your application components decoupled.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&#34;project-structure&#34;&gt;Project Structure&lt;/h3&gt;
&lt;p&gt;The template defines:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Serverless API Monitoring with AWS SAM: Lambda, API Gateway &amp; CloudWatch Alarms</title>
      <link>https://omarmakled.com/posts/sam-api-alaram/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://omarmakled.com/posts/sam-api-alaram/</guid>
      <description>&lt;p&gt;This example demonstrates how to build a lightweight, serverless API using &lt;strong&gt;AWS SAM (Serverless Application Model)&lt;/strong&gt; while integrating real-time error monitoring and email alerts using &lt;strong&gt;CloudWatch Alarms&lt;/strong&gt; and &lt;strong&gt;SNS&lt;/strong&gt;. This pattern is ideal for production-ready serverless applications that need observability without heavy tooling.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&#34;project-structure&#34;&gt;Project Structure&lt;/h3&gt;
&lt;p&gt;The project includes the following core components:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;functions/&lt;/code&gt;&lt;/strong&gt;: Contains the Lambda function that handles HTTP requests:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;app.mjs&lt;/code&gt;: Returns a simple response (e.g., &amp;ldquo;Hello World&amp;rdquo;).&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;code&gt;template.yaml&lt;/code&gt;&lt;/strong&gt;: The SAM template defining resources including:
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Lambda Function&lt;/strong&gt; (hello handler)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;API Gateway&lt;/strong&gt; (to expose the function via HTTP)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CloudWatch Alarm&lt;/strong&gt; (monitors API 5XX errors)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;SNS Topic &amp;amp; Subscription&lt;/strong&gt; (sends email alerts)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;h3 id=&#34;how-it-works&#34;&gt;How It Works&lt;/h3&gt;
&lt;p&gt;This architecture sets up an API and monitors its availability in real time:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
