If we are not running inside AWS Lambda don't print warnings on missing
OTel lambda extension layer.
The instrumentation is installed by the OTel k8s operator and so this
warning may confuse users.
* Fixing w3c baggage support in opentelemetry-instrumentation-aws-lambda
* Changelog update
* Passing context not needed
* Fixing unit test after rebase
* Fix exception handling for events with requestContext
* added entry to changelog
* reformatted with black
---------
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
* Fix black an isort
* change bootstrap_gen to use a list instead of dict
* Bunch of updates
* Fix build
* fix lint
* Fix docs
* Fix lint
* More fixes
* Fix lint
* fix stupid mistake
---------
Co-authored-by: Christian Hartung <christian.hartung@olist.com>
* add a test for aws lambda using NoOpTracerProvider
* fix import
* add assert for spans
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* Fix install of Python 3.10 on GitHub Actions
In PR #1604 the Python version was upgraded to Python 3.10 to fix a
local issue on M1 MacBooks.
The GitHub Action workflows now exit with the following message for the
docker-tests, spellcheck and lint checks, skipping these checks.
```
lint create: /home/runner/work/opentelemetry-python-contrib/opentelemetry-python-contrib/.tox/lint
SKIPPED: InterpreterNotFound: python3.10
___________________________________ summary ____________________________________
SKIPPED: lint: InterpreterNotFound: python3.10
congratulations :)
```
Upgrade the Python version in the GitHub Actions workflow to fix this.
* Fix YAML interpretation of Python 3.10
* Upgrade Docker tests dependencies
Upgrade the asyncpg and psycopg2 packages, they don't work on Python
3.10.
This also fixes running these tests no M1 MacBooks.
* Fix linter issues merged into main
They went unnoticed while the CI didn't fail on the lint task not
working.
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* Adds an option to configure `disable_aws_context_propagation` by environment variable
The variable `OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION` can be used to disable aws context propagation. This is similar to the proposed changes in the JS implementation: https://github.com/open-telemetry/opentelemetry-js-contrib/pull/1227
Signed-off-by: Alex Boten <aboten@lightstep.com>
* update changelog
* Apply suggestions from code review
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Signed-off-by: Alex Boten <aboten@lightstep.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* `opentelemetry-instrumentation-aws-lambda`: Adding option to disable context propagation
Adding the following option to disable context propagation `disable_aws_context_propagation`. This is similar to the disableAwsContextPropagation option in the nodejs instrumentation.
* update changelog
* lint
* more lint
* Add instrumentation for AWS Lambda Service - Implementation
* Lambda is CONSUMER SQS trace if 'Records' key in Lambda event
* More robust check of SQS by indexing and catching
* Explicitly catch errors we expect when determinig if SQS triggered Lambda