Si të konfiguroni njoftimet e ngjarjeve në S3 Bucket në AWS


Njoftimi i ngjarjeve AWS S3 na ndihmon të marrim njoftime kur ngjarje të caktuara ndodhin në një kovë S3. Ne mund të aktivizojmë ngjarjet e disponueshme të kovës së Amazon S3 për të dërguar një mesazh njoftimi. Pra, sa herë që ngjarja e specifikuar ndodh në S3 Bucket, ngjarja aktivizohet dhe njoftimet dërgohen.

Në këtë artikull, ne do të shohim se si të njoftohemi në Email kur ndodhin ngjarje të caktuara në S3 Bucket.

Njoftimi i ngjarjeve AWS S3 mbështet destinacionin e mëposhtëm ku mund të dërgohen njoftime/mesazhe.

  1. Shërbimi i thjeshtë i njoftimit të Amazon (Amazon SNS) tema:
    Mesazhet dërgohen në pikat fundore të abonuara.
  2. Radha e shërbimit të radhës së thjeshtë të Amazon (Amazon SQS):
    Mesazhet dërgohen në radhën SQS ku mund të ruhen.
  3. AWS Lambda:
    Mund të përdoret për të thirrur një funksion Lambda dhe për të dhënë mesazhin e ngjarjes si argument.

Përpara se të vazhdojmë, supozoj se jeni njohur me S3 Bucket dhe SNS dhe keni një S3 Bucket dhe SNS Topic të krijuar tashmë në llogarinë tuaj. Nëse nuk i keni këto burime, atëherë klikoni këtu për të mësuar se si të krijoni një kovë S3 nga paneli AWS dhe Kërko për \Si të krijosh një temë SNS dhe një pajtimtar në AWS?\ për të krijuar një temë SNS me pajtimtar me email në të .

Parakushtet

  1. Llogaria AWS (Krijo nëse nuk ke një të tillë).
  2. Kovë S3.
  3. Tema SNS.

çfarë do të bëjmë?

  1. Identifikohu në AWS.
  2. Konfiguro njoftimet e ngjarjeve S3.

Hyni në AWS

Klikoni këtu për të shkuar në faqen e hyrjes në AWS.

Kur klikojmë lidhjen e mësipërme, do të shohim një faqe interneti si më poshtë ku na kërkohet të identifikohemi duke përdorur detajet tona të hyrjes.

Pasi të keni hyrë me sukses në llogarinë tuaj, do të shihni ekranin si më poshtë.

Konfiguro njoftimet e ngjarjeve S3.

Klikoni në Shërbimet dhe kërkoni për S3 për të shkuar te Paneli i S3.

Në panelin e kontrollit S3, klikoni në kovën S3 në të cilën dëshironi të konfiguroni njoftimet e ngjarjeve.

Klikoni në \Properties\ dhe do të shihni një ekran si më poshtë, këtu klikoni në \Ngjarjet\

Tani mund të krijoni njoftime duke klikuar në \Shto njoftime\.

Jepni një emër njoftimit që do të krijohet, zgjidhni Ngjarjet që dëshironi të njoftoheni, zgjidhni temën SNS në të cilën dëshironi të dërgoni njoftimet dhe klikoni në \Ruaj\.

Ne gjithashtu mund të konfigurojmë një filtër prefiks/prapashtesë në mënyrë që të marrim njoftime vetëm kur skedarët shtohen në një dosje specifike. Kjo mund të arrihet duke shtuar një parashtesë/prapashtesë. Tani për tani, nuk po e shtoj këtë, mund ta provoni nëse dëshironi.

Do të shihni një gabim kur të ruani njoftimin. Kjo ndodh sepse Tema SNS që kemi zgjedhur për të dërguar njoftimet tuaja nuk ka leje për të marrë njoftime nga kjo kovë. Prandaj marrim këtë lloj gabimi. Për të zgjidhur këtë gabim, ne duhet të shtojmë leje në kovën SNS në mënyrë që të mund të marrë njoftime nga kjo kovë S3.

Për të shkuar te SNS, kërkoni për SNS dhe klikoni në rezultat.

Në pultin kryesor, kliko te \Tema\ në panelin e majtë.

Klikoni në temën tuaj SNS.

Nën \Politika e hyrjes\ mund të shihni politikën aktuale që ka SNS. Duhet ta modifikojmë këtë politikë. Klikoni në \Ndrysho\.

Zëvendësoni politikën SNS me politikën e mëposhtme.

{
  "Version": "2012-10-17",
  "Id": "__default_policy_ID",
  "Statement": [
    {
      "Sid": "__default_statement_ID",
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": [
        "SNS:GetTopicAttributes",
        "SNS:SetTopicAttributes",
        "SNS:AddPermission",
        "SNS:RemovePermission",
        "SNS:DeleteTopic",
        "SNS:Subscribe",
        "SNS:ListSubscriptionsByTopic",
        "SNS:Publish",
        "SNS:Receive"
      ],
      "Resource": "arn:aws:sns:eu-west-3:064827688814:rahul-test",
      "Condition": {
        "StringEquals": {
          "AWS:SourceOwner": "064827688814"
        }
      }
    },
    {
      "Sid": "AWSEvents_all-events_Id2377506854031",
      "Effect": "Allow",
      "Principal": {
        "Service": "events.amazonaws.com"
      },
      "Action": "sns:Publish",
      "Resource": "arn:aws:sns:eu-west-3:064827688814:rahul-test"
    },
    {
      "Sid": "AWSEvents_S3_Event",
      "Effect": "Allow",
      "Principal": {
        "Service": "s3.amazonaws.com"
      },
      "Action": "sns:Publish",
      "Resource": "arn:aws:sns:eu-west-3:064827688814:rahul-test"
    }
  ]
}

Në politikën SNS, ne kemi shtuar vetëm deklaratën që është me shkronja të theksuara+kursive. Gjithashtu, mos harroni të zëvendësoni fushat të cilat janë të theksuara me të kuqe.

Ruani ndryshimet në SNS.

Duke u rikthyer te S3 Events, tani përpiquni të rikrijoni të njëjtën ngjarje dhe ta ruani atë. Do të shihni që tani keni krijuar 1 ngjarje.

Shkoni në faqen kryesore të S3 Bucket për të testuar nëse ngjarjet janë duke u njoftuar apo jo.

Ngarko një objekt mostër në S3 Bucket, ky do të jetë një veprim \PUT\ në S3 Bucket. Kjo do të aktivizojë njoftimin tonë të ngjarjes dhe do të na dërgojë një njoftim.

Kështu që kur ngarkova objektin, u aktivizua njoftimi i ngjarjes që krijuam dhe SNS më dërgoi një njoftim në Abonimin me Email që kisha në të.

konkluzioni

Në këtë artikull, mësuam të krijojmë një Njoftim Ngjarje në S3 dhe të aktivizojmë SNS kur ngjarje të caktuara si PUT/COPY/POST zhvillohen në S3 Bucket.