<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: nithish rodrigo</title>
    <description>The latest articles on Forem by nithish rodrigo (@nithish_rodrigo).</description>
    <link>https://forem.com/nithish_rodrigo</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3066274%2F28fa1af1-5890-4dca-99e7-bd3cd6a7e16e.jpg</url>
      <title>Forem: nithish rodrigo</title>
      <link>https://forem.com/nithish_rodrigo</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/nithish_rodrigo"/>
    <language>en</language>
    <item>
      <title>Automated Jira Ticket Creation for AWS EC2 Scheduled Events</title>
      <dc:creator>nithish rodrigo</dc:creator>
      <pubDate>Mon, 05 Jan 2026 06:12:07 +0000</pubDate>
      <link>https://forem.com/nithish_rodrigo/automated-jira-ticket-creation-for-aws-ec2-scheduled-events-1eom</link>
      <guid>https://forem.com/nithish_rodrigo/automated-jira-ticket-creation-for-aws-ec2-scheduled-events-1eom</guid>
      <description>&lt;p&gt;This post describes the architecture and configuration required to automatically generate Jira Service Management (JSM) tickets in response to AWS Health notifications about scheduled EC2 instance events (e.g., reboots, instance retirements).&lt;/p&gt;

&lt;p&gt;The aim is to eliminate the manual process of reviewing and forwarding AWS notification emails to a service desk email address. With this automation, you can proactively track and resolve AWS‑initiated maintenance activities and also we can do this maintenace under our control.&lt;/p&gt;

&lt;h2&gt;
  
  
  Architecture Overview
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;AWS Health Events → EventBridge → SQS → Jira Service Management Connector&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl1h53dui1jt1ijx3rj0k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl1h53dui1jt1ijx3rj0k.png" alt=" " width="800" height="507"&gt;&lt;/a&gt;&lt;br&gt;
At a high level:&lt;/p&gt;

&lt;p&gt;AWS Health generates events for EC2 scheduled maintenance.&lt;br&gt;
Amazon EventBridge captures and filters those events.&lt;br&gt;
An Amazon SQS queue receives the events.&lt;br&gt;
The Jira Service Management Connector consumes messages from SQS and creates issues in a JSM project.&lt;/p&gt;

&lt;h2&gt;
  
  
  AWS Health Setup
&lt;/h2&gt;

&lt;p&gt;Using AWS Organizations, you can centralize scheduled AWS Health maintenance notifications for all EC2 instances across all member accounts into a single “central operations” account. From this account, events are visible in the AWS Health Dashboard and can be routed to other AWS services.&lt;/p&gt;

&lt;p&gt;To delegate AWS Health Dashboard organization view to a central account, run the following command from your AWS Organizations management (root) account:&lt;br&gt;
&lt;code&gt;aws organizations register-delegated-administrator \ --account-id &amp;lt;CENTRAL_OPERATIONS_ACCOUNT_ID&amp;gt; \ --service-principal health.amazonaws.com&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Replace &amp;lt;CENTRAL_OPERATIONS_ACCOUNT_ID&amp;gt; with the ID of the account where you want to centralize AWS Health events.&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  AWS EventBridge
&lt;/h2&gt;

&lt;p&gt;EventBridge is used to capture EC2‑related AWS Health events and route them to an SQS queue.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Setup Steps&lt;/strong&gt;&lt;br&gt;
In your central operations account, create an EventBridge rule, for example: aws_schedule_maintenance_event.&lt;br&gt;
Set the target of this EventBridge rule to an Amazon SQS queue that will buffer health events for downstream processing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Delivering Events to Jira Service Management via SQS&lt;/strong&gt;&lt;br&gt;
The SQS queue receives the AWS Health event payloads from EventBridge. These messages are then delivered into a Jira Service Management project using the AWS Service Management Connector for Jira Service Management (often referred to as the “AWS JSM Connector”).&lt;/p&gt;

&lt;p&gt;You can install the connector from the &lt;a href="https://marketplace.atlassian.com/apps/1221283/aws-service-management-connector-for-jsm" rel="noopener noreferrer"&gt;Atlassian Marketplace&lt;/a&gt; and configure it to read from the SQS queue and create issues in a chosen JSM project (for example, an infrastructure or operations service desk).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;High‑Level Configuration in Jira&lt;/strong&gt;&lt;br&gt;
Once the AWS JSM Connector is installed:&lt;/p&gt;

&lt;p&gt;Navigate to the AWS Service Management Connector configuration in Jira.&lt;br&gt;
Configure an AWS account connection that has permissions to read from the SQS queue and interact with the necessary AWS services.&lt;br&gt;
On the connector settings page, ensure the AWS Health integration is enabled.&lt;br&gt;
Enable the desired Jira Service Management project and configure:&lt;/p&gt;

&lt;p&gt;For details on accessing Forge‑based Jira app logs for troubleshooting, see Atlassian’s documentation: &lt;a href="https://developer.atlassian.com/platform/forge/access-app-logs/" rel="noopener noreferrer"&gt;Access app logs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Outcome&lt;/strong&gt;&lt;br&gt;
With the above workflow implemented correctly (and with appropriate AWS and Jira configuration), AWS Health events for EC2 maintenance automatically generate Jira tickets in your chosen JSM project.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This gives operations teams:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Proactive visibility into upcoming instance retirements and maintenance.&lt;br&gt;
A consistent ticketing trail for AWS‑initiated changes.&lt;br&gt;
The ability to track remediation work through normal incident or request workflows.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Troubleshooting&lt;/strong&gt;&lt;br&gt;
Occasionally, the connection between the SQS queue and the JSM connector can fall out of sync (for example, due to transient network or authentication issues). When that happens, EC2 Health events may accumulate in the SQS queue without being turned into Jira tickets.&lt;/p&gt;

&lt;p&gt;A typical temporary fix looks like this:&lt;/p&gt;

&lt;p&gt;Check the SQS queue&lt;br&gt;
Reset / re‑sync the connector in Jira&lt;/p&gt;

&lt;p&gt;After the connection is re‑established and the sync completes, the SQS messages should start being processed, and Jira tickets should appear for any pending EC2 instance retirement or maintenance events.&lt;/p&gt;

&lt;h2&gt;
  
  
  Future Improvements
&lt;/h2&gt;

&lt;p&gt;To make the automation more effective and user‑friendly, you can enrich the Jira tickets with additional context:&lt;/p&gt;

&lt;p&gt;Include instance names in the ticket summary or description, not just the instance ID.&lt;br&gt;
Add environment tags (e.g., prod, staging) and application identifiers to help teams quickly understand impact.&lt;br&gt;
Use a Lambda function or similar service to:&lt;/p&gt;

&lt;p&gt;Enriching tickets in this way makes automated notifications more actionable and reduces the time needed for responders to identify and remediate affected resources. &lt;/p&gt;

&lt;p&gt;Further this project is complete open source, we can create jira tickets for AWS scheduled maintenance for any AWS services using AWS health. &lt;/p&gt;

</description>
      <category>aws</category>
      <category>awshealth</category>
      <category>sqs</category>
      <category>eventbridge</category>
    </item>
    <item>
      <title>Automated Jira Ticket Creation for AWS EC2 Scheduled Events</title>
      <dc:creator>nithish rodrigo</dc:creator>
      <pubDate>Mon, 05 Jan 2026 06:12:07 +0000</pubDate>
      <link>https://forem.com/nithish_rodrigo/automated-jira-ticket-creation-for-aws-ec2-scheduled-events-3kdb</link>
      <guid>https://forem.com/nithish_rodrigo/automated-jira-ticket-creation-for-aws-ec2-scheduled-events-3kdb</guid>
      <description>&lt;p&gt;This post describes the architecture and configuration required to automatically generate Jira Service Management (JSM) tickets in response to AWS Health notifications about scheduled EC2 instance events (e.g., reboots, instance retirements).&lt;/p&gt;

&lt;p&gt;The aim is to eliminate the manual process of reviewing and forwarding AWS notification emails to a service desk email address. With this automation, you can proactively track and resolve AWS‑initiated maintenance activities and also we can do this maintenace under our control.&lt;/p&gt;

&lt;h2&gt;
  
  
  Architecture Overview
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;AWS Health Events → EventBridge → SQS → Jira Service Management Connector&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl1h53dui1jt1ijx3rj0k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl1h53dui1jt1ijx3rj0k.png" alt=" " width="800" height="507"&gt;&lt;/a&gt;&lt;br&gt;
At a high level:&lt;/p&gt;

&lt;p&gt;AWS Health generates events for EC2 scheduled maintenance.&lt;br&gt;
Amazon EventBridge captures and filters those events.&lt;br&gt;
An Amazon SQS queue receives the events.&lt;br&gt;
The Jira Service Management Connector consumes messages from SQS and creates issues in a JSM project.&lt;/p&gt;

&lt;h2&gt;
  
  
  AWS Health Setup
&lt;/h2&gt;

&lt;p&gt;Using AWS Organizations, you can centralize scheduled AWS Health maintenance notifications for all EC2 instances across all member accounts into a single “central operations” account. From this account, events are visible in the AWS Health Dashboard and can be routed to other AWS services.&lt;/p&gt;

&lt;p&gt;To delegate AWS Health Dashboard organization view to a central account, run the following command from your AWS Organizations management (root) account:&lt;br&gt;
&lt;code&gt;aws organizations register-delegated-administrator \ --account-id &amp;lt;CENTRAL_OPERATIONS_ACCOUNT_ID&amp;gt; \ --service-principal health.amazonaws.com&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Replace &amp;lt;CENTRAL_OPERATIONS_ACCOUNT_ID&amp;gt; with the ID of the account where you want to centralize AWS Health events.&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  AWS EventBridge
&lt;/h2&gt;

&lt;p&gt;EventBridge is used to capture EC2‑related AWS Health events and route them to an SQS queue.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Setup Steps&lt;/strong&gt;&lt;br&gt;
In your central operations account, create an EventBridge rule, for example: aws_schedule_maintenance_event.&lt;br&gt;
Set the target of this EventBridge rule to an Amazon SQS queue that will buffer health events for downstream processing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Delivering Events to Jira Service Management via SQS&lt;/strong&gt;&lt;br&gt;
The SQS queue receives the AWS Health event payloads from EventBridge. These messages are then delivered into a Jira Service Management project using the AWS Service Management Connector for Jira Service Management (often referred to as the “AWS JSM Connector”).&lt;/p&gt;

&lt;p&gt;You can install the connector from the &lt;a href="https://marketplace.atlassian.com/apps/1221283/aws-service-management-connector-for-jsm" rel="noopener noreferrer"&gt;Atlassian Marketplace&lt;/a&gt; and configure it to read from the SQS queue and create issues in a chosen JSM project (for example, an infrastructure or operations service desk).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;High‑Level Configuration in Jira&lt;/strong&gt;&lt;br&gt;
Once the AWS JSM Connector is installed:&lt;/p&gt;

&lt;p&gt;Navigate to the AWS Service Management Connector configuration in Jira.&lt;br&gt;
Configure an AWS account connection that has permissions to read from the SQS queue and interact with the necessary AWS services.&lt;br&gt;
On the connector settings page, ensure the AWS Health integration is enabled.&lt;br&gt;
Enable the desired Jira Service Management project and configure:&lt;/p&gt;

&lt;p&gt;For details on accessing Forge‑based Jira app logs for troubleshooting, see Atlassian’s documentation: &lt;a href="https://developer.atlassian.com/platform/forge/access-app-logs/" rel="noopener noreferrer"&gt;Access app logs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Outcome&lt;/strong&gt;&lt;br&gt;
With the above workflow implemented correctly (and with appropriate AWS and Jira configuration), AWS Health events for EC2 maintenance automatically generate Jira tickets in your chosen JSM project.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This gives operations teams:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Proactive visibility into upcoming instance retirements and maintenance.&lt;br&gt;
A consistent ticketing trail for AWS‑initiated changes.&lt;br&gt;
The ability to track remediation work through normal incident or request workflows.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Troubleshooting&lt;/strong&gt;&lt;br&gt;
Occasionally, the connection between the SQS queue and the JSM connector can fall out of sync (for example, due to transient network or authentication issues). When that happens, EC2 Health events may accumulate in the SQS queue without being turned into Jira tickets.&lt;/p&gt;

&lt;p&gt;A typical temporary fix looks like this:&lt;/p&gt;

&lt;p&gt;Check the SQS queue&lt;br&gt;
Reset / re‑sync the connector in Jira&lt;/p&gt;

&lt;p&gt;After the connection is re‑established and the sync completes, the SQS messages should start being processed, and Jira tickets should appear for any pending EC2 instance retirement or maintenance events.&lt;/p&gt;

&lt;h2&gt;
  
  
  Future Improvements
&lt;/h2&gt;

&lt;p&gt;To make the automation more effective and user‑friendly, you can enrich the Jira tickets with additional context:&lt;/p&gt;

&lt;p&gt;Include instance names in the ticket summary or description, not just the instance ID.&lt;br&gt;
Add environment tags (e.g., prod, staging) and application identifiers to help teams quickly understand impact.&lt;br&gt;
Use a Lambda function or similar service to:&lt;/p&gt;

&lt;p&gt;Enriching tickets in this way makes automated notifications more actionable and reduces the time needed for responders to identify and remediate affected resources. &lt;/p&gt;

&lt;p&gt;Further this project is complete open source, we can create jira tickets for AWS scheduled maintenance for any AWS services using AWS health. &lt;/p&gt;

</description>
      <category>aws</category>
      <category>awshealth</category>
      <category>sqs</category>
      <category>eventbridge</category>
    </item>
    <item>
      <title>Automated Jira Ticket Creation for AWS EC2 Scheduled Events</title>
      <dc:creator>nithish rodrigo</dc:creator>
      <pubDate>Mon, 05 Jan 2026 06:12:07 +0000</pubDate>
      <link>https://forem.com/nithish_rodrigo/automated-jira-ticket-creation-for-aws-ec2-scheduled-events-533o</link>
      <guid>https://forem.com/nithish_rodrigo/automated-jira-ticket-creation-for-aws-ec2-scheduled-events-533o</guid>
      <description>&lt;p&gt;This post describes the architecture and configuration required to automatically generate Jira Service Management (JSM) tickets in response to AWS Health notifications about scheduled EC2 instance events (e.g., reboots, instance retirements).&lt;/p&gt;

&lt;p&gt;The aim is to eliminate the manual process of reviewing and forwarding AWS notification emails to a service desk email address. With this automation, you can proactively track and resolve AWS‑initiated maintenance activities and also we can do this maintenace under our control.&lt;/p&gt;

&lt;h2&gt;
  
  
  Architecture Overview
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;AWS Health Events → EventBridge → SQS → Jira Service Management Connector&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl1h53dui1jt1ijx3rj0k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl1h53dui1jt1ijx3rj0k.png" alt=" " width="800" height="507"&gt;&lt;/a&gt;&lt;br&gt;
At a high level:&lt;/p&gt;

&lt;p&gt;AWS Health generates events for EC2 scheduled maintenance.&lt;br&gt;
Amazon EventBridge captures and filters those events.&lt;br&gt;
An Amazon SQS queue receives the events.&lt;br&gt;
The Jira Service Management Connector consumes messages from SQS and creates issues in a JSM project.&lt;/p&gt;

&lt;h2&gt;
  
  
  AWS Health Setup
&lt;/h2&gt;

&lt;p&gt;Using AWS Organizations, you can centralize scheduled AWS Health maintenance notifications for all EC2 instances across all member accounts into a single “central operations” account. From this account, events are visible in the AWS Health Dashboard and can be routed to other AWS services.&lt;/p&gt;

&lt;p&gt;To delegate AWS Health Dashboard organization view to a central account, run the following command from your AWS Organizations management (root) account:&lt;br&gt;
&lt;code&gt;aws organizations register-delegated-administrator \ --account-id &amp;lt;CENTRAL_OPERATIONS_ACCOUNT_ID&amp;gt; \ --service-principal health.amazonaws.com&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;Replace &amp;lt;CENTRAL_OPERATIONS_ACCOUNT_ID&amp;gt; with the ID of the account where you want to centralize AWS Health events.&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  AWS EventBridge
&lt;/h2&gt;

&lt;p&gt;EventBridge is used to capture EC2‑related AWS Health events and route them to an SQS queue.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Setup Steps&lt;/strong&gt;&lt;br&gt;
In your central operations account, create an EventBridge rule, for example: aws_schedule_maintenance_event.&lt;br&gt;
Set the target of this EventBridge rule to an Amazon SQS queue that will buffer health events for downstream processing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Delivering Events to Jira Service Management via SQS&lt;/strong&gt;&lt;br&gt;
The SQS queue receives the AWS Health event payloads from EventBridge. These messages are then delivered into a Jira Service Management project using the AWS Service Management Connector for Jira Service Management (often referred to as the “AWS JSM Connector”).&lt;/p&gt;

&lt;p&gt;You can install the connector from the &lt;a href="https://marketplace.atlassian.com/apps/1221283/aws-service-management-connector-for-jsm" rel="noopener noreferrer"&gt;Atlassian Marketplace&lt;/a&gt; and configure it to read from the SQS queue and create issues in a chosen JSM project (for example, an infrastructure or operations service desk).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;High‑Level Configuration in Jira&lt;/strong&gt;&lt;br&gt;
Once the AWS JSM Connector is installed:&lt;/p&gt;

&lt;p&gt;Navigate to the AWS Service Management Connector configuration in Jira.&lt;br&gt;
Configure an AWS account connection that has permissions to read from the SQS queue and interact with the necessary AWS services.&lt;br&gt;
On the connector settings page, ensure the AWS Health integration is enabled.&lt;br&gt;
Enable the desired Jira Service Management project and configure:&lt;/p&gt;

&lt;p&gt;For details on accessing Forge‑based Jira app logs for troubleshooting, see Atlassian’s documentation: &lt;a href="https://developer.atlassian.com/platform/forge/access-app-logs/" rel="noopener noreferrer"&gt;Access app logs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Outcome&lt;/strong&gt;&lt;br&gt;
With the above workflow implemented correctly (and with appropriate AWS and Jira configuration), AWS Health events for EC2 maintenance automatically generate Jira tickets in your chosen JSM project.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;This gives operations teams:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Proactive visibility into upcoming instance retirements and maintenance.&lt;br&gt;
A consistent ticketing trail for AWS‑initiated changes.&lt;br&gt;
The ability to track remediation work through normal incident or request workflows.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Troubleshooting&lt;/strong&gt;&lt;br&gt;
Occasionally, the connection between the SQS queue and the JSM connector can fall out of sync (for example, due to transient network or authentication issues). When that happens, EC2 Health events may accumulate in the SQS queue without being turned into Jira tickets.&lt;/p&gt;

&lt;p&gt;A typical temporary fix looks like this:&lt;/p&gt;

&lt;p&gt;Check the SQS queue&lt;br&gt;
Reset / re‑sync the connector in Jira&lt;/p&gt;

&lt;p&gt;After the connection is re‑established and the sync completes, the SQS messages should start being processed, and Jira tickets should appear for any pending EC2 instance retirement or maintenance events.&lt;/p&gt;

&lt;h2&gt;
  
  
  Future Improvements
&lt;/h2&gt;

&lt;p&gt;To make the automation more effective and user‑friendly, you can enrich the Jira tickets with additional context:&lt;/p&gt;

&lt;p&gt;Include instance names in the ticket summary or description, not just the instance ID.&lt;br&gt;
Add environment tags (e.g., prod, staging) and application identifiers to help teams quickly understand impact.&lt;br&gt;
Use a Lambda function or similar service to:&lt;/p&gt;

&lt;p&gt;Enriching tickets in this way makes automated notifications more actionable and reduces the time needed for responders to identify and remediate affected resources. &lt;/p&gt;

&lt;p&gt;Further this project is complete open source, we can create jira tickets for AWS scheduled maintenance for any AWS services using AWS health. &lt;/p&gt;

</description>
      <category>aws</category>
      <category>awshealth</category>
      <category>sqs</category>
      <category>eventbridge</category>
    </item>
    <item>
      <title>A Guide to AWS CloudFront Invalidations</title>
      <dc:creator>nithish rodrigo</dc:creator>
      <pubDate>Sat, 03 Jan 2026 11:48:19 +0000</pubDate>
      <link>https://forem.com/nithish_rodrigo/a-guide-to-aws-cloudfront-invalidations-503e</link>
      <guid>https://forem.com/nithish_rodrigo/a-guide-to-aws-cloudfront-invalidations-503e</guid>
      <description>&lt;p&gt;Static frontend website requires consistent update to the webpages as the website grows, so a classic cloud native static web content is served ususally by files uploaded to an Amazon S3 bucket which is accessed via cloudfront. A typical issue with static content is some might notice that the old version of webpage still appears when you visit your website though when there is new content is updated. This happens because of caching.&lt;/p&gt;

&lt;p&gt;To fix this, you need to perform a CloudFront Invalidation. This guide will walk you through the process step-by-step, ensuring your audience always sees the most recent version of your content.&lt;/p&gt;

&lt;p&gt;What is S3 Object Invalidation?&lt;br&gt;
Before we dive into the "how," let's look at the "why."&lt;/p&gt;

&lt;p&gt;When you use Amazon S3 to store files and Amazon CloudFront to deliver them, CloudFront stores copies of your files in "Edge Locations" around the world. This makes your website fast because the data is physically closer to your users.&lt;/p&gt;

&lt;p&gt;However, CloudFront will keep that copy until it expires (often 24 hours or more). If you upload a new version of webpage to S3, CloudFront won't know it changed. So therefore Invalidation tells CloudFront to delete its cached copies and fetch the brand-new version from S3 immediately.&lt;/p&gt;

&lt;p&gt;Step-by-Step: How to Invalidate a File&lt;br&gt;
Follow these steps to refresh your content across the web.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Access the CloudFront Console
Sign in to your AWS Management Console.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;In the search bar at the top, type CloudFront and select it from the services list.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Select Your Distribution
You will see a list of "Distributions" (these are the bridges between your S3 bucket and the web).&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Locate and click on the Distribution ID associated with your website&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create the Invalidation
Click on the Invalidations tab in the top menu.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Click the orange Create invalidation button.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Define the Object Path
In the "Object paths" box, you need to tell AWS exactly which file to clear.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Important: Do not paste the full website URL. Only paste the path that comes after the domain name.&lt;/p&gt;

&lt;p&gt;Example: If your file is at &lt;a href="https://example.com/restaurant/dinner.pdf" rel="noopener noreferrer"&gt;https://example.com/restaurant/dinner.pdf&lt;/a&gt;, you should enter:&lt;/p&gt;

&lt;p&gt;&lt;code&gt;/restaurant/dinner.pdf&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Click Create invalidation at the bottom of the page.&lt;/p&gt;

&lt;p&gt;&lt;u&gt;Key Points to Remember&lt;/u&gt;&lt;br&gt;
&lt;strong&gt;Leading Slash&lt;/strong&gt;: Always start your path with a forward slash &lt;code&gt;/&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Wildcards&lt;/strong&gt;: If you want to clear an entire folder, you can use an asterisk, such as &lt;code&gt;/restaurant/*&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Timing&lt;/strong&gt;: Invalidations usually take 1–3 minutes to process globally. Once the status changes from "In Progress" to "Completed," your new file is live!&lt;/p&gt;

&lt;p&gt;&lt;u&gt;Additional Resources&lt;/u&gt;&lt;br&gt;
For more technical details on how web caching works and advanced invalidation patterns, refer to the official AWS documentation:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html" rel="noopener noreferrer"&gt;AWS Documentation: Invalidating Files&lt;/a&gt;&lt;/p&gt;

</description>
      <category>aws</category>
      <category>cloudfront</category>
      <category>invalidation</category>
      <category>s3</category>
    </item>
    <item>
      <title>📅 Understanding Application Log Timeframes: A Guide to Log Time Formats and Timezone Differences</title>
      <dc:creator>nithish rodrigo</dc:creator>
      <pubDate>Thu, 24 Apr 2025 08:18:09 +0000</pubDate>
      <link>https://forem.com/nithish_rodrigo/understanding-application-log-timeframes-a-guide-to-log-time-formats-and-timezone-differences-3ggo</link>
      <guid>https://forem.com/nithish_rodrigo/understanding-application-log-timeframes-a-guide-to-log-time-formats-and-timezone-differences-3ggo</guid>
      <description>&lt;p&gt;Understanding application log time frame is crucial troubleshooting task where application log time could be different from your local machine clock. In this post I will provide simple examples and terms on understanding the time frames. &lt;/p&gt;

&lt;p&gt;P.S&amp;gt; attribution to &lt;em&gt;ChatGPT&lt;/em&gt; for helping me write my very first dev.to blog &lt;/p&gt;

&lt;p&gt;When you're debugging an issue or investigating an incident, logs are your best friends. But nothing is more frustrating than realizing the timestamp in your application logs doesn't match your local time. You might see a log line saying &lt;strong&gt;2025-04-24T10:00:00Z&lt;/strong&gt;, but you're pretty sure the event happened at 3 PM your time.&lt;/p&gt;

&lt;p&gt;In this post, we’ll break down:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;What are the time formats commonly used in application logs&lt;/li&gt;
&lt;li&gt;What UTC time is&lt;/li&gt;
&lt;li&gt;How to identify the time zone used in your logs&lt;/li&gt;
&lt;li&gt;How to convert between log time and your local machine’s time&lt;/li&gt;
&lt;li&gt;Simple examples to bring it all together&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🕒 1. What Time Format Do Application Logs Use?&lt;br&gt;
Most modern applications use UTC (Coordinated Universal Time) in logs. This is a global time standard not affected by daylight saving time or local time zones. It keeps things consistent when logs are aggregated across servers in different regions.&lt;/p&gt;

&lt;p&gt;Here are some common log time formats you might see:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Format&lt;/th&gt;
&lt;th&gt;Example&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;ISO 8601 (UTC)&lt;/td&gt;
&lt;td&gt;2025-04-24T10:00:00Z&lt;/td&gt;
&lt;td&gt;The &lt;code&gt;Z&lt;/code&gt; means "Zulu time" (another term for UTC).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;UNIX Timestamp&lt;/td&gt;
&lt;td&gt;1713952800&lt;/td&gt;
&lt;td&gt;Number of seconds since Jan 1, 1970 (UTC).&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Local Time Format&lt;/td&gt;
&lt;td&gt;Apr 24 03:30:00 PM&lt;/td&gt;
&lt;td&gt;Varies depending on the server’s time zone.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Custom Formats&lt;/td&gt;
&lt;td&gt;24/Apr/2025:10:00:00 +0000&lt;/td&gt;
&lt;td&gt;Often used in web server logs (like Apache/Nginx). The &lt;code&gt;+0000&lt;/code&gt; means UTC offset.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;🌍 2. What Is UTC and Why Is It Used?&lt;br&gt;
UTC (Coordinated Universal Time) is the time standard used across the world. Servers, cloud platforms, and applications prefer UTC to:&lt;/p&gt;

&lt;p&gt;Avoid confusion from local daylight saving time changes.&lt;/p&gt;

&lt;p&gt;Easily correlate logs across distributed systems.&lt;/p&gt;

&lt;p&gt;Think of it as the "common ground" for global systems.&lt;/p&gt;

&lt;p&gt;If you're in Sri Lanka, your local time is UTC+5:30. So if an application logs a timestamp of 2025-04-24T10:00:00Z, that event happened at 3:30 PM Sri Lanka time.&lt;/p&gt;

&lt;p&gt;🕵️ 3. How to Know What Time Zone a Log Uses?&lt;br&gt;
Look for hints in the log format:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A &lt;strong&gt;Z&lt;/strong&gt; at the end → UTC&lt;/li&gt;
&lt;li&gt;A number like &lt;strong&gt;+0530&lt;/strong&gt; → UTC+5:30&lt;/li&gt;
&lt;li&gt;No timezone at all? 😬 Then check your application/server settings. It might be in local time or UTC depending on configuration.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;🔄 4. How to Convert Log Time to Your Local Time?&lt;br&gt;
Example 1: ISO 8601 UTC to Local Time (Sri Lanka)&lt;br&gt;
Log Time: 2025-04-24T10:00:00Z&lt;br&gt;
Local Time: UTC+5:30 → Add 5 hours and 30 minutes&lt;br&gt;
Result: 2025-04-24 03:30 PM&lt;/p&gt;

&lt;p&gt;Example 2: Apache-style Timestamp&lt;br&gt;
Log Time: 24/Apr/2025:10:00:00 +0000&lt;br&gt;
Still UTC, so same conversion as above → 2025-04-24 03:30 PM&lt;/p&gt;

&lt;p&gt;Example 3: UNIX Timestamp&lt;br&gt;
Log Time: 1713952800&lt;br&gt;
This needs to be converted using a tool or script (e.g., Python or an online converter):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;# In Linux terminal
date -d @1713952800
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;🛠️ 5. Tips to Work with Different Timezones in Logs&lt;br&gt;
Always check your local time zone offset (especially during daylight saving time).&lt;/p&gt;

&lt;p&gt;Use tools like date, timedatectl, or tzutil (Windows) to confirm your current local time setting.&lt;/p&gt;

&lt;p&gt;Many log aggregation tools (like Splunk, Datadog, CloudWatch, etc.) can automatically convert UTC to your local time in the UI.&lt;/p&gt;

&lt;p&gt;If you’re writing logs yourself, prefer UTC + ISO 8601 format. It’s clean, unambiguous, and machine-friendly.&lt;/p&gt;

&lt;p&gt;Conclusion &lt;br&gt;
When reviewing logs from servers or applications, always ask yourself: "What time zone is this in?" Knowing how to read and convert log times accurately will help you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Correlate issues faster&lt;/li&gt;
&lt;li&gt;Understand when exactly something happened&lt;/li&gt;
&lt;li&gt;Avoid confusion when comparing logs from multiple systems&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Whether you're troubleshooting an incident or analyzing patterns, this understanding is a small step with big impact.&lt;/p&gt;

</description>
      <category>aws</category>
      <category>logs</category>
      <category>observability</category>
      <category>timezone</category>
    </item>
  </channel>
</rss>
