Ich habe eine Produktionsumgebung und eine Testumgebung in verschiedenen Regionen erstellt, aber es gibt Fälle, in denen ich je nach Umgebung unterschiedliche Vorgänge ausführen möchte, z. B. beim Zugriff außerhalb von AWS. Ich benutze im Grunde API Gateway
x-amazon-apigateway-integration:
type: HTTP
uri: https://example.com
httpMethod: GET
requestParameters:
integration.request.header.hoge: "'some value'"
Ich beschäftige mich damit, indem ich Yaml nach Regionen teile, aber es ist nicht klug, weil ähnliche Yaml zweimal im Repository verwaltet werden. .. Ich war froh, wenn AWS Lambda Umgebungsvariablen hatte, aber ich habe in einer Lernsitzung einige veraltete Tricks gelernt.
print(context.function_name)
~~ Schreibe Parameter in den Funktionsnamen und übergebe sie dann ...? ~~
~~ Als ich unterrichtet wurde, fragte ich "Ich kann JSON in die Beschreibung schreiben!" Und ich überprüfte, ob es akzeptabel war, aber ich konnte keinen Weg finden, die Beschreibung zu erhalten. Da der Parameter mit einem eigenen Parser in den Funktionsnamen geschrieben ist oder das Todesflag zu viel ist, werde ich gehorsam auf das Versions-Upgrade von AWS Lambda warten, ~~
Es war getFunctionConfiguration richtig!
https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/API_GetFunctionConfiguration.html http://boto3.readthedocs.org/en/latest/reference/services/lambda.html#Lambda.Client.get_function_configuration
Ich habe falsch verstanden, was das Kontextobjekt hat. Dies vergrößert die Breite ^^
import boto3
def lambda_handler(event, context):
client = boto3.client('lambda')
response = client.get_function_configuration(
FunctionName=context.function_name
)
print(response['Description'])
Recommended Posts