cavisson-pythonagent 0.0.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cavisson_pythonagent-0.0.1.dist-info/METADATA +32 -0
- cavisson_pythonagent-0.0.1.dist-info/RECORD +180 -0
- cavisson_pythonagent-0.0.1.dist-info/WHEEL +5 -0
- cavisson_pythonagent-0.0.1.dist-info/licenses/LICENSE +19 -0
- cavisson_pythonagent-0.0.1.dist-info/top_level.txt +1 -0
- pythonagent/__init__.py +22 -0
- pythonagent/agent/__init__.py +219 -0
- pythonagent/agent/internal/__init__.py +1 -0
- pythonagent/agent/internal/agent.py +1651 -0
- pythonagent/agent/internal/framesinfo.py +152 -0
- pythonagent/agent/internal/heap_dump.py +39 -0
- pythonagent/agent/internal/intercept_module.py +70 -0
- pythonagent/agent/internal/logs.py +122 -0
- pythonagent/agent/internal/metadata/__init__.py +0 -0
- pythonagent/agent/internal/metadata/agent_meta_data.py +276 -0
- pythonagent/agent/internal/proc_compat.py +75 -0
- pythonagent/agent/internal/profile.py +47 -0
- pythonagent/agent/internal/provider.py +83 -0
- pythonagent/agent/internal/thread_dump.py +85 -0
- pythonagent/agent/internal/udp.py +245 -0
- pythonagent/agent/internal/udp_message.py +800 -0
- pythonagent/agent/probes/Instrumentation/__init__.py +340 -0
- pythonagent/agent/probes/Instrumentation/find.py +243 -0
- pythonagent/agent/probes/Instrumentation/module_version_resolver.py +155 -0
- pythonagent/agent/probes/Instrumentation/new_parser.py +64 -0
- pythonagent/agent/probes/Instrumentation/parser.py +129 -0
- pythonagent/agent/probes/__init__.py +219 -0
- pythonagent/agent/probes/base.py +303 -0
- pythonagent/agent/probes/cache/__init__.py +51 -0
- pythonagent/agent/probes/cache/redis.py +119 -0
- pythonagent/agent/probes/cache/redis_asyncio.py +83 -0
- pythonagent/agent/probes/coroutines/__init__.py +1 -0
- pythonagent/agent/probes/coroutines/asyncio.py +63 -0
- pythonagent/agent/probes/elasticdb/__init__.py +7 -0
- pythonagent/agent/probes/elasticdb/aelastic.py +54 -0
- pythonagent/agent/probes/frameworks/__init__.py +27 -0
- pythonagent/agent/probes/frameworks/agentprofiler.py +105 -0
- pythonagent/agent/probes/frameworks/aiohttp_web.py +155 -0
- pythonagent/agent/probes/frameworks/aisess.py +151 -0
- pythonagent/agent/probes/frameworks/asgi.py +340 -0
- pythonagent/agent/probes/frameworks/bottle.py +27 -0
- pythonagent/agent/probes/frameworks/cherry.py +25 -0
- pythonagent/agent/probes/frameworks/django.py +128 -0
- pythonagent/agent/probes/frameworks/falcon.py +21 -0
- pythonagent/agent/probes/frameworks/fastapi.py +35 -0
- pythonagent/agent/probes/frameworks/flask.py +30 -0
- pythonagent/agent/probes/frameworks/pyramid.py +56 -0
- pythonagent/agent/probes/frameworks/test.py +108 -0
- pythonagent/agent/probes/frameworks/tornado_async_web.py +117 -0
- pythonagent/agent/probes/frameworks/tornado_web.py +133 -0
- pythonagent/agent/probes/frameworks/wsgi.py +353 -0
- pythonagent/agent/probes/grpc/__init__.py +76 -0
- pythonagent/agent/probes/grpc/client_interceptor.py +132 -0
- pythonagent/agent/probes/grpc/server_interceptor.py +129 -0
- pythonagent/agent/probes/havoc/__init__.py +0 -0
- pythonagent/agent/probes/havoc/custom_memory_stress.py +186 -0
- pythonagent/agent/probes/havoc/custom_thread_stress.py +187 -0
- pythonagent/agent/probes/havoc/havoc_constants.py +218 -0
- pythonagent/agent/probes/havoc/havoc_manager.py +981 -0
- pythonagent/agent/probes/http/__init__.py +49 -0
- pythonagent/agent/probes/http/aiohttp_client.py +59 -0
- pythonagent/agent/probes/http/boto.py +12 -0
- pythonagent/agent/probes/http/httplib.py +110 -0
- pythonagent/agent/probes/http/httpx_client.py +116 -0
- pythonagent/agent/probes/http/requests.py +15 -0
- pythonagent/agent/probes/http/tornado_httpclient.py +85 -0
- pythonagent/agent/probes/http/urllib3.py +16 -0
- pythonagent/agent/probes/langchain/__init__.py +21 -0
- pythonagent/agent/probes/langchain/base_tool.py +95 -0
- pythonagent/agent/probes/langchain/langchain_community.py +136 -0
- pythonagent/agent/probes/langchain/langchain_core.py +32 -0
- pythonagent/agent/probes/langchain/langchain_openai.py +110 -0
- pythonagent/agent/probes/logging/__init__.py +106 -0
- pythonagent/agent/probes/message_brokers/__init__.py +4 -0
- pythonagent/agent/probes/message_brokers/pika.py +126 -0
- pythonagent/agent/probes/mongodb/__init__.py +6 -0
- pythonagent/agent/probes/mongodb/pymongo.py +286 -0
- pythonagent/agent/probes/openai/__init__.py +3 -0
- pythonagent/agent/probes/openai/openai.py +797 -0
- pythonagent/agent/probes/span.py +101 -0
- pythonagent/agent/probes/sql/__init__.py +13 -0
- pythonagent/agent/probes/sql/botocores3.py +51 -0
- pythonagent/agent/probes/sql/dbapi.py +285 -0
- pythonagent/agent/probes/sql/dynamodb.py +90 -0
- pythonagent/agent/probes/sql/mysql_connector.py +24 -0
- pythonagent/agent/probes/sql/mysql_connector_cext.py +24 -0
- pythonagent/agent/probes/sql/mysqldb.py +43 -0
- pythonagent/agent/probes/sql/psycopg2.py +174 -0
- pythonagent/agent/probes/sql/pymysql.py +25 -0
- pythonagent/bootstrap/__init__.py +0 -0
- pythonagent/bootstrap/cav_gunicorn.py +26 -0
- pythonagent/bootstrap/cavagent_lambda_wrapper.py +291 -0
- pythonagent/bootstrap/run.py +47 -0
- pythonagent/bootstrap/sitecustomize.py +287 -0
- pythonagent/cavisson/netdiagnostics/CavAgent/instrumentationprofile.json +26 -0
- pythonagent/cavisson/netdiagnostics/CavAgent/interceptor_points.txt +29 -0
- pythonagent/cavisson/netdiagnostics/python/CavAgent/instrumentationprofile.json +42 -0
- pythonagent/cavisson/netdiagnostics/python/CavAgent/interceptor_points.txt +29 -0
- pythonagent/cavisson/netdiagnostics/python/config/ndsettings.conf +6 -0
- pythonagent/config.py +279 -0
- pythonagent/find.py +72 -0
- pythonagent/find_mod_cls_name.py +54 -0
- pythonagent/lang.py +131 -0
- pythonagent/lib.py +91 -0
- pythonagent/main/__init__.py +0 -0
- pythonagent/main/pytrace/__init__.py +79 -0
- pythonagent/main/pytrace/commands/__init__.py +0 -0
- pythonagent/main/pytrace/commands/auto_discovery.py +25 -0
- pythonagent/main/pytrace/commands/run.py +401 -0
- pythonagent/main/pytrace/pytrace.py +133 -0
- pythonagent/main/wsgi.py +6 -0
- pythonagent/main.py +27 -0
- pythonagent/run.py +46 -0
- pythonagent/sqins.py +8 -0
- pythonagent/test.py +73 -0
- pythonagent/utils.py +168 -0
- pythonagent/vendor/__init__.py +0 -0
- pythonagent/vendor/pympler/__init__.py +1 -0
- pythonagent/vendor/pympler/asizeof.py +2810 -0
- pythonagent/vendor/pympler/charts.py +62 -0
- pythonagent/vendor/pympler/classtracker.py +590 -0
- pythonagent/vendor/pympler/classtracker_stats.py +780 -0
- pythonagent/vendor/pympler/garbagegraph.py +80 -0
- pythonagent/vendor/pympler/mprofile.py +97 -0
- pythonagent/vendor/pympler/muppy.py +275 -0
- pythonagent/vendor/pympler/panels.py +115 -0
- pythonagent/vendor/pympler/process.py +238 -0
- pythonagent/vendor/pympler/py.typed +0 -0
- pythonagent/vendor/pympler/refbrowser.py +451 -0
- pythonagent/vendor/pympler/refgraph.py +350 -0
- pythonagent/vendor/pympler/summary.py +321 -0
- pythonagent/vendor/pympler/tracker.py +267 -0
- pythonagent/vendor/pympler/util/__init__.py +0 -0
- pythonagent/vendor/pympler/util/bottle.py +3809 -0
- pythonagent/vendor/pympler/util/compat.py +23 -0
- pythonagent/vendor/pympler/util/stringutils.py +77 -0
- pythonagent/vendor/pympler/web.py +346 -0
- pythonagent/vendor/werkzeug/__init__.py +20 -0
- pythonagent/vendor/werkzeug/_compat.py +228 -0
- pythonagent/vendor/werkzeug/_internal.py +473 -0
- pythonagent/vendor/werkzeug/_reloader.py +341 -0
- pythonagent/vendor/werkzeug/datastructures.py +3120 -0
- pythonagent/vendor/werkzeug/debug/__init__.py +498 -0
- pythonagent/vendor/werkzeug/debug/console.py +218 -0
- pythonagent/vendor/werkzeug/debug/repr.py +297 -0
- pythonagent/vendor/werkzeug/debug/tbtools.py +628 -0
- pythonagent/vendor/werkzeug/exceptions.py +829 -0
- pythonagent/vendor/werkzeug/filesystem.py +64 -0
- pythonagent/vendor/werkzeug/formparser.py +584 -0
- pythonagent/vendor/werkzeug/http.py +1307 -0
- pythonagent/vendor/werkzeug/local.py +420 -0
- pythonagent/vendor/werkzeug/middleware/__init__.py +25 -0
- pythonagent/vendor/werkzeug/middleware/dispatcher.py +66 -0
- pythonagent/vendor/werkzeug/middleware/http_proxy.py +219 -0
- pythonagent/vendor/werkzeug/middleware/lint.py +408 -0
- pythonagent/vendor/werkzeug/middleware/profiler.py +132 -0
- pythonagent/vendor/werkzeug/middleware/proxy_fix.py +169 -0
- pythonagent/vendor/werkzeug/middleware/shared_data.py +293 -0
- pythonagent/vendor/werkzeug/posixemulation.py +117 -0
- pythonagent/vendor/werkzeug/routing.py +2210 -0
- pythonagent/vendor/werkzeug/security.py +249 -0
- pythonagent/vendor/werkzeug/serving.py +1117 -0
- pythonagent/vendor/werkzeug/test.py +1123 -0
- pythonagent/vendor/werkzeug/testapp.py +241 -0
- pythonagent/vendor/werkzeug/urls.py +1138 -0
- pythonagent/vendor/werkzeug/useragents.py +202 -0
- pythonagent/vendor/werkzeug/utils.py +778 -0
- pythonagent/vendor/werkzeug/wrappers/__init__.py +36 -0
- pythonagent/vendor/werkzeug/wrappers/accept.py +50 -0
- pythonagent/vendor/werkzeug/wrappers/auth.py +33 -0
- pythonagent/vendor/werkzeug/wrappers/base_request.py +673 -0
- pythonagent/vendor/werkzeug/wrappers/base_response.py +700 -0
- pythonagent/vendor/werkzeug/wrappers/common_descriptors.py +341 -0
- pythonagent/vendor/werkzeug/wrappers/cors.py +100 -0
- pythonagent/vendor/werkzeug/wrappers/etag.py +304 -0
- pythonagent/vendor/werkzeug/wrappers/json.py +145 -0
- pythonagent/vendor/werkzeug/wrappers/request.py +49 -0
- pythonagent/vendor/werkzeug/wrappers/response.py +84 -0
- pythonagent/vendor/werkzeug/wrappers/user_agent.py +14 -0
- pythonagent/vendor/werkzeug/wsgi.py +1000 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: cavisson-pythonagent
|
|
3
|
+
Version: 0.0.1
|
|
4
|
+
Summary: A small example package
|
|
5
|
+
Home-page: https://github.com/pypa/sampleproject
|
|
6
|
+
Author: Cavisson System
|
|
7
|
+
Author-email: pythonagent@cavisson.com
|
|
8
|
+
Classifier: Programming Language :: Python :: 2
|
|
9
|
+
Classifier: Programming Language :: Python :: 2.7
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Classifier: Programming Language :: Python :: 3.6
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.7
|
|
13
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
14
|
+
Classifier: Operating System :: OS Independent
|
|
15
|
+
Requires-Python: >=2.6, !=3.0.*, !=3.1.*, !=3.2.*
|
|
16
|
+
Description-Content-Type: text/markdown
|
|
17
|
+
License-File: LICENSE
|
|
18
|
+
Dynamic: author
|
|
19
|
+
Dynamic: author-email
|
|
20
|
+
Dynamic: classifier
|
|
21
|
+
Dynamic: description
|
|
22
|
+
Dynamic: description-content-type
|
|
23
|
+
Dynamic: home-page
|
|
24
|
+
Dynamic: license-file
|
|
25
|
+
Dynamic: requires-python
|
|
26
|
+
Dynamic: summary
|
|
27
|
+
|
|
28
|
+
# Example Package
|
|
29
|
+
|
|
30
|
+
This is a simple example package. You can use
|
|
31
|
+
[Github-flavored Markdown](https://guides.github.com/features/mastering-markdown/)
|
|
32
|
+
to write your content.
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
cavisson_pythonagent-0.0.1.dist-info/licenses/LICENSE,sha256=7EI8xVBu6h_7_JlVw-yPhhOZlpY9hP8wal7kHtqKT_E,1074
|
|
2
|
+
pythonagent/__init__.py,sha256=etxDiPuXwuVOVPqzoG6tpJNQVY1sx6OfzTDmgcHDk3s,567
|
|
3
|
+
pythonagent/config.py,sha256=QXoHsWfDd1SxYAT-Eaj6PEfV0o2GFux9K-qNxP2VXW4,7640
|
|
4
|
+
pythonagent/find.py,sha256=oW67zyz53FYVzKTTDg0BxIlaI_B1WivUbc7kHVRx5m8,2368
|
|
5
|
+
pythonagent/find_mod_cls_name.py,sha256=XSJB-7QcqhaoYhXiuMejlmsCzsa76w7gn4WsOP20d3A,1348
|
|
6
|
+
pythonagent/lang.py,sha256=hIvlfZc9MuoznW7jg-r673YsupIK29QI3PYTBd2gzp4,3908
|
|
7
|
+
pythonagent/lib.py,sha256=ihFHmLmXITuNC6h3aP_QRcWnlSaHllLcWk7bEQsbLmQ,2553
|
|
8
|
+
pythonagent/main.py,sha256=rOHEpD_78Op1QI4e98QKrxGCAbQROZdMiJh1DwMnxDA,632
|
|
9
|
+
pythonagent/run.py,sha256=KXbOIa0bYMKwFcIkD71Nn_PCGHo81BpmBD_Snt3_F44,1241
|
|
10
|
+
pythonagent/sqins.py,sha256=o_BNSNlkezvdy7SuWIQzXdO2uqWy90ONoUK5MxmTEo0,650
|
|
11
|
+
pythonagent/test.py,sha256=rINsfqexJy7pZkMWM3w_6aX77mzZYOVaw48oS5PWVeg,3167
|
|
12
|
+
pythonagent/utils.py,sha256=2Trh7Ahr4bVgl0ZiUdRwz3QgY48kj8GcGKuXblyxQtk,5505
|
|
13
|
+
pythonagent/agent/__init__.py,sha256=gCeob6LW0IgrDE1FeOnT33aFdb1nJOAHf2R5to9rfGY,7056
|
|
14
|
+
pythonagent/agent/internal/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
|
15
|
+
pythonagent/agent/internal/agent.py,sha256=903JKCxv0mcV1GS0RXmDizoyecj1hjUm-DE8z0eifAE,65424
|
|
16
|
+
pythonagent/agent/internal/framesinfo.py,sha256=tgg0b6CitnDaCY3QRX17NZRrArI8FR-d5xTSjR4fCP4,4342
|
|
17
|
+
pythonagent/agent/internal/heap_dump.py,sha256=SDLhiLiTMU_rjUMvwRMY4TrePjv5xMjUufNOO31Dyu4,1247
|
|
18
|
+
pythonagent/agent/internal/intercept_module.py,sha256=5Ny5QEaVI5nHCVW1U66HVEl4Zb4RPdTbG8r1gLTCOHw,3028
|
|
19
|
+
pythonagent/agent/internal/logs.py,sha256=F0jBpSOG_S5R7wPmp1AiT7tcAWbV7nM-EORNGOd-x9I,3990
|
|
20
|
+
pythonagent/agent/internal/proc_compat.py,sha256=1gQ6-nHJgc5_H84e-xXgPWu0uWwah6YBnJ2AttHJvuE,2282
|
|
21
|
+
pythonagent/agent/internal/profile.py,sha256=jukCQazwrRA9IKKbdGLIr0cqrHyKAov08_QK3jRAnKw,1474
|
|
22
|
+
pythonagent/agent/internal/provider.py,sha256=H99xt6psMW2PkdbpPU2PLKo5dW7-FNBxIiNGXLwI5pQ,1686
|
|
23
|
+
pythonagent/agent/internal/thread_dump.py,sha256=HM9FlojAksZMl7vH1MzzppAcI6M5HKkHg2496ak5-Zo,2534
|
|
24
|
+
pythonagent/agent/internal/udp.py,sha256=lsOPnsliI5T1_8KHYQRCVBIMRRuuAh551wY1GJs16Xc,9280
|
|
25
|
+
pythonagent/agent/internal/udp_message.py,sha256=llaHHpaE97PSyIHeMWLWs2M5lndQvaN2YQ1bcyuuKtg,38593
|
|
26
|
+
pythonagent/agent/internal/metadata/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
27
|
+
pythonagent/agent/internal/metadata/agent_meta_data.py,sha256=_LMwwQ9waR7U7pAKPxV0Fbnb-54-TFkRbXZmO1aZ4uw,13333
|
|
28
|
+
pythonagent/agent/probes/__init__.py,sha256=Y43RmOEX5AUak6jfdHZQcGrza91DNdkHW-KYOixzDgY,8969
|
|
29
|
+
pythonagent/agent/probes/base.py,sha256=Px4tVj5HxXuXwNG6-AWzo-gbFITwXQXp7zo2pbg5eUQ,12800
|
|
30
|
+
pythonagent/agent/probes/span.py,sha256=LT_u85ONcWWXUx8TNO7uViqXC50bHRELKR680pzYg6w,2721
|
|
31
|
+
pythonagent/agent/probes/Instrumentation/__init__.py,sha256=2rYroIfWimW-NpRd0FnjlGeoh7QTNaftWSRaw7xCgCM,17537
|
|
32
|
+
pythonagent/agent/probes/Instrumentation/find.py,sha256=BIi7dqCaSJgfCNOK3XH4--2YYty9i8KYgCocFSYThYE,8737
|
|
33
|
+
pythonagent/agent/probes/Instrumentation/module_version_resolver.py,sha256=ZboxegGpOR4lkU3w5OGaYJFl-XpA79Go9ApOyTYqALY,5456
|
|
34
|
+
pythonagent/agent/probes/Instrumentation/new_parser.py,sha256=yk4l87sIlCAmAQIF9CSUtUhexBZ--IcT3zLlCQq2KWo,1819
|
|
35
|
+
pythonagent/agent/probes/Instrumentation/parser.py,sha256=oi8tAPh8OQoNufC03El-EI0wzVL6z41QgduQiLoBdRU,4026
|
|
36
|
+
pythonagent/agent/probes/cache/__init__.py,sha256=3sxFcG3S3aahKN7wYvJKwQRYqQqEkQYzTZPA-230yZw,1550
|
|
37
|
+
pythonagent/agent/probes/cache/redis.py,sha256=-yKzrkLTubBgmYNKEqsOMkHb3kPvkvPtPtFwqPZ52L4,6173
|
|
38
|
+
pythonagent/agent/probes/cache/redis_asyncio.py,sha256=yqtyVVz23NalFrFiNggXbmL5WtElMPIq-61yTb2WU6Q,3541
|
|
39
|
+
pythonagent/agent/probes/coroutines/__init__.py,sha256=0sdnaZhgG5eFSU9AnT2uqSblEXfhh0-05ric4oXAh0c,39
|
|
40
|
+
pythonagent/agent/probes/coroutines/asyncio.py,sha256=2nY-5syHfrWtsdpGs7VcyHZoRnu5ALycCVeDauZKvBc,2086
|
|
41
|
+
pythonagent/agent/probes/elasticdb/__init__.py,sha256=xuvW75dLjC2Jp0VixChZm27Vt_E-_wrO7SF2DffUxXM,116
|
|
42
|
+
pythonagent/agent/probes/elasticdb/aelastic.py,sha256=SZah7oCga_5CJS6ZDkcT5BfI62CC36_SF9NjXxCS87I,2600
|
|
43
|
+
pythonagent/agent/probes/frameworks/__init__.py,sha256=isoyir_EV6OSlmslLcLa1_NsW_uAHAURSqsOf5zzNPo,836
|
|
44
|
+
pythonagent/agent/probes/frameworks/agentprofiler.py,sha256=V8lFFaEivTo-YsdSBmuY5r1HQdrvHP3cjUkLAUn8YCo,4030
|
|
45
|
+
pythonagent/agent/probes/frameworks/aiohttp_web.py,sha256=R2Duk9tTBCO_3PgoPJOXSHK4kKS8MZP5oLfWKutpXZg,6431
|
|
46
|
+
pythonagent/agent/probes/frameworks/aisess.py,sha256=u3UeuODPtAi-1SvG49GQEzWwolS5u6ZTiEMYo_-6xkg,6254
|
|
47
|
+
pythonagent/agent/probes/frameworks/asgi.py,sha256=v_4Rfns2fGnpM-84HFGvh9EO038KL5J83wHLZ-WOxN0,15684
|
|
48
|
+
pythonagent/agent/probes/frameworks/bottle.py,sha256=GPurXNe_abTQj8ENiI93Amyzodr9FUBLe7lOw4lBKnY,1011
|
|
49
|
+
pythonagent/agent/probes/frameworks/cherry.py,sha256=C8x-Nvd86qhBFY2KP-HWML1_QtqKsAUE_AeTRXl6joY,1124
|
|
50
|
+
pythonagent/agent/probes/frameworks/django.py,sha256=jWkYpttD-1Wo-NaB9Oh5JKgiwgoDygFSrZVDf4EOZD8,5529
|
|
51
|
+
pythonagent/agent/probes/frameworks/falcon.py,sha256=AE9c4WYxRluJlXnzlswQQxjxxfQ5zV4SoF0Lp49nJR8,851
|
|
52
|
+
pythonagent/agent/probes/frameworks/fastapi.py,sha256=uz1bvN_xD_NQgrfDJ76FVVtCqwLZxn6BJ4NhwSN0bEU,1138
|
|
53
|
+
pythonagent/agent/probes/frameworks/flask.py,sha256=2hf6vWa86-x2-UalQGSNl1UkmCIPRKtSs2TcSastQy0,1169
|
|
54
|
+
pythonagent/agent/probes/frameworks/pyramid.py,sha256=gvcovp3bZbKJP94r7yYgjauHJ1FCAfQ0IGTkuKiK0R8,1494
|
|
55
|
+
pythonagent/agent/probes/frameworks/test.py,sha256=7sunu5XrS5DbJbGTTMa_qNyVUuOgIOKdrQA79aEEQN4,3239
|
|
56
|
+
pythonagent/agent/probes/frameworks/tornado_async_web.py,sha256=NTqeF2l3OHD_1oZaXLIzFGwQsuPUqMesfaTGmytgToA,5414
|
|
57
|
+
pythonagent/agent/probes/frameworks/tornado_web.py,sha256=vj8DXEEnRcZdQsFoH_xwX9ZTIpbL6wkQpD9RU_lMols,7243
|
|
58
|
+
pythonagent/agent/probes/frameworks/wsgi.py,sha256=sNXd3PgEILU_gdH0iGo5p1Pu0uPRBVVb6GFjyPnxGuI,15852
|
|
59
|
+
pythonagent/agent/probes/grpc/__init__.py,sha256=LfCplwQpe4BwXQFuQPSjYuj1DqqGEhgFg1HOEgxyR-U,2836
|
|
60
|
+
pythonagent/agent/probes/grpc/client_interceptor.py,sha256=MFmMq6t804mkLOxClZ98ipQ3q9VQW-so85fdX7IqBIM,5735
|
|
61
|
+
pythonagent/agent/probes/grpc/server_interceptor.py,sha256=fkOlOaXHr-1cCoKtpwTQKbpWQ3PUFS6DylfNXZlKwZQ,5576
|
|
62
|
+
pythonagent/agent/probes/havoc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
63
|
+
pythonagent/agent/probes/havoc/custom_memory_stress.py,sha256=8_Kzq6FamkakMZ-XGlzcycz3HQ7AuHtMc_Xe1lAlI_M,7579
|
|
64
|
+
pythonagent/agent/probes/havoc/custom_thread_stress.py,sha256=OGscgANsx4MQlW3LFjCUwDrOWd4MFuDWzTtQscY-aRM,8929
|
|
65
|
+
pythonagent/agent/probes/havoc/havoc_constants.py,sha256=gMeTKTbvC-BUXyGR8kS7V4s-kXzwckxo6AhY7ogP5NM,5598
|
|
66
|
+
pythonagent/agent/probes/havoc/havoc_manager.py,sha256=BkveZO0_4NsvP5Uokn4X6Ykxemz4xO4PeOc7cMw1eWQ,49116
|
|
67
|
+
pythonagent/agent/probes/http/__init__.py,sha256=Ciy7d2N3ypK2p4RX0ecJQsDm-rBIPDhLOwLg3aqg54w,1886
|
|
68
|
+
pythonagent/agent/probes/http/aiohttp_client.py,sha256=ImtDU_u2jB8kiqzc3I1Sf-nK_kYwEIEfWkzcjiOGysk,2563
|
|
69
|
+
pythonagent/agent/probes/http/boto.py,sha256=9Tq-KrBP8-HU1IvEPn4_jGW4TTTWCmJTOzh8yA9p8aY,278
|
|
70
|
+
pythonagent/agent/probes/http/httplib.py,sha256=71ZZCfZnbpb8xFD-YRztFPONXrZlOIW6GQ9JmBzH_zc,5342
|
|
71
|
+
pythonagent/agent/probes/http/httpx_client.py,sha256=LIdNI18Zg6nfXNM9b4M-wsYBCW-pRuxC6Pw2yz2jhys,4933
|
|
72
|
+
pythonagent/agent/probes/http/requests.py,sha256=ieGkBNiwieiulkcxRa6G330oKIknAA8LTxvBc4tzDyI,481
|
|
73
|
+
pythonagent/agent/probes/http/tornado_httpclient.py,sha256=q4Qa32tidY93Nr7w6__IzjlxZaLs0dtG3DTUvwOH1co,3309
|
|
74
|
+
pythonagent/agent/probes/http/urllib3.py,sha256=Og9Rdo_nMHBaO9SLGBCVPKcbBO5taNK8WBm2EoA9eDI,531
|
|
75
|
+
pythonagent/agent/probes/langchain/__init__.py,sha256=E72qaspcV18YgBHM-tu_cw7jN3tvZ9BQrZL9SpBLrXY,900
|
|
76
|
+
pythonagent/agent/probes/langchain/base_tool.py,sha256=2AH9eX-dq07YUg-iR2prAR5EwbG3FIyMkUzinuNgE9Q,4516
|
|
77
|
+
pythonagent/agent/probes/langchain/langchain_community.py,sha256=JzphYLRLxzOS0uwBPIhUslh1OOwRmEjsO2wWFdvW0y0,6472
|
|
78
|
+
pythonagent/agent/probes/langchain/langchain_core.py,sha256=qF3nU79Z-jTeqJMEEy8fMtKI35baqXqYCsctkA5PpCs,1620
|
|
79
|
+
pythonagent/agent/probes/langchain/langchain_openai.py,sha256=C-_-UMjWP3yWz8QfBCCCgzS9Hzvb4lTC_qaRE0SeZ5k,5437
|
|
80
|
+
pythonagent/agent/probes/logging/__init__.py,sha256=Y0VvWTbQPAVTiJrTLLEmB4oxerAToSP0ZiZhAAXK6sw,4181
|
|
81
|
+
pythonagent/agent/probes/message_brokers/__init__.py,sha256=-DpHXekGh1tYEajuKXs1YxNAcYLolooLu38jB4j5nRM,64
|
|
82
|
+
pythonagent/agent/probes/message_brokers/pika.py,sha256=-SHTLpO8x494Ul-R6AlucCdhfFJZ6P0Nx0WZMRfnLBM,5458
|
|
83
|
+
pythonagent/agent/probes/mongodb/__init__.py,sha256=xBKovdRDNn0uLDYZ_cJyvuNQfS84Uo63QCuiwgnOYIo,114
|
|
84
|
+
pythonagent/agent/probes/mongodb/pymongo.py,sha256=vzlyQwlFzq_bCFc6N0osYaaekNubYHCbPuHWJT2_YhQ,14084
|
|
85
|
+
pythonagent/agent/probes/openai/__init__.py,sha256=ZVZZ3Hnp1jVoOx_5Dt86yZYlCR4QzSsAwIo6bVl_tMM,68
|
|
86
|
+
pythonagent/agent/probes/openai/openai.py,sha256=GLkT27sFqsLQiv_A80Sc0bc3iYG3m8GLBBO2gziC6Io,34343
|
|
87
|
+
pythonagent/agent/probes/sql/__init__.py,sha256=Dx4hy1bUid0flij1ia1eyF2VzzXAh1vAL23jfLYuOzE,303
|
|
88
|
+
pythonagent/agent/probes/sql/botocores3.py,sha256=z8uQBsXWdUt4aCwRMOqH6zh9kfz31yxZxjncXu9Xl-o,2000
|
|
89
|
+
pythonagent/agent/probes/sql/dbapi.py,sha256=78yNS4118x2Z21YFsyi0mvtLlc_zNAW4WzAiTd5MiaY,13614
|
|
90
|
+
pythonagent/agent/probes/sql/dynamodb.py,sha256=Yl9ISv0z2mhoHuO-hj02VuDifWo6bKTtIGjplMS4OCM,3581
|
|
91
|
+
pythonagent/agent/probes/sql/mysql_connector.py,sha256=r72yTGs2vGpGQYYuFokYVIaLvdSD4mZaa-D3H4M3sBs,785
|
|
92
|
+
pythonagent/agent/probes/sql/mysql_connector_cext.py,sha256=WR4zWABFwzuOokORjgAsXK8HzLOmuuJHZCbiGnF42Q8,793
|
|
93
|
+
pythonagent/agent/probes/sql/mysqldb.py,sha256=Wv1ZjWTPVN95-ntF-lf8OqIL-bz0El48dsG8HcD0qiY,1920
|
|
94
|
+
pythonagent/agent/probes/sql/psycopg2.py,sha256=Ez08tkbLkMi9L2qOG6yaR7jCQ-zVNGS_enKg6dj5wnA,5636
|
|
95
|
+
pythonagent/agent/probes/sql/pymysql.py,sha256=8CtT8TOlA4xcjachubmEc-GBYHF-eBuiCF4vGx2UJQA,840
|
|
96
|
+
pythonagent/bootstrap/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
97
|
+
pythonagent/bootstrap/cav_gunicorn.py,sha256=BmjIY76d-RZ-xOgFJ9GnrAH7Kk_AtGvWwMWx58UEdoE,1146
|
|
98
|
+
pythonagent/bootstrap/cavagent_lambda_wrapper.py,sha256=-CR5eiscq1PY5jU7s7q6vqp8gM_C4x-KsuFwwwrFPlQ,9182
|
|
99
|
+
pythonagent/bootstrap/run.py,sha256=8NV_4TFBr11AoEzdc1_4lfU0WkXEyBfhWt5LR-w9B9Q,1243
|
|
100
|
+
pythonagent/bootstrap/sitecustomize.py,sha256=99yAMratUf1UrzAFACVUhxEnJ7BjeEDSCoGGcDIA8PA,11398
|
|
101
|
+
pythonagent/cavisson/netdiagnostics/CavAgent/instrumentationprofile.json,sha256=7ze4_vs8HYjublraONNjI9nkSWls84yM5dVcSl4Klis,346
|
|
102
|
+
pythonagent/cavisson/netdiagnostics/CavAgent/interceptor_points.txt,sha256=jcFEn5J7HZCGHnHCdGAOQ0ulHGyyvVozcffXV97nJBQ,346
|
|
103
|
+
pythonagent/cavisson/netdiagnostics/python/CavAgent/instrumentationprofile.json,sha256=d8jNmEjr1io14hnkk0Rl9l3azMOIyh65T-46nS1B7xk,581
|
|
104
|
+
pythonagent/cavisson/netdiagnostics/python/CavAgent/interceptor_points.txt,sha256=jcFEn5J7HZCGHnHCdGAOQ0ulHGyyvVozcffXV97nJBQ,346
|
|
105
|
+
pythonagent/cavisson/netdiagnostics/python/config/ndsettings.conf,sha256=cy-2VI54Jvix1vmydEZf1SwEmn1Ktdyc3Ua9YKRRnOI,111
|
|
106
|
+
pythonagent/main/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
107
|
+
pythonagent/main/wsgi.py,sha256=kRMzPpM4PQAFzCe2D6ZQAeLqsuC3Bp21AtHkBU-Ppkw,312
|
|
108
|
+
pythonagent/main/pytrace/__init__.py,sha256=TxircxbvpnXiifC-143RIc1SoelCA6r-OoD6hUak4gs,2205
|
|
109
|
+
pythonagent/main/pytrace/pytrace.py,sha256=EmK48vBopwL7olnnJrmbKbX647Y0ABTaHIN2J7UdsRo,3616
|
|
110
|
+
pythonagent/main/pytrace/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
111
|
+
pythonagent/main/pytrace/commands/auto_discovery.py,sha256=GqblOfbNhwYG22yNMIqgZR2M6H34iC-IXe44KGcVtYw,898
|
|
112
|
+
pythonagent/main/pytrace/commands/run.py,sha256=WikUHF99A3qWoQ6LEe5YzMtV1de1aMeoJEijZtmMNx8,14270
|
|
113
|
+
pythonagent/vendor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
114
|
+
pythonagent/vendor/pympler/__init__.py,sha256=NHNJCNKpUhz9Pp66avvm-g1TtJ_vX2luf489Gcd_rKk,20
|
|
115
|
+
pythonagent/vendor/pympler/asizeof.py,sha256=kEXKMbWF2ZFEbSQMHsqhVJ--5bQ4eYekSIszHSZGSz8,92116
|
|
116
|
+
pythonagent/vendor/pympler/charts.py,sha256=BiW6NACq9u1ZSOo47F6qirZJRlQpta5bnTQlkKJgXEc,2157
|
|
117
|
+
pythonagent/vendor/pympler/classtracker.py,sha256=rG6AjHPsbXxu-_H7LmO6E9491wuSiXeEBwHhzw9KDwE,22320
|
|
118
|
+
pythonagent/vendor/pympler/classtracker_stats.py,sha256=qci9irhk236CWKuwqCtt_MbNV3ZbwQOjVYxRHrDXrJI,28917
|
|
119
|
+
pythonagent/vendor/pympler/garbagegraph.py,sha256=6i_9P2KnNKSEAlJejPF4RjZ-GISi1s_typt0SlqzMQk,2604
|
|
120
|
+
pythonagent/vendor/pympler/mprofile.py,sha256=y2iX7_9qlvqLsfNgaanzHKlu3G2U_NvcAr9-AV5TG3w,3417
|
|
121
|
+
pythonagent/vendor/pympler/muppy.py,sha256=JRvrZl7KtbJVjJa_BNGbJfLjdzVQfNSp13QY3ELa8oQ,9037
|
|
122
|
+
pythonagent/vendor/pympler/panels.py,sha256=zSk92IlIqGup8gtZHITrmSYUgtLPw02jA7ru3XnHm1s,3665
|
|
123
|
+
pythonagent/vendor/pympler/process.py,sha256=gpUr_H63SUGe4Rgg2PsGmdYJlgqnjlgo7weTAPvNz5c,8334
|
|
124
|
+
pythonagent/vendor/pympler/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
125
|
+
pythonagent/vendor/pympler/refbrowser.py,sha256=7mb70HPoHN5-qtGyOmEUHy_nepdAwA2u7abbgrsZO38,15321
|
|
126
|
+
pythonagent/vendor/pympler/refgraph.py,sha256=UqJRNg-MtovT36YFVbTF3Zg49ot_93tbcDNhrF8pb3I,11947
|
|
127
|
+
pythonagent/vendor/pympler/summary.py,sha256=6_TowXPCjSUkrExcEDr1lcefvJ7oZzxgFAByfDhpa_g,10561
|
|
128
|
+
pythonagent/vendor/pympler/tracker.py,sha256=w1U5F3f80Cf--QglQ6fY4Ky5wJxzaK5_5h0iGvlQfo0,10406
|
|
129
|
+
pythonagent/vendor/pympler/web.py,sha256=EeBxujbjbmWxzZJ0o5ncF5y5Eoa_jVV3xJZbbmnqJEo,10967
|
|
130
|
+
pythonagent/vendor/pympler/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
131
|
+
pythonagent/vendor/pympler/util/bottle.py,sha256=iJVdWAfpOi2ksPZlyZtALczPj9aqqcNXrSXSClUCJwc,151993
|
|
132
|
+
pythonagent/vendor/pympler/util/compat.py,sha256=ZDuqwrXC-QGBGHV6KMVKy4RvB_v7BrNKwxF_gbao7Zs,469
|
|
133
|
+
pythonagent/vendor/pympler/util/stringutils.py,sha256=TcvYZhQPIhYyBlhtFBAgTlUKHaDstVpbu-v1UmY5G_E,2052
|
|
134
|
+
pythonagent/vendor/werkzeug/__init__.py,sha256=rb-yPiXOjTLbtDOl5fQp5hN7oBdaoXAoQ-slAAvfZAo,502
|
|
135
|
+
pythonagent/vendor/werkzeug/_compat.py,sha256=zjufTNrhQ8BgYSGSh-sVu6iW3r3O9WzjE9j-qJobx-g,6671
|
|
136
|
+
pythonagent/vendor/werkzeug/_internal.py,sha256=d_4AqheyS6dHMViwdc0drFrjs67ZzT6Ej2gWf-Z-Iys,14351
|
|
137
|
+
pythonagent/vendor/werkzeug/_reloader.py,sha256=I3mg3oRQ0lLzl06oEoVopN3bN7CtINuuUQdqDcmTnEs,11531
|
|
138
|
+
pythonagent/vendor/werkzeug/datastructures.py,sha256=AonxOcwU0TPMEzfKF1368ySULxHgxE-JE-DEAGdo2ts,100480
|
|
139
|
+
pythonagent/vendor/werkzeug/exceptions.py,sha256=Y6acy0-2F0-COo_knTrMS8Xud_x04E0i0gJ6ANyGiXM,25245
|
|
140
|
+
pythonagent/vendor/werkzeug/filesystem.py,sha256=HzKl-j0Hd8Jl66j778UbPTAYNnY6vUZgYLlBZ0e7uw0,2101
|
|
141
|
+
pythonagent/vendor/werkzeug/formparser.py,sha256=Sto0jZid9im9ZVIf56vilCdyX-arK33wSftkYsLCnzo,21788
|
|
142
|
+
pythonagent/vendor/werkzeug/http.py,sha256=KVRV3yFK14PJeI56qClEq4qxFdvKUQVy4C_dwuWz9_Q,43107
|
|
143
|
+
pythonagent/vendor/werkzeug/local.py,sha256=LvZMEB7_f4ynvKQJD5tX00VTvP0CqaNsfElh_ZhDMoQ,14409
|
|
144
|
+
pythonagent/vendor/werkzeug/posixemulation.py,sha256=gSSiv1SCmOyzOM_nq1ZaZCtxP__C5MeDJl_4yXJmi4Q,3541
|
|
145
|
+
pythonagent/vendor/werkzeug/routing.py,sha256=q6_TYNMUw7SuWYFc7TzJ-6Qpxh_gq9Iv4-7DSDbacc0,79095
|
|
146
|
+
pythonagent/vendor/werkzeug/security.py,sha256=81149MplFq7-hD4RK4sKp9kzXXejjV9D4lWBzaRyeQ8,8106
|
|
147
|
+
pythonagent/vendor/werkzeug/serving.py,sha256=BKwcmI__XqQBgguO45evn9DBwJXkjkIQvLyB6Hs0vBo,38713
|
|
148
|
+
pythonagent/vendor/werkzeug/test.py,sha256=GJ9kxTMSJ-nB7kfGtxuROr9JGmXxDRev-2U1SkeUJGE,39564
|
|
149
|
+
pythonagent/vendor/werkzeug/testapp.py,sha256=bHekqMsqRfVxwgFbvOMem-DYa_sdB7R47yUXpt1RUTo,9329
|
|
150
|
+
pythonagent/vendor/werkzeug/urls.py,sha256=T8-hV_1vwhu6xhX93FwsHteK-W-kIE2orj5WoMf-WFw,39322
|
|
151
|
+
pythonagent/vendor/werkzeug/useragents.py,sha256=TSoGv5IOvP375eK5gLLpsLQCeUgTR6sO1WftmAP_YvM,5563
|
|
152
|
+
pythonagent/vendor/werkzeug/utils.py,sha256=kHsdBy4TvXtpmWLfKURISPaXn1TQQDOKdo26wSUN7oo,25270
|
|
153
|
+
pythonagent/vendor/werkzeug/wsgi.py,sha256=ZGk85NzRyQTzkYis-xl8V9ydJgfClBdStvhzDzER2mw,34367
|
|
154
|
+
pythonagent/vendor/werkzeug/debug/__init__.py,sha256=vH0G3WrL9slEH8m0OwntPCcALeShPbzE-3DW0uU3CFE,17308
|
|
155
|
+
pythonagent/vendor/werkzeug/debug/console.py,sha256=OATaO7KHYMqpbzIFe1HeW9Mnl3wZgA3jMQoGDPn5URc,5488
|
|
156
|
+
pythonagent/vendor/werkzeug/debug/repr.py,sha256=lIwuhbyrMwVe3P_cFqNyqzHL7P93TLKod7lw9clydEw,9621
|
|
157
|
+
pythonagent/vendor/werkzeug/debug/tbtools.py,sha256=2iJ8RURUZUSbopOIehy53LnVJWx47lsHN2V2l6hc7Wc,20363
|
|
158
|
+
pythonagent/vendor/werkzeug/middleware/__init__.py,sha256=f1SFZo67IlW4k1uqKzNHxYQlsakUS-D6KK_j0e3jjwQ,549
|
|
159
|
+
pythonagent/vendor/werkzeug/middleware/dispatcher.py,sha256=_-KoMzHtcISHS7ouWKAOraqlCLprdh83YOAn_8DjLp8,2240
|
|
160
|
+
pythonagent/vendor/werkzeug/middleware/http_proxy.py,sha256=lRjTdMmghHiZuZrS7_UJ3gZc-vlFizhBbFZ-XZPLwIA,7117
|
|
161
|
+
pythonagent/vendor/werkzeug/middleware/lint.py,sha256=0JEClF52QbWgDeFeQl7hzkZtebeJh8szE44EvyMFs3Y,12986
|
|
162
|
+
pythonagent/vendor/werkzeug/middleware/profiler.py,sha256=jLFGfr-yIXIEZfBgFKrrrSe8aG2x0bMXNYvvfG2CLOM,4490
|
|
163
|
+
pythonagent/vendor/werkzeug/middleware/proxy_fix.py,sha256=YigRXvqNZsCyEIrjq0b5juEbJ8MOO7bR9ofR7rkU8cc,6469
|
|
164
|
+
pythonagent/vendor/werkzeug/middleware/shared_data.py,sha256=II-PpzUhq30WBFKgmzkBMV3v2JQotmRkmTWwaNN8AyI,9618
|
|
165
|
+
pythonagent/vendor/werkzeug/wrappers/__init__.py,sha256=S4VioKAmF_av9Ec9zQvG71X1EOkYfPx1TYck9jyDiyY,1384
|
|
166
|
+
pythonagent/vendor/werkzeug/wrappers/accept.py,sha256=TIvjUc0g73fhTWX54wg_D9NNzKvpnG1X8u1w26tK1o8,1760
|
|
167
|
+
pythonagent/vendor/werkzeug/wrappers/auth.py,sha256=Pmn6iaGHBrUyHbJpW0lZhO_q9RVoAa5QalaTqcavdAI,1158
|
|
168
|
+
pythonagent/vendor/werkzeug/wrappers/base_request.py,sha256=BuCXgsBigocDJPDvUBA_gY4x3fuI-bIJvhIbSMo5iwo,26031
|
|
169
|
+
pythonagent/vendor/werkzeug/wrappers/base_response.py,sha256=cKf7bBoS_6zdK4ETGaEviWV8gy9eI0OHAEpisMAzTDE,27803
|
|
170
|
+
pythonagent/vendor/werkzeug/wrappers/common_descriptors.py,sha256=X2Ktd5zUWsmcd4ciaF62Dd8Lru9pLGP_XDUNukc8cXs,12829
|
|
171
|
+
pythonagent/vendor/werkzeug/wrappers/cors.py,sha256=XMbaCol4dWTGvb-dCJBoN0p3JX91v93AIAHd7tnB3L4,3466
|
|
172
|
+
pythonagent/vendor/werkzeug/wrappers/etag.py,sha256=XMXtyfByBsOjxwaX8U7ZtUY7JXkbQLP45oXZ0qkyTNs,12217
|
|
173
|
+
pythonagent/vendor/werkzeug/wrappers/json.py,sha256=HvK_A4NpO0sLqgb10sTJcoZydYOwyNiPCJPV7SVgcgE,4343
|
|
174
|
+
pythonagent/vendor/werkzeug/wrappers/request.py,sha256=QbHGqDpGPN684pnOPEokwkPESfm-NnfYM7ydOMxW_NI,1514
|
|
175
|
+
pythonagent/vendor/werkzeug/wrappers/response.py,sha256=Oqv8TMG_dnOKTq_V30ddgkO5B7IJhkVPODvm7cbhZ3c,2524
|
|
176
|
+
pythonagent/vendor/werkzeug/wrappers/user_agent.py,sha256=YJb-vr12cujG7sQMG9V89VsJa-03SWSenhg1W4cT0EY,435
|
|
177
|
+
cavisson_pythonagent-0.0.1.dist-info/METADATA,sha256=I6vDiMZ8VAWttgYB3facpws8_wXPybRG5EU2BZE8Ve4,1033
|
|
178
|
+
cavisson_pythonagent-0.0.1.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
|
|
179
|
+
cavisson_pythonagent-0.0.1.dist-info/top_level.txt,sha256=whl9EzXop1ENuAjA3kwLQ_V13MPi3r_ij7jNv0uoHzk,12
|
|
180
|
+
cavisson_pythonagent-0.0.1.dist-info/RECORD,,
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
Copyright (c) 2018 The Python Packaging Authority
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
5
|
+
in the Software without restriction, including without limitation the rights
|
|
6
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
7
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
8
|
+
furnished to do so, subject to the following conditions:
|
|
9
|
+
|
|
10
|
+
The above copyright notice and this permission notice shall be included in all
|
|
11
|
+
copies or substantial portions of the Software.
|
|
12
|
+
|
|
13
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
14
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
15
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
16
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
17
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
18
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
19
|
+
SOFTWARE.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
pythonagent
|
pythonagent/__init__.py
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
def methodwrapper(func):
|
|
4
|
+
import pythonagent.agent as agent
|
|
5
|
+
_agent = agent.get_agent_instance()
|
|
6
|
+
print(func.__module__)
|
|
7
|
+
fqm = str(func.__module__) +"."+ str(func.__name__)
|
|
8
|
+
bt = _agent.get_current_bt()
|
|
9
|
+
#bt = "000001"
|
|
10
|
+
def inner(*args, **kwargs):
|
|
11
|
+
try:
|
|
12
|
+
_agent.method_entry(bt, fqm)
|
|
13
|
+
except Exception as e:
|
|
14
|
+
print(e)
|
|
15
|
+
rc = func(*args, **kwargs)
|
|
16
|
+
try:
|
|
17
|
+
_agent.method_exit(bt, fqm, 200)
|
|
18
|
+
except Exception as e:
|
|
19
|
+
print(e)
|
|
20
|
+
return rc
|
|
21
|
+
|
|
22
|
+
return inner
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
|
|
2
|
+
from pythonagent import config
|
|
3
|
+
from pythonagent.agent.internal.logs import configure_logging
|
|
4
|
+
from pythonagent.agent.probes.Instrumentation.parser import create_method_json, create_method_array, create_method_list
|
|
5
|
+
#from pythonagent.agent.probes.Instrumentation.new_parser import create_module_list, create_method_list
|
|
6
|
+
#from pythonagent.agent.probes.Instrumentation.new_parser import create_method_list
|
|
7
|
+
|
|
8
|
+
import os
|
|
9
|
+
from pythonagent.lang import reload
|
|
10
|
+
from os.path import exists
|
|
11
|
+
|
|
12
|
+
'''
|
|
13
|
+
import os
|
|
14
|
+
path = os.path.dirname(config.__file__)
|
|
15
|
+
#print("Module path", path)
|
|
16
|
+
#os.chdir(path)
|
|
17
|
+
#print("Current working dir ==========================================",path)
|
|
18
|
+
|
|
19
|
+
f = open(os.path.join(path, 'agent/internal/intercept_module.py'), "a+")
|
|
20
|
+
f.truncate(0)
|
|
21
|
+
#cwd = os.getcwd() # Get the current working directory (cwd)
|
|
22
|
+
#files = os.listdir(cwd) # Get all the files in that directory
|
|
23
|
+
#print("Files in %r: %s" % (cwd, files))
|
|
24
|
+
|
|
25
|
+
infile = open(r'/tmp/CavAgent/interceptor_points.txt')
|
|
26
|
+
outfile = open(os.path.join(path, './test.py'))
|
|
27
|
+
temp = []
|
|
28
|
+
for x in infile:
|
|
29
|
+
if x.startswith('#'):
|
|
30
|
+
temp.append(x.lstrip('#').rstrip('\n'))
|
|
31
|
+
|
|
32
|
+
for line in outfile:
|
|
33
|
+
count=0
|
|
34
|
+
for y in temp:
|
|
35
|
+
if y in line and 'from' not in line:
|
|
36
|
+
f.write('#'+line)
|
|
37
|
+
count = 1
|
|
38
|
+
if count==0:
|
|
39
|
+
f.write(line)
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
infile.close()
|
|
43
|
+
outfile.close()
|
|
44
|
+
f.close()
|
|
45
|
+
'''
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
def entry_point_refresh():
|
|
49
|
+
#import os
|
|
50
|
+
path = os.path.dirname(config.__file__)
|
|
51
|
+
#print("Module path", path)
|
|
52
|
+
#os.chdir(path)
|
|
53
|
+
#print("Current working dir ==========================================",path)
|
|
54
|
+
|
|
55
|
+
try:
|
|
56
|
+
f = open(os.path.join(path, 'agent/internal/intercept_module.py'), "w+")
|
|
57
|
+
#f.truncate(0)
|
|
58
|
+
#cwd = os.getcwd() # Get the current working directory (cwd)
|
|
59
|
+
#files = os.listdir(cwd) # Get all the files in that directory
|
|
60
|
+
#print("Files in %r: %s" % (cwd, files))
|
|
61
|
+
|
|
62
|
+
infile = open(os.environ.get('NDHOME') + '/python/hooksettings/interceptor_points.txt')
|
|
63
|
+
outfile = open(os.path.join(path, './test.py'))
|
|
64
|
+
temp = []
|
|
65
|
+
for x in infile:
|
|
66
|
+
if x.startswith('#'):
|
|
67
|
+
temp.append(x.lstrip('#').rstrip('\n'))
|
|
68
|
+
|
|
69
|
+
for line in outfile:
|
|
70
|
+
count=0
|
|
71
|
+
for y in temp:
|
|
72
|
+
if y in line and 'from' not in line:
|
|
73
|
+
f.write('#'+line)
|
|
74
|
+
count = 1
|
|
75
|
+
if count==0:
|
|
76
|
+
f.write(line)
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
infile.close()
|
|
80
|
+
outfile.close()
|
|
81
|
+
f.close()
|
|
82
|
+
except:
|
|
83
|
+
pass
|
|
84
|
+
return 0
|
|
85
|
+
|
|
86
|
+
from pythonagent.agent.probes import add_hook, Instrumentation
|
|
87
|
+
import logging
|
|
88
|
+
|
|
89
|
+
#RUNNING_MODE = 0
|
|
90
|
+
from pythonagent.agent.internal.agent import Agent
|
|
91
|
+
|
|
92
|
+
def configure(environ=None):
|
|
93
|
+
agent_config = config.parse_environ()
|
|
94
|
+
if environ:
|
|
95
|
+
agent_config.update(config.parse_environ(environ))
|
|
96
|
+
|
|
97
|
+
config.merge(agent_config)
|
|
98
|
+
configure_logging()
|
|
99
|
+
|
|
100
|
+
return config.validate_config(agent_config)
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
def get_all_module_names(_agent):
|
|
105
|
+
all_module_names = set()
|
|
106
|
+
|
|
107
|
+
# CASE 1 : Profile Created by Callback
|
|
108
|
+
|
|
109
|
+
try:
|
|
110
|
+
pythonagent_path = os.path.dirname(config.__file__)
|
|
111
|
+
instr_prof_path = os.path.join(pythonagent_path, 'agent/internal/instrprof.json')
|
|
112
|
+
#instr_prof_path = os.environ.get('NDHOME') + "/python/hooksettings/instrprof.json"
|
|
113
|
+
|
|
114
|
+
from pathlib import Path
|
|
115
|
+
instr_prof_file = Path(instr_prof_path)
|
|
116
|
+
|
|
117
|
+
if instr_prof_file.is_file():
|
|
118
|
+
_agent.custom_methods_to_instrument = create_method_list(instr_prof_file)
|
|
119
|
+
print("ALL custom methods(Instrument) callback-> ", _agent.custom_methods_to_instrument)
|
|
120
|
+
|
|
121
|
+
import json
|
|
122
|
+
f = None
|
|
123
|
+
try:
|
|
124
|
+
f = open(instr_prof_file, "r")
|
|
125
|
+
except:
|
|
126
|
+
pass
|
|
127
|
+
|
|
128
|
+
if f:
|
|
129
|
+
string_of_profiles = f.read()
|
|
130
|
+
list_of_profiles = string_of_profiles.split("\n\n\n")
|
|
131
|
+
|
|
132
|
+
for profile in list_of_profiles:
|
|
133
|
+
try:
|
|
134
|
+
obj2 = json.loads(profile)
|
|
135
|
+
except:
|
|
136
|
+
continue
|
|
137
|
+
|
|
138
|
+
for item in obj2:
|
|
139
|
+
try:
|
|
140
|
+
module_name = item["modulename"].split("|")[0]
|
|
141
|
+
all_module_names.add(module_name)
|
|
142
|
+
except Exception:
|
|
143
|
+
# Don't let one malformed entry drop every module
|
|
144
|
+
# name (app included) parsed after it.
|
|
145
|
+
_agent.logger.warning("Skipping malformed instrumentation profile entry: %r", item)
|
|
146
|
+
continue
|
|
147
|
+
|
|
148
|
+
return all_module_names
|
|
149
|
+
except:
|
|
150
|
+
_agent.logger.exception("Error in section: Profile Created by Callback ")
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
# CASE 2 : Profile Created Locally
|
|
154
|
+
|
|
155
|
+
if True:
|
|
156
|
+
path = os.environ.get('NDHOME')
|
|
157
|
+
path = path + '/python/config/ndsettings.conf'
|
|
158
|
+
print("path of NDC config : ", path)
|
|
159
|
+
myvars = {}
|
|
160
|
+
|
|
161
|
+
with open(path) as myfile:
|
|
162
|
+
for line in myfile:
|
|
163
|
+
name, var = line.partition("=")[::2]
|
|
164
|
+
myvars[name.strip()] = var
|
|
165
|
+
try:
|
|
166
|
+
path_for_insProfile = myvars.get('path_profile').strip('\n')
|
|
167
|
+
except:
|
|
168
|
+
path_for_insProfile= os.environ.get('NDHOME') + "/python/hooksettings/instrumentationprofile.json"
|
|
169
|
+
print('Profiler path at : ', path_for_insProfile)
|
|
170
|
+
|
|
171
|
+
_agent.custom_methods_to_instrument = create_method_array(path_for_insProfile)
|
|
172
|
+
print("ALL custom methods(Instrument) local-> ", _agent.custom_methods_to_instrument)
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
custom_methods_to_instrument_json = create_method_json(path_for_insProfile).get("modules", {})
|
|
176
|
+
|
|
177
|
+
for module in custom_methods_to_instrument_json:
|
|
178
|
+
all_module_names.add(module["moduleName"])
|
|
179
|
+
|
|
180
|
+
return all_module_names
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
def bootstrap(agent=None):
|
|
184
|
+
print("AGENT BOOTSTRAP")
|
|
185
|
+
first_bootstrap = True
|
|
186
|
+
if agent:
|
|
187
|
+
first_bootstrap = False
|
|
188
|
+
entry_point_refresh()
|
|
189
|
+
import pythonagent.agent.internal.intercept_module
|
|
190
|
+
reload(pythonagent.agent.internal.intercept_module)
|
|
191
|
+
from pythonagent.agent.internal.intercept_module import BT
|
|
192
|
+
BT_INTERCEPTORS = BT
|
|
193
|
+
try:
|
|
194
|
+
_agent = agent or get_agent_instance()
|
|
195
|
+
hook = add_hook(_agent)
|
|
196
|
+
all_module_names = get_all_module_names(_agent)
|
|
197
|
+
bt_top_level = {module.split('.')[0] for module, _ in BT_INTERCEPTORS}
|
|
198
|
+
|
|
199
|
+
#print("all_module_names", all_module_names)
|
|
200
|
+
|
|
201
|
+
for module, patch in BT_INTERCEPTORS:
|
|
202
|
+
hook.call_on_import(module, patch)
|
|
203
|
+
for module in all_module_names:
|
|
204
|
+
if module.split('.')[0] in bt_top_level:
|
|
205
|
+
continue
|
|
206
|
+
#print("MODULE NAME ", module)
|
|
207
|
+
hook.call_on_import(module, Instrumentation.intercept_instrumented_method)
|
|
208
|
+
|
|
209
|
+
_agent.module_interceptor = hook
|
|
210
|
+
|
|
211
|
+
return _agent
|
|
212
|
+
except:
|
|
213
|
+
logging.getLogger('pythonagent.agent').exception('Error bootstrapping pythonagent; disabling.')
|
|
214
|
+
return None
|
|
215
|
+
|
|
216
|
+
def get_agent_instance():
|
|
217
|
+
return Agent.get_instance()
|
|
218
|
+
|
|
219
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|