#2623 - Only return response from lambda, skip log output
This commit is contained in:
parent
74ad2d7d3c
commit
000cb968a4
@ -53,9 +53,6 @@ try:
|
|||||||
except ImportError:
|
except ImportError:
|
||||||
from backports.tempfile import TemporaryDirectory
|
from backports.tempfile import TemporaryDirectory
|
||||||
|
|
||||||
# The lambci container is returning a special escape character for the "RequestID" fields. Unicode 033:
|
|
||||||
# _stderr_regex = re.compile(r"START|END|REPORT RequestId: .*")
|
|
||||||
_stderr_regex = re.compile(r"\033\[\d+.*")
|
|
||||||
_orig_adapter_send = requests.adapters.HTTPAdapter.send
|
_orig_adapter_send = requests.adapters.HTTPAdapter.send
|
||||||
docker_3 = docker.__version__[0] >= "3"
|
docker_3 = docker.__version__[0] >= "3"
|
||||||
|
|
||||||
@ -385,7 +382,7 @@ class LambdaFunction(BaseModel):
|
|||||||
try:
|
try:
|
||||||
# TODO: I believe we can keep the container running and feed events as needed
|
# TODO: I believe we can keep the container running and feed events as needed
|
||||||
# also need to hook it up to the other services so it can make kws/s3 etc calls
|
# also need to hook it up to the other services so it can make kws/s3 etc calls
|
||||||
# Should get invoke_id /RequestId from invovation
|
# Should get invoke_id /RequestId from invocation
|
||||||
env_vars = {
|
env_vars = {
|
||||||
"AWS_LAMBDA_FUNCTION_TIMEOUT": self.timeout,
|
"AWS_LAMBDA_FUNCTION_TIMEOUT": self.timeout,
|
||||||
"AWS_LAMBDA_FUNCTION_NAME": self.function_name,
|
"AWS_LAMBDA_FUNCTION_NAME": self.function_name,
|
||||||
@ -453,14 +450,9 @@ class LambdaFunction(BaseModel):
|
|||||||
if exit_code != 0:
|
if exit_code != 0:
|
||||||
raise Exception("lambda invoke failed output: {}".format(output))
|
raise Exception("lambda invoke failed output: {}".format(output))
|
||||||
|
|
||||||
# strip out RequestId lines (TODO: This will return an additional '\n' in the response)
|
# We only care about the response from the lambda
|
||||||
output = os.linesep.join(
|
# Which is the last line of the output, according to https://github.com/lambci/docker-lambda/issues/25
|
||||||
[
|
output = output.splitlines()[-1]
|
||||||
line
|
|
||||||
for line in self.convert(output).splitlines()
|
|
||||||
if not _stderr_regex.match(line)
|
|
||||||
]
|
|
||||||
)
|
|
||||||
return output, False
|
return output, False
|
||||||
except BaseException as e:
|
except BaseException as e:
|
||||||
traceback.print_exc()
|
traceback.print_exc()
|
||||||
|
Loading…
Reference in New Issue
Block a user