aws lambda не может открыть файл в режиме записи - PullRequest
0 голосов
/ 09 апреля 2019

Я пытаюсь открыть файл csv в режиме записи, используя csv writer, он работает с файлом локально, но когда я пытаюсь сделать то же самое в aws lambda, он говорит, что файловая система доступна только для чтения. Я уверен, что я открываю в режиме записи в двоичном режиме.

Ниже приведен код для справки.

f = csv.writer(open('abc.csv','wb+'))
                f.writerow(['botName','botVersion','utteranceString','count','distinctUsers','firstUtteredDate','lastUtteredDate','status'])

ниже - ошибка, которую я получаю:

[Errno 30] Read-only file system: 'abc.csv' this is exception

редактировать 1 Выше ошибка исправлена ​​добавлением / tmp / в путь к файлу, но я не могу переместить CSV-файл, созданный в / tmp, в корзину s3 Я использовал ниже код

s3_u.meta.client.upload_file( '/tmp/'+output_filename, 'codepipelinedev',k)

это генерирует пустой файл в корзине s3. и он выдает ошибку, если я тестирую с несуществующим файлом. когда я попробовал то же самое в локальном, CSV-файлы создаются с ожидаемыми данными в файлах. но при передаче этих файлов я получаю пустые файлы в нашей корзине S3.

Ценю помощь в этом Заранее спасибо

1 Ответ

0 голосов
/ 09 апреля 2019

Функции AWS Lambda имеют доступ только на запись в папку /tmp в среде выполнения Lambda.Если вам нужно изменить этот файл, вам нужно сначала скопировать его в /tmp, а затем изменить его там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...