diff --git a/.pylintrc b/.pylintrc index e51f6f43bd..15c7bccb64 100644 --- a/.pylintrc +++ b/.pylintrc @@ -84,7 +84,8 @@ disable=missing-docstring, missing-module-docstring, # temp-pylint-upgrade import-error, # needed as a workaround as reported here: https://github.com/open-telemetry/opentelemetry-python-contrib/issues/290 cyclic-import, - not-context-manager + not-context-manager, + attribute-defined-outside-init # Enable the message, report, category or checker with the given id(s). You can # either give multiple identifier separated by comma (,) or put this option diff --git a/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/__init__.py b/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/__init__.py index 1074298fc7..47ce8887f9 100644 --- a/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-aiohttp-server/src/opentelemetry/instrumentation/aiohttp_server/__init__.py @@ -289,7 +289,7 @@ def __init__(self, *args, **kwargs): class AioHttpServerInstrumentor(BaseInstrumentor): - # pylint: disable=protected-access,attribute-defined-outside-init + # pylint: disable=protected-access """An instrumentor for aiohttp.web.Application See `BaseInstrumentor` diff --git a/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/__init__.py b/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/__init__.py index c3624d438e..556478b4b8 100644 --- a/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-asyncio/src/opentelemetry/instrumentation/asyncio/__init__.py @@ -132,7 +132,6 @@ def instrumentation_dependencies(self) -> Collection[str]: return _instruments def _instrument(self, **kwargs): - # pylint: disable=attribute-defined-outside-init self._tracer = get_tracer( __name__, __version__, kwargs.get("tracer_provider") ) diff --git a/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/__init__.py b/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/__init__.py index ed40d4c1c9..bfcaafcb0e 100644 --- a/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-aws-lambda/src/opentelemetry/instrumentation/aws_lambda/__init__.py @@ -459,7 +459,6 @@ def _instrument(self, **kwargs): ) ) return - # pylint: disable=attribute-defined-outside-init ( self._wrapped_module_name, self._wrapped_function_name, diff --git a/instrumentation/opentelemetry-instrumentation-boto/src/opentelemetry/instrumentation/boto/__init__.py b/instrumentation/opentelemetry-instrumentation-boto/src/opentelemetry/instrumentation/boto/__init__.py index ca0218fe9f..8258862716 100644 --- a/instrumentation/opentelemetry-instrumentation-boto/src/opentelemetry/instrumentation/boto/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-boto/src/opentelemetry/instrumentation/boto/__init__.py @@ -92,7 +92,6 @@ def _instrument(self, **kwargs): # For example EC2 uses AWSQueryConnection and S3 uses # AWSAuthConnection - # pylint: disable=attribute-defined-outside-init self._tracer = get_tracer( __name__, __version__, diff --git a/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/__init__.py b/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/__init__.py index 028009afd6..d37b9e14e4 100644 --- a/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-boto3sqs/src/opentelemetry/instrumentation/boto3sqs/__init__.py @@ -93,7 +93,6 @@ def set(self, carrier: CarrierT, key: str, value: str) -> None: boto3sqs_setter = Boto3SQSSetter() -# pylint: disable=attribute-defined-outside-init class Boto3SQSInstrumentor(BaseInstrumentor): received_messages_spans: Dict[str, Span] = {} current_span_related_to_token: Span = None diff --git a/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/__init__.py b/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/__init__.py index bf672f7841..5297b37231 100644 --- a/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/__init__.py @@ -135,8 +135,6 @@ def instrumentation_dependencies(self) -> Collection[str]: return _instruments def _instrument(self, **kwargs): - # pylint: disable=attribute-defined-outside-init - # tracers are lazy initialized per-extension in _get_tracer self._tracers = {} # loggers are lazy initialized per-extension in _get_logger diff --git a/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/extensions/bedrock.py b/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/extensions/bedrock.py index 063fe2ab78..d00be2d3f2 100644 --- a/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/extensions/bedrock.py +++ b/instrumentation/opentelemetry-instrumentation-botocore/src/opentelemetry/instrumentation/botocore/extensions/bedrock.py @@ -471,7 +471,6 @@ def before_service_call( span.update_name(f"{operation_name} {request_model}") # this is used to calculate the operation duration metric, duration may be skewed by request_hook - # pylint: disable=attribute-defined-outside-init self._operation_start = default_timer() # pylint: disable=no-self-use,too-many-locals diff --git a/instrumentation/opentelemetry-instrumentation-celery/src/opentelemetry/instrumentation/celery/__init__.py b/instrumentation/opentelemetry-instrumentation-celery/src/opentelemetry/instrumentation/celery/__init__.py index 8a13278b7b..d6b15115b8 100644 --- a/instrumentation/opentelemetry-instrumentation-celery/src/opentelemetry/instrumentation/celery/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-celery/src/opentelemetry/instrumentation/celery/__init__.py @@ -123,7 +123,6 @@ def instrumentation_dependencies(self) -> Collection[str]: def _instrument(self, **kwargs): tracer_provider = kwargs.get("tracer_provider") - # pylint: disable=attribute-defined-outside-init self._tracer = trace.get_tracer( __name__, __version__, diff --git a/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py b/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py index db422db7f6..dfe3264604 100644 --- a/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-confluent-kafka/src/opentelemetry/instrumentation/confluent_kafka/__init__.py @@ -228,7 +228,6 @@ class ConfluentKafkaInstrumentor(BaseInstrumentor): See `BaseInstrumentor` """ - # pylint: disable=attribute-defined-outside-init @staticmethod def instrument_producer( producer: Producer, tracer_provider=None diff --git a/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/__init__.py b/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/__init__.py index 9c670287aa..20fde62bb0 100644 --- a/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-falcon/src/opentelemetry/instrumentation/falcon/__init__.py @@ -561,7 +561,7 @@ def process_response(self, req, resp, resource, req_succeeded=None): # pylint:d class FalconInstrumentor(BaseInstrumentor): - # pylint: disable=protected-access,attribute-defined-outside-init + # pylint: disable=protected-access """An instrumentor for falcon.API See `BaseInstrumentor` diff --git a/instrumentation/opentelemetry-instrumentation-fastapi/tests/test_fastapi_instrumentation.py b/instrumentation/opentelemetry-instrumentation-fastapi/tests/test_fastapi_instrumentation.py index 661c7097cd..e789dc40a5 100644 --- a/instrumentation/opentelemetry-instrumentation-fastapi/tests/test_fastapi_instrumentation.py +++ b/instrumentation/opentelemetry-instrumentation-fastapi/tests/test_fastapi_instrumentation.py @@ -2111,7 +2111,6 @@ async def _(*_): ) -# pylint: disable=attribute-defined-outside-init class TestFastAPIFallback(TestBaseFastAPI): @pytest.fixture(autouse=True) def inject_fixtures(self, caplog): diff --git a/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/__init__.py b/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/__init__.py index 9a22383e1b..c99364e58a 100644 --- a/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-flask/src/opentelemetry/instrumentation/flask/__init__.py @@ -626,7 +626,7 @@ def __init__(self, *args, **kwargs): class FlaskInstrumentor(BaseInstrumentor): - # pylint: disable=protected-access,attribute-defined-outside-init + # pylint: disable=protected-access """An instrumentor for flask.Flask See `BaseInstrumentor` diff --git a/instrumentation/opentelemetry-instrumentation-flask/tests/base_test.py b/instrumentation/opentelemetry-instrumentation-flask/tests/base_test.py index 307ac3ccf0..eaac5bbee0 100644 --- a/instrumentation/opentelemetry-instrumentation-flask/tests/base_test.py +++ b/instrumentation/opentelemetry-instrumentation-flask/tests/base_test.py @@ -118,5 +118,4 @@ def excluded2_endpoint(): self._repeat_custom_response_headers ) - # pylint: disable=attribute-defined-outside-init self.client = Client(self.app, Response) diff --git a/instrumentation/opentelemetry-instrumentation-flask/tests/test_automatic.py b/instrumentation/opentelemetry-instrumentation-flask/tests/test_automatic.py index 16d299085d..0e63b52563 100644 --- a/instrumentation/opentelemetry-instrumentation-flask/tests/test_automatic.py +++ b/instrumentation/opentelemetry-instrumentation-flask/tests/test_automatic.py @@ -51,7 +51,6 @@ def test_uninstrument(self): self.app = flask.Flask(__name__) self.app.route("/hello/")(self._hello_endpoint) - # pylint: disable=attribute-defined-outside-init self.client = Client(self.app, Response) resp = self.client.get("/hello/123") @@ -88,7 +87,6 @@ def test_no_op_tracer_provider(self): self.app = flask.Flask(__name__) self.app.route("/hello/")(self._hello_endpoint) - # pylint: disable=attribute-defined-outside-init self.client = Client(self.app, Response) self.client.get("/hello/123") diff --git a/instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/__init__.py b/instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/__init__.py index 37610d0628..a684b443d6 100644 --- a/instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/__init__.py @@ -320,7 +320,7 @@ class GrpcInstrumentorServer(BaseInstrumentor): """ - # pylint:disable=attribute-defined-outside-init, redefined-outer-name + # pylint:disable=redefined-outer-name def __init__(self, filter_=None): excluded_service_filter = _excluded_service_filter() @@ -374,7 +374,7 @@ class GrpcAioInstrumentorServer(BaseInstrumentor): """ - # pylint:disable=attribute-defined-outside-init, redefined-outer-name + # pylint:disable=redefined-outer-name def __init__(self, filter_=None): excluded_service_filter = _excluded_service_filter() @@ -506,7 +506,7 @@ class GrpcAioInstrumentorClient(BaseInstrumentor): """ - # pylint:disable=attribute-defined-outside-init, redefined-outer-name + # pylint:disable=redefined-outer-name def __init__(self, filter_=None): excluded_service_filter = _excluded_service_filter() diff --git a/instrumentation/opentelemetry-instrumentation-grpc/tests/test_aio_server_interceptor.py b/instrumentation/opentelemetry-instrumentation-grpc/tests/test_aio_server_interceptor.py index e9565f8f8f..f5b802448f 100644 --- a/instrumentation/opentelemetry-instrumentation-grpc/tests/test_aio_server_interceptor.py +++ b/instrumentation/opentelemetry-instrumentation-grpc/tests/test_aio_server_interceptor.py @@ -358,7 +358,6 @@ async def test_span_lifetime(self): class SpanLifetimeServicer(GRPCTestServerServicer): # pylint:disable=C0103 async def SimpleMethod(self, request, context): - # pylint:disable=attribute-defined-outside-init self.span = trace.get_current_span() return Response( diff --git a/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py b/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py index c93f9b71c5..c25b1e0787 100644 --- a/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-httpx/src/opentelemetry/instrumentation/httpx/__init__.py @@ -861,7 +861,7 @@ async def aclose(self) -> None: class HTTPXClientInstrumentor(BaseInstrumentor): - # pylint: disable=protected-access,attribute-defined-outside-init + # pylint: disable=protected-access """An instrumentor for httpx Client and AsyncClient See `BaseInstrumentor` diff --git a/instrumentation/opentelemetry-instrumentation-logging/tests/test_logging.py b/instrumentation/opentelemetry-instrumentation-logging/tests/test_logging.py index 4045a44204..c8a19d35d4 100644 --- a/instrumentation/opentelemetry-instrumentation-logging/tests/test_logging.py +++ b/instrumentation/opentelemetry-instrumentation-logging/tests/test_logging.py @@ -43,8 +43,7 @@ def get_tracer( # pylint: disable=no-self-use class TestLoggingInstrumentorProxyTracerProvider(TestBase): @pytest.fixture(autouse=True) def inject_fixtures(self, caplog): - self.caplog = caplog # pylint: disable=attribute-defined-outside-init - + self.caplog = caplog def setUp(self): super().setUp() LoggingInstrumentor().instrument(tracer_provider=FakeTracerProvider()) @@ -72,8 +71,7 @@ def log_hook(span, record): class TestLoggingInstrumentor(TestBase): @pytest.fixture(autouse=True) def inject_fixtures(self, caplog): - self.caplog = caplog # pylint: disable=attribute-defined-outside-init - + self.caplog = caplog def setUp(self): super().setUp() LoggingInstrumentor().instrument() diff --git a/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/pika_instrumentor.py b/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/pika_instrumentor.py index 7b84f89229..e5055f73e0 100644 --- a/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/pika_instrumentor.py +++ b/instrumentation/opentelemetry-instrumentation-pika/src/opentelemetry/instrumentation/pika/pika_instrumentor.py @@ -53,7 +53,6 @@ def _consumer_callback_attribute_name() -> str: class PikaInstrumentor(BaseInstrumentor): # type: ignore CONSUMER_CALLBACK_ATTR = _consumer_callback_attribute_name() - # pylint: disable=attribute-defined-outside-init @staticmethod def _instrument_channel_consumers( channel: Union[BlockingChannel, Channel], diff --git a/instrumentation/opentelemetry-instrumentation-pymemcache/tests/test_pymemcache.py b/instrumentation/opentelemetry-instrumentation-pymemcache/tests/test_pymemcache.py index f888009017..8a9d98ad99 100644 --- a/instrumentation/opentelemetry-instrumentation-pymemcache/tests/test_pymemcache.py +++ b/instrumentation/opentelemetry-instrumentation-pymemcache/tests/test_pymemcache.py @@ -67,7 +67,6 @@ def tearDown(self): PymemcacheInstrumentor().uninstrument() def make_client(self, mock_socket_values, **kwargs): - # pylint: disable=attribute-defined-outside-init self.client = pymemcache.client.base.Client( (TEST_HOST, TEST_PORT), **kwargs ) @@ -554,7 +553,6 @@ def make_client(self, *mock_socket_values, **kwargs): # pylint: disable=import-outside-toplevel from pymemcache.client.hash import HashClient - # pylint: disable=attribute-defined-outside-init self.client = HashClient([], **kwargs) ip = TEST_HOST diff --git a/instrumentation/opentelemetry-instrumentation-pyramid/tests/pyramid_base_test.py b/instrumentation/opentelemetry-instrumentation-pyramid/tests/pyramid_base_test.py index 9c177433ef..257d870a55 100644 --- a/instrumentation/opentelemetry-instrumentation-pyramid/tests/pyramid_base_test.py +++ b/instrumentation/opentelemetry-instrumentation-pyramid/tests/pyramid_base_test.py @@ -71,5 +71,4 @@ def excluded2_endpoint(request): route_name="custom_response_headers", ) - # pylint: disable=attribute-defined-outside-init self.client = Client(config.make_wsgi_app(), TestResponse) diff --git a/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/__init__.py b/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/__init__.py index 28a41b6a6c..dec3dda855 100644 --- a/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-remoulade/src/opentelemetry/instrumentation/remoulade/__init__.py @@ -177,7 +177,6 @@ def instrumentation_dependencies(self) -> Collection[str]: def _instrument(self, **kwargs): tracer_provider = kwargs.get("tracer_provider") - # pylint: disable=attribute-defined-outside-init self._tracer = trace.get_tracer( __name__, __version__, diff --git a/instrumentation/opentelemetry-instrumentation-sqlalchemy/tests/test_sqlalchemy.py b/instrumentation/opentelemetry-instrumentation-sqlalchemy/tests/test_sqlalchemy.py index 770a3e945d..276c39fc97 100644 --- a/instrumentation/opentelemetry-instrumentation-sqlalchemy/tests/test_sqlalchemy.py +++ b/instrumentation/opentelemetry-instrumentation-sqlalchemy/tests/test_sqlalchemy.py @@ -37,7 +37,7 @@ class TestSqlalchemyInstrumentation(TestBase): @pytest.fixture(autouse=True) def inject_fixtures(self, caplog): - self.caplog = caplog # pylint: disable=attribute-defined-outside-init + self.caplog = caplog def tearDown(self): super().tearDown() diff --git a/instrumentation/opentelemetry-instrumentation-sqlalchemy/tests/test_sqlcommenter.py b/instrumentation/opentelemetry-instrumentation-sqlalchemy/tests/test_sqlcommenter.py index d8144dadc1..bf6a79e4c9 100644 --- a/instrumentation/opentelemetry-instrumentation-sqlalchemy/tests/test_sqlcommenter.py +++ b/instrumentation/opentelemetry-instrumentation-sqlalchemy/tests/test_sqlcommenter.py @@ -29,7 +29,7 @@ class TestSqlalchemyInstrumentationWithSQLCommenter(TestBase): @pytest.fixture(autouse=True) def inject_fixtures(self, caplog): - self.caplog = caplog # pylint: disable=attribute-defined-outside-init + self.caplog = caplog def tearDown(self): super().tearDown() diff --git a/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/__init__.py b/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/__init__.py index da31287c83..dd26f53bca 100644 --- a/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/__init__.py +++ b/instrumentation/opentelemetry-instrumentation-tortoiseorm/src/opentelemetry/instrumentation/tortoiseorm/__init__.py @@ -95,7 +95,6 @@ def _instrument(self, **kwargs): None """ tracer_provider = kwargs.get("tracer_provider") - # pylint: disable=attribute-defined-outside-init self._tracer = trace.get_tracer( __name__, __version__,