CloudWatch запускает задачу Lambda и не перезапускает процесс - PullRequest
0 голосов
/ 22 марта 2020

Я не знаю, как правильно описать проблему, с которой я столкнулся, но я покажу ее вам.

У меня есть функция Lambda, предназначенная для загрузки журнала местоположений шин GPS и сохранения их к S3.

import boto3
from datetime import datetime, timedelta
import urllib.request

now = datetime.now() - timedelta(hours=3, minutes=0)
datetimestamp = now.strftime("%d%m%Y%H%M")
print(datetimestamp)
bucket = "gps-onibus-rio-janeiro"  
s3folder = "schedules"
filename = "GPS" + datetimestamp + ".csv"
filepath = '/tmp/' + filename
baseURL = 'http://dadosabertos.rio.rj.gov.br/apiTransporte/apresentacao/csv/onibus.cfm'
urllib.request.urlretrieve(baseURL, filepath)

def lambda_handler(event, context):
    s3 = boto3.client('s3')
    key = s3folder + '/' + filename
    s3.upload_file(filepath,bucket,key)

Это работает отлично, затем я создал правило CloudWatch, чтобы запускать его каждые пять минут. Проблема в том, что он запускается, но продолжает ссылаться на первый файл и не пытается создать новый файл после того, как прошло пять минут. Я покажу вам журнал.

220320201306
START RequestId: 4cc5df77-dfbb-45e9-85e9-31c6021446fb Version: 5
END RequestId: 4cc5df77-dfbb-45e9-85e9-31c6021446fb
REPORT RequestId: 4cc5df77-dfbb-45e9-85e9-31c6021446fb  Duration: 739.87 ms Billed Duration: 800 ms Memory Size: 256 MB Max Memory Used: 82 MB  Init Duration: 893.84 ms    
START RequestId: 3c76af58-0213-48dc-be77-912abb6212a3 Version: 5
END RequestId: 3c76af58-0213-48dc-be77-912abb6212a3
REPORT RequestId: 3c76af58-0213-48dc-be77-912abb6212a3  Duration: 251.99 ms Billed Duration: 300 ms Memory Size: 256 MB Max Memory Used: 84 MB  
START RequestId: 7dc6cb90-1551-4b9e-aee4-3a8df3ddf74b Version: 5
END RequestId: 7dc6cb90-1551-4b9e-aee4-3a8df3ddf74b
REPORT RequestId: 7dc6cb90-1551-4b9e-aee4-3a8df3ddf74b  Duration: 186.91 ms Billed Duration: 200 ms Memory Size: 256 MB Max Memory Used: 84 MB  
START RequestId: 8d68e7d1-9b44-4830-8e01-f6e33b150dc2 Version: 5
END RequestId: 8d68e7d1-9b44-4830-8e01-f6e33b150dc2
REPORT RequestId: 8d68e7d1-9b44-4830-8e01-f6e33b150dc2  Duration: 234.85 ms Billed Duration: 300 ms Memory Size: 256 MB Max Memory Used: 85 MB  
START RequestId: 8ae750c4-73c3-4425-90aa-653b0a1be6e8 Version: 5
END RequestId: 8ae750c4-73c3-4425-90aa-653b0a1be6e8
REPORT RequestId: 8ae750c4-73c3-4425-90aa-653b0a1be6e8  Duration: 184.37 ms Billed Duration: 200 ms Memory Size: 256 MB Max Memory Used: 85 MB  
START RequestId: 6c80cc04-f06e-43a9-8764-bdee41619b05 Version: 5
END RequestId: 6c80cc04-f06e-43a9-8764-bdee41619b05
REPORT RequestId: 6c80cc04-f06e-43a9-8764-bdee41619b05  Duration: 221.07 ms Billed Duration: 300 ms Memory Size: 256 MB Max Memory Used: 85 MB  

Есть ли способ заставить его начать снова через пять минут для создания нового файла?

1 Ответ

0 голосов
/ 22 марта 2020

Переместить код конструкции имени файла в обработчик.

...