Skip to content

Commit 754fe5a

Browse files
authored
⬆️ ♻️ Adds tracing tooling in servicelib (ITISFoundation#2553)
This PR sets up simcore-service-library to re-enable jaeger tracing tooling in all services. - For fastapi-based services we add fastapi_contrib[jaegertracing] in simcore-service-library[fastapi] and includes the latter in requirements to all fastapi-based services, namely api-server, catalog - For aiohttpg-based service simcore-service-library[aiohttp] already includes servicelib.aiohttp.tracing - Refactors setup.py and some requirements setups.
1 parent c815eb8 commit 754fe5a

File tree

40 files changed

+562
-403
lines changed

40 files changed

+562
-403
lines changed

packages/service-library/MANIFEST.in

Lines changed: 0 additions & 9 deletions
This file was deleted.

packages/service-library/README.rst

Lines changed: 0 additions & 37 deletions
This file was deleted.

packages/service-library/requirements/_fastapi.in

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@
77
--constraint ./_base.in
88

99
fastapi
10+
fastapi_contrib[jaegertracing]

packages/service-library/requirements/_fastapi.txt

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,34 @@
55
# pip-compile --output-file=requirements/_fastapi.txt --strip-extras requirements/_fastapi.in
66
#
77
fastapi==0.68.1
8+
# via
9+
# -r requirements/_fastapi.in
10+
# fastapi-contrib
11+
fastapi-contrib==0.2.11
812
# via -r requirements/_fastapi.in
13+
jaeger-client==4.8.0
14+
# via fastapi-contrib
15+
opentracing==2.4.0
16+
# via
17+
# fastapi-contrib
18+
# jaeger-client
919
pydantic==1.8.2
1020
# via
1121
# -c requirements/../../../requirements/constraints.txt
1222
# -c requirements/./../../../requirements/constraints.txt
1323
# -c requirements/./_base.in
1424
# fastapi
25+
six==1.16.0
26+
# via thrift
1527
starlette==0.14.2
1628
# via fastapi
29+
threadloop==1.0.2
30+
# via jaeger-client
31+
thrift==0.13.0
32+
# via jaeger-client
33+
tornado==6.1
34+
# via
35+
# jaeger-client
36+
# threadloop
1737
typing-extensions==3.10.0.2
1838
# via pydantic

packages/service-library/setup.py

Lines changed: 18 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,6 @@
33
from pathlib import Path
44
from typing import Set
55

6-
from setuptools import find_packages, setup
7-
8-
CURRENT_DIR = Path(sys.argv[0] if __name__ == "__main__" else __file__).resolve().parent
9-
106

117
def read_reqs(reqs_path: Path) -> Set[str]:
128
return {
@@ -20,6 +16,13 @@ def read_reqs(reqs_path: Path) -> Set[str]:
2016
}
2117

2218

19+
CURRENT_DIR = Path(sys.argv[0] if __name__ == "__main__" else __file__).resolve().parent
20+
21+
NAME = "simcore-service-library"
22+
VERSION = "1.1.0"
23+
AUTHORS = "Pedro Crespo-Valero (pcrespov)"
24+
DESCRIPTION = "Core service library for simcore (or servicelib)"
25+
2326
# WEAK requirements (see requirements/python-dependencies.md)
2427
PROD_REQUIREMENTS = read_reqs(CURRENT_DIR / "requirements" / "_base.in")
2528
AIOHTTP_REQUIREMENTS = read_reqs(CURRENT_DIR / "requirements" / "_aiohttp.in")
@@ -30,33 +33,24 @@ def read_reqs(reqs_path: Path) -> Set[str]:
3033

3134

3235
if __name__ == "__main__":
36+
from setuptools import find_packages, setup
3337

3438
setup(
35-
name="simcore-service-library",
36-
version="1.1.0",
37-
author="Pedro Crespo (pcrespov)",
38-
description="Core service library for simcore (or servicelib)",
39-
classifiers=[
40-
"Development Status :: 3 - Alpha",
41-
"Intended Audience :: Developers",
42-
"License :: OSI Approved :: MIT License",
43-
"Natural Language :: English",
44-
"Programming Language :: Python :: 3.8",
45-
],
46-
long_description=Path(CURRENT_DIR / "README.rst").read_text(),
39+
name=NAME,
40+
version=VERSION,
41+
author=AUTHORS,
42+
description=DESCRIPTION,
4743
license="MIT license",
4844
python_requires="~=3.8",
49-
install_requires=list(PROD_REQUIREMENTS),
45+
install_requires=tuple(PROD_REQUIREMENTS),
5046
packages=find_packages(where="src"),
5147
package_dir={"": "src"},
52-
include_package_data=True,
5348
test_suite="tests",
54-
tests_require=list(TEST_REQUIREMENTS),
49+
tests_require=tuple(TEST_REQUIREMENTS),
5550
extras_require={
56-
"test": list(TEST_REQUIREMENTS),
57-
"aiohttp": list(AIOHTTP_REQUIREMENTS),
58-
"fastapi": list(FASTAPI_REQUIREMENTS),
59-
"all": list(AIOHTTP_REQUIREMENTS | FASTAPI_REQUIREMENTS),
51+
"test": tuple(TEST_REQUIREMENTS),
52+
"aiohttp": tuple(AIOHTTP_REQUIREMENTS),
53+
"fastapi": tuple(FASTAPI_REQUIREMENTS),
54+
"all": tuple(AIOHTTP_REQUIREMENTS | FASTAPI_REQUIREMENTS),
6055
},
61-
zip_safe=False,
6256
)

services/api-server/requirements/_base.in

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,12 @@
66
--constraint ../../../requirements/constraints.txt
77

88
# intra-repo required dependencies
9-
--requirement ../../../packages/postgres-database/requirements/_base.in
109
--requirement ../../../packages/models-library/requirements/_base.in
10+
--requirement ../../../packages/postgres-database/requirements/_base.in
1111
--requirement ../../../packages/simcore-sdk/requirements/_base.in
12+
# service-library[fastapi]
1213
--requirement ../../../packages/service-library/requirements/_base.in
14+
--requirement ../../../packages/service-library/requirements/_fastapi.in
1315

1416

1517
# fastapi and extensions

services/api-server/requirements/_base.txt

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
#
77
aiodebug==1.1.2
88
# via
9+
# -c requirements/../../../packages/service-library/requirements/./_base.in
910
# -r requirements/../../../packages/service-library/requirements/_base.in
1011
# -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in
1112
aiofiles==0.5.0
@@ -17,6 +18,7 @@ aiohttp==3.7.4.post0
1718
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
1819
# -c requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
1920
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
21+
# -c requirements/../../../packages/service-library/requirements/./../../../requirements/constraints.txt
2022
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
2123
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
2224
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
@@ -41,6 +43,7 @@ async-timeout==3.0.1
4143
# aiopg
4244
attrs==20.3.0
4345
# via
46+
# -c requirements/../../../packages/service-library/requirements/././constraints.txt
4447
# -c requirements/../../../packages/service-library/requirements/./constraints.txt
4548
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/./constraints.txt
4649
# -r requirements/../../../packages/simcore-sdk/requirements/_base.in
@@ -65,6 +68,7 @@ cryptography==3.4.7
6568
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
6669
# -c requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
6770
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
71+
# -c requirements/../../../packages/service-library/requirements/./../../../requirements/constraints.txt
6872
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
6973
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
7074
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
@@ -82,7 +86,12 @@ email-validator==1.1.2
8286
# fastapi
8387
# pydantic
8488
fastapi==0.68.1
85-
# via -r requirements/_base.in
89+
# via
90+
# -r requirements/../../../packages/service-library/requirements/_fastapi.in
91+
# -r requirements/_base.in
92+
# fastapi-contrib
93+
fastapi-contrib==0.2.11
94+
# via -r requirements/../../../packages/service-library/requirements/_fastapi.in
8695
graphene==2.1.8
8796
# via fastapi
8897
graphql-core==2.3.2
@@ -103,6 +112,7 @@ httpx==0.18.1
103112
# via -r requirements/_base.in
104113
idna==2.10
105114
# via
115+
# -c requirements/../../../packages/service-library/requirements/././constraints.txt
106116
# -c requirements/../../../packages/service-library/requirements/./constraints.txt
107117
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.txt
108118
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/./constraints.txt
@@ -119,6 +129,7 @@ importlib-resources==5.1.3 ; python_version < "3.9"
119129
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
120130
# -c requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
121131
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
132+
# -c requirements/../../../packages/service-library/requirements/./../../../requirements/constraints.txt
122133
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
123134
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
124135
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
@@ -128,11 +139,14 @@ importlib-resources==5.1.3 ; python_version < "3.9"
128139
# alembic
129140
itsdangerous==1.1.0
130141
# via fastapi
142+
jaeger-client==4.8.0
143+
# via fastapi-contrib
131144
jinja2==2.11.3
132145
# via
133146
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
134147
# -c requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
135148
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
149+
# -c requirements/../../../packages/service-library/requirements/./../../../requirements/constraints.txt
136150
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
137151
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
138152
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
@@ -152,6 +166,10 @@ multidict==5.1.0
152166
# yarl
153167
networkx==2.5.1
154168
# via -r requirements/../../../packages/simcore-sdk/requirements/_base.in
169+
opentracing==2.4.0
170+
# via
171+
# fastapi-contrib
172+
# jaeger-client
155173
orjson==3.5.2
156174
# via fastapi
157175
packaging==20.9
@@ -175,6 +193,8 @@ pydantic==1.8.2
175193
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
176194
# -c requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
177195
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
196+
# -c requirements/../../../packages/service-library/requirements/./../../../requirements/constraints.txt
197+
# -c requirements/../../../packages/service-library/requirements/./_base.in
178198
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
179199
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
180200
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
@@ -189,6 +209,7 @@ pydantic==1.8.2
189209
# fastapi
190210
pyinstrument==3.4.2
191211
# via
212+
# -c requirements/../../../packages/service-library/requirements/./_base.in
192213
# -r requirements/../../../packages/service-library/requirements/_base.in
193214
# -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in
194215
pyinstrument-cext==0.2.4
@@ -206,6 +227,8 @@ pyyaml==5.4.1
206227
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
207228
# -c requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
208229
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
230+
# -c requirements/../../../packages/service-library/requirements/./../../../requirements/constraints.txt
231+
# -c requirements/../../../packages/service-library/requirements/./_base.in
209232
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
210233
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
211234
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
@@ -231,6 +254,7 @@ six==1.16.0
231254
# graphql-relay
232255
# python-multipart
233256
# tenacity
257+
# thrift
234258
# websocket-client
235259
sniffio==1.2.0
236260
# via
@@ -241,6 +265,7 @@ sqlalchemy==1.3.24
241265
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
242266
# -c requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
243267
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
268+
# -c requirements/../../../packages/service-library/requirements/./../../../requirements/constraints.txt
244269
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
245270
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
246271
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_base.txt
@@ -255,11 +280,20 @@ starlette==0.14.2
255280
# via fastapi
256281
tenacity==7.0.0
257282
# via
283+
# -c requirements/../../../packages/service-library/requirements/./_base.in
258284
# -r requirements/../../../packages/service-library/requirements/_base.in
259285
# -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/_migration.in
260286
# -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in
261287
# -r requirements/../../../packages/simcore-sdk/requirements/_base.in
262288
# -r requirements/_base.in
289+
threadloop==1.0.2
290+
# via jaeger-client
291+
thrift==0.13.0
292+
# via jaeger-client
293+
tornado==6.1
294+
# via
295+
# jaeger-client
296+
# threadloop
263297
tqdm==4.60.0
264298
# via -r requirements/../../../packages/simcore-sdk/requirements/_base.in
265299
trafaret==2.1.0
@@ -272,6 +306,7 @@ typing-extensions==3.10.0.2
272306
# pydantic
273307
ujson==4.0.2
274308
# via
309+
# -c requirements/../../../packages/service-library/requirements/./_base.in
275310
# -r requirements/../../../packages/service-library/requirements/_base.in
276311
# -r requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/_base.in
277312
# fastapi
@@ -280,6 +315,7 @@ urllib3==1.26.5
280315
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
281316
# -c requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
282317
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
318+
# -c requirements/../../../packages/service-library/requirements/./../../../requirements/constraints.txt
283319
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
284320
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
285321
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
@@ -292,6 +328,7 @@ uvicorn==0.13.4
292328
# -c requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
293329
# -c requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
294330
# -c requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt
331+
# -c requirements/../../../packages/service-library/requirements/./../../../requirements/constraints.txt
295332
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/models-library/requirements/../../../requirements/constraints.txt
296333
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/postgres-database/requirements/../../../requirements/constraints.txt
297334
# -c requirements/../../../packages/simcore-sdk/requirements/../../../packages/service-library/requirements/../../../requirements/constraints.txt

services/api-server/requirements/ci.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
../../packages/postgres-database/
1616
../../packages/pytest-simcore/
1717
../../packages/simcore-sdk
18-
../../packages/service-library
18+
../../packages/service-library[fastapi]
1919
../../services/storage/client-sdk/python/
2020

2121
# installs current package

services/api-server/requirements/dev.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
--editable ../../packages/postgres-database
1717
--editable ../../packages/pytest-simcore/
1818
--editable ../../packages/simcore-sdk
19-
--editable ../../packages/service-library
19+
--editable ../../packages/service-library[fastapi]
2020
--editable ../../services/storage/client-sdk/python/
2121

2222
# installs current package

services/api-server/requirements/prod.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
../../packages/models-library
1414
../../packages/postgres-database/
1515
../../packages/simcore-sdk
16-
../../packages/service-library
16+
../../packages/service-library[fastapi]
1717
../../services/storage/client-sdk/python/
1818

1919
# installs current package

0 commit comments

Comments
 (0)