1{
2 lib,
3 buildPythonPackage,
4 pythonOlder,
5 hatchling,
6 opentelemetry-api,
7 opentelemetry-instrumentation,
8 opentelemetry-semantic-conventions,
9 opentelemetry-test-utils,
10 opentelemetry-util-http,
11 pytestCheckHook,
12}:
13
14buildPythonPackage {
15 inherit (opentelemetry-instrumentation) version src;
16 pname = "opentelemetry-instrumentation-wsgi";
17 pyproject = true;
18
19 disabled = pythonOlder "3.8";
20
21 sourceRoot = "${opentelemetry-instrumentation.src.name}/instrumentation/opentelemetry-instrumentation-wsgi";
22
23 build-system = [ hatchling ];
24
25 dependencies = [
26 opentelemetry-instrumentation
27 opentelemetry-api
28 opentelemetry-semantic-conventions
29 opentelemetry-util-http
30 ];
31
32 nativeCheckInputs = [
33 opentelemetry-test-utils
34 pytestCheckHook
35 ];
36
37 pythonImportsCheck = [ "opentelemetry.instrumentation.wsgi" ];
38
39 meta = opentelemetry-instrumentation.meta // {
40 homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-wsgi";
41 description = "WSGI Middleware for OpenTelemetry";
42 };
43}