Commit Graph

1843 Commits

Author SHA1 Message Date
Leighton Chen c60e46d1d4 resource 2023-11-08 16:41:58 -08:00
Leighton Chen fc71328191 remove aiohttp-server 2023-11-08 15:35:49 -08:00
Leighton Chen ca1d6adae1 Update build.sh 2023-11-08 15:20:17 -08:00
Leighton Chen f700461808 skip aiohttp-server 2023-11-08 14:47:25 -08:00
Leighton Chen 4602bfa9f8 Update eachdist.ini 2023-11-08 14:29:39 -08:00
Leighton Chen f19ecaf306 Update README.rst 2023-11-08 10:10:33 -08:00
OpenTelemetry Bot 3779ae835c
[release/v1.21.x-0.42bx] Prepare release 1.21.0/0.42b0 (#2030)
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
2023-11-07 11:06:05 -06:00
Liudmila Molkova 4f6618324d
Set schema_url on all tracers and meters (#1977) 2023-11-06 11:39:51 -08:00
Diego Hurtado eb6024ca31
Fix failing test cases (#2033) 2023-11-03 05:40:46 +00:00
Diego Hurtado 98923dc5b3
Add -ra option to pytest runs (#2035) 2023-11-02 20:50:41 -06:00
Margaret Yu 657d502419
Specify the topic arn as the span attribute messaging.destination.name in the botocore sns instrumentation (#1995) 2023-11-01 15:54:26 -06:00
André "decko" de Brito 1305436671
Aiohttp-server Instrumentation (#1800)
Co-authored-by: Kenny Trytek <kenny.trytek@workiva.com>
Co-authored-by: Daniel Manchon <dmanchon@gmail.com>
2023-10-30 15:10:16 -06:00
Jeremy Voss 3478831838
Using new cloud resource id attribute (#1976) 2023-10-09 19:02:52 +00:00
Allen Kim bb42e0417b
Feature/add new process metrics (#1948) 2023-10-09 10:34:02 -07:00
Diego Hurtado 7ac674430d
Fix version of Flask dependency werkzeug (#1980) 2023-10-04 20:20:39 +00:00
Leighton Chen e318c947a2
Update pyproject.toml (#1950) 2023-09-12 14:47:30 -07:00
Leighton Chen 4abb0e3216
Modify eachdist and build script for container packages (#1949) 2023-09-12 13:33:39 -07:00
OpenTelemetry Bot 54be1603dc
Update version to 1.21.0.dev/0.42b0.dev (#1930)
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
2023-09-04 17:56:57 +00:00
João Thallis fb9eb32fac
doc: fix `commenter_options` type (#1926)
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-09-03 11:23:21 +00:00
Noemi 6f3aead436
Unwrap Celery's `ExceptionInfo` (#1863)
* Unwrap `ExceptionInfo` and `ExceptionWithTraceback`

Instead of reporting the `ExceptionInfo` and `ExceptionWithTraceback`
wrappers raised by Celery, report the exceptions that they wrap.

This ensures that the exception in the OpenTelemetry span has a type
and traceback that are meaningful and relevant to the developer.

* Fix typo

The exception is expected, not excepted. Well, I guess it is also
excepted, because it's an exception, but you get what I mean.

* Reformat file with `black`

Reformat the `__init__.py` file in the Celery instrumentation using
`black`, fixing a CI linter error.

* Address review feedback

Use the VERSION attribute exposed by Billiard to decide whether to
import ExceptionWithTraceback.

Add a test for a failing task and check that the exceptions' type
and message are preserved.

* Amend ExceptionWithTraceback import
2023-09-03 13:56:33 +03:00
mattcontinisio a02d98cb38
Add Cassandra instrumentation (#1902) 2023-08-30 15:40:14 +00:00
Javier Fernández Rodríguez d854c52d23
feat(confluent-kafka): Add instrumentation to consume method (#1786)
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
2023-08-30 15:03:05 +00:00
Raphael Philipe Mendes da Silva 0871dd455c
Revert "update awslambda to use _X_AMZN_TRACE_ID as a Span Link" (#1911)
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
2023-08-21 18:42:12 +02:00
Jeremy Voss 9627f74a73
Azure resource detectors (#1901) 2023-08-17 13:21:59 -07:00
Leighton Chen 9cd9de7f01
Fix errors introduced in regression (#1913) 2023-08-16 13:25:50 -07:00
Jakub Warczarek 6007e0c013
Merge pull request from GHSA-5rv5-6h4r-h22v
* Fix unbound cardinality for label http_method in wsgi based middlewares

* cr: rename file

* cr: change label UNKNOWN to NONSTANDARD

* Update instrumentation/opentelemetry-instrumentation-wsgi/src/opentelemetry/instrumentation/wsgi/__init__.py

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
2023-08-15 13:17:14 -07:00
Thomas LÉVEIL 1beab8238b
Fix UnboundLocalError local variable 'start' referenced before assignment (#1889)
Co-authored-by: Pablo Collins <pablo.collins@gmail.com>
2023-08-07 15:17:20 +02:00
Tristan Sloughter 7603a1fc69
update awslambda to use _X_AMZN_TRACE_ID as a Span Link (#1657)
Co-authored-by: Ron Yishai <ronyish@cisco.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
2023-07-18 22:03:59 +02:00
Diego Hurtado 74fcbf4a6e
Fix pyyaml version (#1892) 2023-07-18 18:49:51 +00:00
OpenTelemetry Bot cfdd4ae77f
Update version to 1.20.0.dev/0.41b0.dev (#1885)
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
2023-07-13 16:42:32 +02:00
Alexandre Papin 09efe708c3
Instrument mysqlclient library (#1744)
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
2023-07-12 21:09:26 +02:00
Marc Dougherty acfe932f7d
fix(django): avoid empty span name on empty path (#1788)
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
2023-07-12 18:38:59 +00:00
Jeremy Voss db90ce38a2
Distro selection (#1823) 2023-07-11 20:26:14 +00:00
Mario Jonke dadcd01524
urllib3: Add instrumentation support for version 2 (#1879)
* urllib3: Add instrumentation support for version 2

* changelog
2023-07-04 00:49:20 +03:00
Diego Hurtado a1f6044672
Add statement of maintainership (#1859)
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-28 12:29:01 +02:00
Tammy Baylis 79d62b3bcd
sqlalchemy wrap_create_engine now accepts sqlcommenter options (#1873)
* sqlalchemy wrap_create_engine accepts sqlcommenter options

* Changelog

* Lint

* Fix default val

* Add sqlalchemy tests

* Change a default in _instrument get

* Lint

* More lint

* Update default

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>

* Update args doc

* lintttt

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-27 13:43:35 +03:00
Rytis Bagdziunas 2e49ba1af8
Use a weak reference to sqlalchemy Engine to avoid memory leak (#1771)
* Use a weak reference to sqlalchemy Engine to avoid memory leak

Closes #1761

By using a weak reference to the `Engine` object, we can avoid the memory leak as disposed `Engines` get properly deallocated. Whenever `SQLAlchemy` is uninstrumented, we only trigger a removal for those event listeners which are listening for objects that haven't been garbage-collected yet.

* Made a mistake in resolving the weak reference

* Fixed formatting issues

* Updated changelog

* Added unit test to check that engine was garbage collected

* Do not save engine in EngineTracer to avoid memory leak

* Add an empty line to satisfy black formatter

* Fix isort complaints

* Fixed the issue when pool name is not set and =None

* Fix formatting issue

* Rebased after changes in a recent commit

* Updated PR number in changelog

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-27 11:37:27 +03:00
Shalev Roda a45c9c3792
Update maintainers list (#1874) 2023-06-26 08:41:27 +02:00
Vivanov98 cd6b024327
Fix async redis clients tracing (#1830)
* Fix async redis clients tracing

* Update changelog

* Add functional integration tests and fix linting issues

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-25 15:03:54 +03:00
Tammy Baylis e70437a36e
Add conditional elastic_transport import (#1810)
* Add conditional elastic_transport import

* Update changelog

* Add future es8 tests

* Update CHANGELOG.md

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>

* Add license, rm pylint disable

* Consistent elastic version check

* lint import

* Update CHANGELOG.md

---------

Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-25 08:25:09 +03:00
Nimrod Shlagman c9004bd375
Fix elastic-search sanitization for bulk queries (#1870)
* support sanitization for str body response

* add CHANGELOG entry

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-25 07:44:57 +03:00
Iman Shafiei 256d8ce12d
Add http.server.request.size for ASGI metric implementation (#1867)
* Update changelog file.

* Update changelog file.

* Add new request.size metric for ASGI middleware.

* Clean-up.

* Refactor try except section.

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-21 23:56:38 +03:00
Matt Oberle 32ae65ed55
fix(grpc): Allow gRPC connections via Unix socket (#1833)
* fix(grpc): Allow gRPC connections via Unix socket

This commit addresses issue #1832.

The way `NET_PEER_IP` and `NET_PEER_PORT` are retrieved raises a `ValueError`
when gRPC connections are handled via Unix sockets.

```py
ip, port = (
    context.peer().split(",")[0].split(":", 1)[1].rsplit(":", 1)
)
```

When using an address like `unix:///tmp/grpc.sock` the value of `context.peer()` is `"unix:"`.
Substituting that in the function above...

```py
ip, port = "unix:".split(",")[0].split(":", 1)[1].rsplit(":", 1)
ip, port = ["unix:"][0].split(":", 1)[1].rsplit(":", 1)
ip, port = "unix:".split(":", 1)[1].rsplit(":", 1)
ip, port = ["unix", ""][1].rsplit(":", 1)
ip, port = "".rsplit(":", 1)
ip, port = [""]  # ValueError
```

I "addressed" the issue by guarding the retrieval of `net.peer.*` values under
an `if` statement that checks if we are using a Unix socket.

I extended the `server_interceptor` tests to run against TCP and Unix socket configurations.

---

**Open Questions**

- [ ] The socket tests will fail on Windows. Is there a way to annotate that?
- [ ] Are there other span values we should be setting for the unix socket?

* Update CHANGELOG

* Add placeholder attributes for linter

* fix lint

---------

Co-authored-by: Matt Oberle <mattoberle@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-21 15:30:35 +03:00
dependabot[bot] ffc9334dd7
Bump requests from 2.28.1 to 2.31.0 (#1818)
Bumps [requests](https://github.com/psf/requests) from 2.28.1 to 2.31.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.28.1...v2.31.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-20 16:01:36 +00:00
Michael fe9405730f
fix: Update falcon instrumentation to follow semantic conventions (#1824)
* fix: Update falcon instrumentation to follow semantic conventions

* docs: Update changelog

* fix linter errors

* Disable falcon.HTTP_200 pylint checck

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
2023-06-20 11:09:53 +00:00
Iman Shafiei 60753e2a55
Add http.server.response.size metric to ASGI implementation. (#1789)
* Add http.server.response.size metric to ASGI implementation.
Add new unit tests.

* Update changelog.

* Fix linting by disabling too-many-nested-blocks

* Put new logic in a new method

* Refactor the placement of new logic.

* Fixed the unit tests in FastAPI and Starlette

* Update changelog.

* FIx lint errors.

* Refactor getting content-length header

* Refactor getting content-length header

---------

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
Co-authored-by: Diego Hurtado <ocelotl@users.noreply.github.com>
2023-06-19 23:00:59 +03:00
Pablo Collins 8cc10a0859
fix redis doc (#1808)
doc string rendered at
https://opentelemetry-python-contrib.readthedocs.io/en/latest/instrumentation/redis/redis.html
refers to `opentelemetry-instrumentation` executable which appears to be a typo

Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-18 16:55:17 +03:00
David Gonoradsky 5ac58c2ffb
Add support for confluent_kafka until 2.1.1 version (#1815)
* Add support for confulent_kafka until 2.1.1 version

* Include 2.1.1 version

* update CHANGELOG.md

* run: 'tox -e generate'

* resolve comments

* update top version to 2.2.0

---------

Co-authored-by: Ran Nozik <ran@gethelios.dev>
2023-06-18 13:20:21 +00:00
Akochavi 1dd17edeea
Add metrics instrumentation celery (#1679)
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-18 10:45:00 +00:00
Iman Shafiei 78040836d2
Fix Invalid type NoneType for attribute X error | AWS-Lambda instrumentation (#1785)
* Add None checking to the aws-lambda logic

* Update changelog.

* Change .get() check to 'key' in dict check.

* Fix consistency issues.

* Update changelog.

---------

Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Shalev Roda <65566801+shalevr@users.noreply.github.com>
2023-06-17 02:55:15 +03:00