Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwenden Sie Lambda-Umgebungsvariablen, um Werte im Code zu konfigurieren
Sie können Umgebungsvariablen verwenden, um das Verhalten Ihrer Funktion anzupassen, ohne Code zu aktualisieren. Eine Umgebungsvariable ist ein Zeichenfolgenpaar, das in der versionsspezifischen Konfiguration einer Funktion gespeichert ist. Die Lambda-Laufzeit stellt Umgebungsvariablen für den Code zur Verfügung und legt zusätzliche Umgebungsvariablen mit Informationen über die Funktion und die Aufrufanforderung fest.
Anmerkung
Um die Sicherheit zu erhöhen, empfehlen wir, AWS Secrets Manager anstelle von Umgebungsvariablen Datenbankanmeldedaten und anderen vertraulichen Informationen wie API Schlüsseln oder Autorisierungstoken zu speichern. Weitere Informationen finden Sie unter Geheimnisse erstellen und verwalten mit AWS Secrets Manager.
Umgebungsvariablen werden vor dem Funktionsaufruf nicht ausgewertet. Jeder von Ihnen definierte Wert wird als Literalzeichenfolge betrachtet und nicht erweitert. Führen Sie die Variablenauswertung in Ihrem Funktionscode durch.
Sie können Umgebungsvariablen in Lambda mithilfe der Lambda-Konsole, der AWS Command Line Interface (AWS CLI), AWS Serverless Application Model (AWS SAM) oder mithilfe einer konfigurieren. AWS SDK
Definierte Laufzeitumgebungsvariablen
Lambda Laufzeiten setzen mehrere Umgebungsvariablen während der Initialisierung. Die meisten Umgebungsvariablen stellen Informationen über die Funktion oder Laufzeit bereit. Die Schlüssel für diese Umgebungsvariablen sind reserviert und können nicht in der Funktionskonfiguration gesetzt werden.
Reservierte Umgebungsvariablen
-
_HANDLER
– Der für die Funktion konfigurierte Handler-Speicherort. -
_X_AMZN_TRACE_ID
– Die X-Ray-Tracing-Header. Diese Umgebungsvariable ändert sich bei jedem Aufruf.-
Diese Umgebungsvariable ist nicht für reine OS-Laufzeiten (die
provided
-Laufzeitfamilie) definiert. Sie können_X_AMZN_TRACE_ID
für benutzerdefinierte Laufzeiten einstellen, indem Sie den Antwort-HeaderLambda-Runtime-Trace-Id
der Nächster Aufruf verwenden. -
Für die Java-Laufzeit-Versionen 17 und höher wird diese Umgebungsvariable nicht verwendet. Stattdessen speichert Lambda Ablaufverfolgungsinformationen in der Systemeigenschaft
com.amazonaws.xray.traceHeader
.
-
-
AWS_DEFAULT_REGION
— Die Standardeinstellung AWS-Region , in der die Lambda-Funktion ausgeführt wird. -
AWS_REGION
— Der AWS-Region Ort, an dem die Lambda-Funktion ausgeführt wird. Wenn eingegeben, überschreibt dieser Wert dieAWS_DEFAULT_REGION
.-
Weitere Informationen zur Verwendung der AWS-Region Umgebungsvariablen mit AWS SDKs finden Sie unter AWS Region im Referenzhandbuch für Tools AWS SDKs und Tools.
-
-
AWS_EXECUTION_ENV
– Die Laufzeit-Kennung mit dem PräfixAWS_Lambda_
z. B.AWS_Lambda_java8
. Diese Umgebungsvariable ist nicht für reine OS-Laufzeiten (dieprovided
-Laufzeitfamilie) definiert. -
AWS_LAMBDA_FUNCTION_NAME
– Der Name der Funktion. -
AWS_LAMBDA_FUNCTION_MEMORY_SIZE
– Die Menge des für die Funktion verfügbaren Speichers in MB. -
AWS_LAMBDA_FUNCTION_VERSION
– Die Version der Funktion, die gerade ausgeführt wird. -
AWS_LAMBDA_INITIALIZATION_TYPE
– Der Initialisierungstyp der Funktion, deron-demand
,provisioned-concurrency
odersnap-start
ist. Weitere Informationen finden Sie unter Konfigurieren der bereitgestellten Gleichzeitigkeit oder unter Verbesserung der Startleistung mit Lambda SnapStart. -
AWS_LAMBDA_LOG_GROUP_NAME
,AWS_LAMBDA_LOG_STREAM_NAME
— Der Name der Amazon CloudWatch Logs-Gruppe und des Streams für die Funktion. DieAWS_LAMBDA_LOG_STREAM_NAME
Umgebungsvariablen AWS_LAMBDA_LOG_GROUP_NAME und sind in SnapStart Lambda-Funktionen nicht verfügbar. -
AWS_ACCESS_KEY
,AWS_ACCESS_KEY_ID
,AWS_SECRET_ACCESS_KEY
,AWS_SESSION_TOKEN
– Die Zugriffsschlüssel, die über die Ausführungsrolle der Funktion bezogen wurden. -
AWS_LAMBDA_RUNTIME_API
— (Benutzerdefinierte Laufzeit) Der Host und der Port der Laufzeit API. -
LAMBDA_TASK_ROOT
– Der Pfad zu Ihrem Lambda-Funktionscode. -
LAMBDA_RUNTIME_DIR
– Der Pfad zu Laufzeitbibliotheken.
Die folgenden zusätzlichen Umgebungsvariablen sind nicht vorbehalten und können in Ihrer Funktionskonfiguration erweitert werden.
Nicht reservierte Umgebungsvariablen
-
LANG
– Das Gebietsschema der Laufzeit (en_US.UTF-8
). -
PATH
– Der Ausführungspfad (/usr/local/bin:/usr/bin/:/bin:/opt/bin
). -
LD_LIBRARY_PATH
– Der Pfad der Systembibliothek (/var/lang/lib:/lib64:/usr/lib64:$LAMBDA_RUNTIME_DIR:$LAMBDA_RUNTIME_DIR/lib:$LAMBDA_TASK_ROOT:$LAMBDA_TASK_ROOT/lib:/opt/lib
). -
NODE_PATH
– (Node.js) Der Node.js-Bibliothekspfad (/opt/nodejs/node12/node_modules/:/opt/nodejs/node_modules:$LAMBDA_RUNTIME_DIR/node_modules
). -
PYTHONPATH
– (Python 2.7, 3.6, 3.8) Der Python-Bibliothekspfad ($LAMBDA_RUNTIME_DIR
). -
GEM_PATH
– (Ruby) Der Pfad der Ruby-Bibliothek ($LAMBDA_TASK_ROOT/vendor/bundle/ruby/2.5.0:/opt/ruby/gems/2.5.0
). -
AWS_XRAY_CONTEXT_MISSING
— Für X-Ray Tracing setzt Lambda dies auf, umLOG_ERROR
zu vermeiden, dass Laufzeitfehler vom X-Ray ausgelöst werden. SDK -
AWS_XRAY_DAEMON_ADDRESS
– Die IP-Adresse und der Port des X-Ray-Daemons. -
AWS_LAMBDA_DOTNET_PREJIT
— Für die. NET6 und. NET7 Laufzeiten, stellen Sie diese Variable ein, um sie zu aktivieren oder zu deaktivieren. NETspezifische Laufzeitoptimierungen. Zu den Werten gehörenalways
,never
undprovisioned-concurrency
. Weitere Informationen finden Sie unter Konfiguration der bereitgestellten Parallelität für eine Funktion. -
TZ
– Die Zeitzone der Umgebung (:UTC
). Die Ausführungsumgebung dient NTP zur Synchronisation der Systemuhr.
Die angezeigten Beispielwerte spiegeln die neuesten Laufzeiten wider. Das Vorhandensein bestimmter Variablen oder deren Werte kann je nach früheren Laufzeiten unterschiedlich sein.
Beispielszenario für Umgebungsvariablen
Sie können Umgebungsvariablen verwenden, um das Funktionsverhalten in Ihrer Testumgebung und Produktionsumgebung anzupassen. Zum Beispiel können Sie zwei Funktionen mit demselben Code aber mit unterschiedlichen Konfigurationen erstellen. Die eine Funktion stellt eine Verbindung mit einer Testdatenbank und die andere mit einer Produktionsdatenbank her. In diesem Fall verwenden Sie Umgebungsvariablen, um den Hostnamen und andere Verbindungsdetails für die Datenbank an die Funktion zu übergeben.
Das folgende Beispiel zeigt, wie der Datenbankhost und der Datenbankname als Umgebungsvariablen definiert werden.
Wenn Ihre Testumgebung mehr Debugging-Informationen generieren soll als die Produktionsumgebung, können Sie eine Umgebungsvariable festlegen, um Ihre Testumgebung so zu konfigurieren, dass eine ausführlichere Protokollierung oder eine detailliertere Ablaufverfolgung verwendet wird.