Ric*_*ane 30 java amazon-web-services aws-lambda
Regions.getCurrentRegion()从AWS Lambda函数中返回null.似乎Regions.getCurrentRegion()AWS Lambda函数不支持此功能.有没有另一种方法来确定lambda函数运行的区域?
注意:AWS Lambda函数是用Java编写的.
sih*_*hil 40
您可以读取AWS_REGION环境变量并使用该Regions.fromName函数将其解析为可用区域.
Regions.fromName(System.getenv("AWS_REGION"))
Run Code Online (Sandbox Code Playgroud)
这相对于ARN解析方法的优点是您不需要Context对象,这意味着您可以在处理函数之外使用它.
Gok*_*kul 14
所有Lambda容器都具有设置为$ AWS_REGION的环境变量
来自Lambda中的Java代码.您可以按如下方式访问它
System.getenv( "AWS_REGION")
gar*_*aat 11
context传递给Lambda函数的对象具有一个名为的属性invokedFunctionArn.ARN的格式如下:
:
因此,您可以在getInvokedFunctionArn()字符上拆分此字符串,并找到与Lambda函数关联的区域.
注意:在java中,您将调用context上下文对象的getter.
对于希望在 Python 中执行此操作的任何人:
import os
import json
def lambda_handler(event, context):
my_region = os.environ['AWS_REGION']
print(my_region)
return {
'statusCode': 200,
'body': json.dumps(f'Hello from {my_region}!')
}
Run Code Online (Sandbox Code Playgroud)
1)您可以使用环境变量并将其作为
System.getenv("AWS_REGION")
Run Code Online (Sandbox Code Playgroud)
以下是作为 AWS Lambda 执行环境一部分并可供 Lambda 函数使用的环境变量列表。下表显示了哪些是 AWS Lambda 保留且无法更改的,以及您在创建 Lambda 函数时可以设置的。有关在 Lambda 函数中使用环境变量的更多信息
https://docs.aws.amazon.com/lambda/latest/dg/lambda-environment-variables.html
2)您可以读取 AWS_DEFAULT_REGION 环境变量
Regions.fromName(System.getenv("AWS_DEFAULT_REGION"))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19625 次 |
| 最近记录: |