Hvordan utløse AWS Lambda med AWS S3

Hvordan utløse AWS Lambda med AWS S3
AWS Lambda er en serverløs hendelsesdrevet tjeneste som utfører koder i forskjellige programmeringsspråk som svar på spesifiserte hendelser. Disse funksjonene i AWS Lambda kan påberopes eller utløse ved å koble til andre AWS -tjenester som AWS S3. For eksempel å utløse lambda -funksjonen på å legge til objekter i en bøtte, slette objekter fra bøtta osv.

I dette innlegget vil vi diskutere hvordan du kan utløse eller påkalle Lambda -funksjoner med AWS S3 lagringstjeneste.

Hvordan utløse AWS Lambda med S3?

AWS Lambda -funksjoner kan utløses av hendelsene eller endringene som skjer i S3 -lagringstjenesten til AWS. Det er et alternativ som heter "Legg til trigger" i AWS Lambda -konsollen for å utløse Lambda -funksjonene. La oss starte prosessen fra bunnen av for bedre forståelse.

Lag en S3 -bøtte

Logg deg på AWS Management Console og åpne S3 -tjenesten til AWS:

Brukeren kan opprette en bøtte eller bruke en eksisterende en. For dette innlegget vil vi lage en ny bøtte. Klikk på "Opprett bøtte" -knappen på det aller første grensesnittet til AWS S3 -konsollen:

Skriv inn et globalt unikt navn for bøtta, og velg deretter en AWS -region:

Legg til noen andre konfigurasjoner som kreves for å opprette en ny bøtte, og klikk deretter på deretter "Opprett bøtte" -knappen:

På denne måten er bøtta opprettet, og den nyopprettede bøtta vises på listen over de eksisterende bøttene:

Lag en lambda -funksjon

Deretter må brukeren åpne AWS Lambda -konsollen. Velg AWS Lambda fra tjenestene:

Velg alternativet "Funksjoner" fra menyen på venstre side, og klikk deretter på "Opprett funksjon" -knappen hvis det ikke er noen eksisterende bøtte:

Legg til konfigurasjonen som kreves for å opprette en ny Lambda -funksjon. For dette innlegget fortsetter vi med alternativet "Forfatter fra bunnen av". Brukerne kan konfigurere alle innstillingene i henhold til deres valg:

Navngi lambda -funksjonen og velg deretter et runtime -språk fra alternativene i rullegardinmenyen der Lambda -funksjonen skal vises i AWS Lambda -konsollen. Her velger vi “Python 3.9 ”:

Klikk på "Opprett funksjon" -knappen:

Lambda -funksjonen er opprettet på denne måten:

Legg til trigger

Nå kan vi føre til hovedtrinnet, som legger til avtrekkeren. Grensesnittet vil vise et "Legg til trigger" -alternativ rett etter å ha åpnet detaljene i lambda -funksjonen. Bare klikk på alternativet:

Siden det her kreves for å utløse lambda -funksjonen ved hjelp av S3 -tjenesten til AWS, kan du søke etter S3 i triggerkonfigurasjonen og velge alternativet:

Etter å ha valgt en tjeneste for å koble til AWS Lambda, viser grensesnittet øyeblikkelig en konfigurasjonsskjema i henhold til den valgte tjenesten. For eksempel, mens vi valgte “S3” -tjenesten, er konfigurasjonene som ble spurt, bøtte -navnet, hendelsene til S3, prefiks, suffiks, etc.:

Velg S3 -bøtta fra rullegardinmenyen og velg deretter en hendelsestype for å spesifisere hvilke endringer i den valgte S3 -bøtta skal utløse Lambda -funksjonen. Vi velger for eksempel “alle objekter skaper hendelser”. Dette betyr at når et objekt blir lagt til eller fjernet, vil det utløse lambda -funksjonen:

Brukeren kan også legge til et prefiks og suffiks for å begrense objektvarsler som starter og slutter med de samme tastene. For dette innlegget overlater vi det som standard. Klikk på "Legg til" -knappen:

Dette vil vise utløseren i AWS Lambda -konsollen:

Brukeren kan se alle detaljene i utløseren for å gjennomgå konfigurasjonene:

I lambda -funksjonsdetaljene vil S3 -utløseren vises, noe som indikerer at utløseren har blitt lagt til funksjonen:

Arbeid av S3 -utløser

For å forstå arbeidet med "S3" -triggeren og overvåke endringene i S3 -bøtta som er lagt til i utløseren, bla ned til "Monitor" -delen og velg "Vis CloudWatch Logs":

Det er for øyeblikket en logg til stede i CloudWatch -logger:

For å utløse funksjonen, kan vi laste opp et objekt til S3 -bøtta. For å gjøre det, gå til S3 -konsollen og åpne detaljene i S3 -bøtta som brukes til å utløse AWS Lambda -funksjonen, og klikk deretter på "Last opp" -knappen:

Bla gjennom en fil fra systemet og last den opp gjennom "Last opp" -knappen:

Loggene vil bli oppdatert i CloudWatch -logger, og antall loggstrømmer endres øyeblikkelig fra en til to som viser den nylige aktiviteten til S3 -bøtta:

Dette handlet om hvordan du kan utløse AWS Lambda -funksjonen fra S3 -tjenesten.

Konklusjon

En av tjenestene som brukes til å utløse AWS Lambda -funksjoner er Amazon S3 -lagringstjenesten. Lambda -funksjoner kan lett utløses gjennom alternativet "Legg til trigger" som er til stede i AWS Lambda -konsollen. Ved å koble S3 -tjenesten til lambda -funksjonen mens du legger til avtrekkeren, kan funksjonene påberopes på spesifikke S3 -hendelser som å laste opp, redigere eller slette filer i bøtter.