[PYTHON] Berühren Sie Unterstützung für AWS Lambda-Umgebungsvariablen

Versuchen Sie sofort, die Unterstützung für AWS Lambda-Umgebungsvariablen zu verwenden

Es ist eine Funktion, auf die Sie gewartet haben. Klicken Sie hier, um Lambdas Artikel über Umgebungsvariablen zu lesen [https://aws.amazon.com/jp/blogs/aws/new-for-aws-lambda-environment-variables-and-serverless-application-model/] Dies macht den Codierungsteil wie den Unterschied zwischen der Entwicklungs- und der kommerziellen Einstellungsumgebung bequem. Persönlich halte ich es auch für nützlich, das Protokollausgabepegel-Flag für das Debuggen oder die Verbindungsinformationen nicht fest codieren zu müssen.

Einschränkungen für den Namen von Umgebungsvariablen

Es gibt keine Begrenzung für die Anzahl, insgesamt 4 KB Muss mit einem Alphabet und a-zA-z0-9_ beginnen, damit das Symbol nur "_" sein kann.

Es gibt auch einen reservierten Namen, sodass die folgenden Schlüsselnamen nicht verwendet werden können AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY AWS_SESSION_TOKEN AWS_ACCESS_KEY AWS_SECRET_KEY AWS_SECURITY_TOKEN AWS_DEFAULT_REGION AWS_REGION AWS_LAMBDA_LOG_GROUP_NAME AWS_LAMBDA_LOG_STREAM_NAME AWS_LAMBDA_FUNCTION_NAME AWS_LAMBDA_FUNCTION_MEMORY_SIZE AWS_LAMBDA_FUNCTION_VERSION LAMBDA_TASK_ROOT LAMBDA_RUNTIME_DIR

Die neuesten Informationen finden Sie unter Offiziell.

Umgebungsvariablen einstellen

Mit KeyValue einstellen.

Über die GUI wird der Teil der Umgebungsvariablen unter dem Code-Editor hinzugefügt. Versuchen Sie vorerst, "env" für Key und "prd" für Value festzulegen. スクリーンショット 2016-11-19 10.11.02.png

Informationen zur Einrichtung von [hier] finden Sie in der CLI (http://docs.aws.amazon.com/ja_jp/lambda/latest/dg/env_variables.html).

Es ist vorerst ein Fluss bis zur Akquisition

Offensichtlich kann es als Umgebungsvariable verwendet werden. .. Probe in Python

just_print.py


import os

def lambda_handler(event, context):
    # TODO implement

    print '---all env value---'    
    for i in os.environ.items():
        print i

    print '---get target---'            
    print os.environ['env']
    
    return
    

Ergebnis

---all env value---
('AWS_LAMBDA_FUNCTION_VERSION', '$LATEST')
('LAMBDA_TASK_ROOT', '/var/task')
('PATH', '/usr/local/bin:/usr/bin/:/bin')
('LD_LIBRARY_PATH', '/lib64:/usr/lib64:/var/runtime:/var/runtime/lib:/var/task:/var/task/lib')
('LANG', 'en_US.UTF-8')
('AWS_LAMBDA_FUNCTION_NAME', 'Just_print_event')
('AWS_REGION', 'us-west-2')
('AWS_SESSION_TOKEN', 'xxxxx')
('AWS_SECURITY_TOKEN', 'xxxxxxx')
('LAMBDA_RUNTIME_DIR', '/var/runtime')
('AWS_LAMBDA_FUNCTION_MEMORY_SIZE', '128')
('env', 'prd')
('PYTHONPATH', '/var/runtime')
('AWS_LAMBDA_LOG_GROUP_NAME', '/aws/lambda/Just_print_event')
('AWS_LAMBDA_LOG_STREAM_NAME', '2016/11/19/[$LATEST]')
('AWS_ACCESS_KEY_ID', 'xxxxxxxxxxxxxxxxxxxxxxxxx')
('AWS_DEFAULT_REGION', 'us-west-2')
('AWS_SECRET_ACCESS_KEY', 'xxxxxxxxxxxxxxxxxxxxxx')
---get target---
prd

Vorsichtsmaßnahmen

Es wird empfohlen, vertrauliche Informationen wie das Verbindungskennwort zur DB nicht im Klartext abzulegen. Betrachten wir die Verschlüsselungsverarbeitung mit KMS usw.!

Storing Sensitive Information

For sensitive information, such as database passwords, we recommend you use client-side encryption using AWS Key Management Service and store the resulting values as Ciphertext in your environment variable. You will need to include logic in your Lambda function code to decrypt these values.

Haftungsausschluss

Dieser Beitrag ist eine individuelle Meinung und bezieht sich nicht auf das Unternehmen oder die Organisation, zu der er gehört. Darüber hinaus übernehmen wir keine Garantie für den Betrieb des veröffentlichten Beispielprogramms. Verwenden Sie es daher nur als Referenz.

Recommended Posts

Berühren Sie Unterstützung für AWS Lambda-Umgebungsvariablen
Versuchen Sie, AWS Lambda-Umgebungsvariablen anzugeben?
Umgebung, in der native Bibliotheken in AWS Lambda enthalten sind
Ich habe versucht, TensorFlow in der AWS Lambda-Umgebung auszuführen: Vorbereitung
Unterstützung für Python 2.7-Laufzeit auf AWS Lambda (ab 2020.1)
Linux PATH-Umgebungsvariable
Tweet von AWS Lambda
Probieren Sie AWS Lambda Destinations aus
Ich habe gerade eine virtuelle Umgebung mit der AWS-Lambda-Schicht erstellt
[Python] Scraping in AWS Lambda
Die einfachste AWS Lambda-Implementierung
PyTorch mit AWS Lambda [Lambda-Import]
Web Scraping mit AWS Lambda
xgboost (Python) in einer von AWS Lambda erstellten EC2 Spot-Instanzumgebung
Bereiten Sie eine Umgebung für die Verwendung von OpenCV und Pillow mit AWS Lambda vor