{"id":15578311,"url":"https://github.com/dynatrace-oss/oneagent-sdk-python-autoinstrumentation","last_synced_at":"2026-03-13T14:31:57.144Z","repository":{"id":43752789,"uuid":"204299745","full_name":"dynatrace-oss/OneAgent-SDK-Python-AutoInstrumentation","owner":"dynatrace-oss","description":"autodynatrace, a python library that implements automatic instrumentation using the OneAgent  SDK for Python","archived":false,"fork":false,"pushed_at":"2024-12-02T18:27:29.000Z","size":194,"stargazers_count":62,"open_issues_count":21,"forks_count":30,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-04-06T12:08:24.633Z","etag":null,"topics":["instrumentation","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dynatrace-oss.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-08-25T13:42:22.000Z","updated_at":"2024-12-02T18:27:33.000Z","dependencies_parsed_at":"2024-05-13T14:52:43.712Z","dependency_job_id":"69f7fb6d-9928-49b7-9e4b-39b88dbc5989","html_url":"https://github.com/dynatrace-oss/OneAgent-SDK-Python-AutoInstrumentation","commit_stats":{"total_commits":195,"total_committers":11,"mean_commits":"17.727272727272727","dds":0.07179487179487176,"last_synced_commit":"7c16cd689f4af48a2d2ae2b2429f7d6593b9167c"},"previous_names":["dlopes7/autodynatrace"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynatrace-oss%2FOneAgent-SDK-Python-AutoInstrumentation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynatrace-oss%2FOneAgent-SDK-Python-AutoInstrumentation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynatrace-oss%2FOneAgent-SDK-Python-AutoInstrumentation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dynatrace-oss%2FOneAgent-SDK-Python-AutoInstrumentation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dynatrace-oss","download_url":"https://codeload.github.com/dynatrace-oss/OneAgent-SDK-Python-AutoInstrumentation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247478322,"owners_count":20945266,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["instrumentation","python"],"created_at":"2024-10-02T19:08:14.498Z","updated_at":"2025-12-12T00:36:06.159Z","avatar_url":"https://github.com/dynatrace-oss.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## autodynatrace - OneAgent-SDK-Python-AutoInstrumentation\n\n\n[![Actions Status](https://github.com/dynatrace-oss/OneAgent-SDK-Python-AutoInstrumentation/workflows/Tests/badge.svg)](https://github.com/dynatrace-oss/OneAgent-SDK-Python-AutoInstrumentation/actions)\n [![Downloads](https://pepy.tech/badge/autodynatrace)](https://pepy.tech/project/autodynatrace)\n\nDynatrace provides a [powerful SDK](https://github.com/Dynatrace/OneAgent-SDK-for-Python) that can be used to achieve code level visibility and transaction tracing for applications written in multiple languages, including python. This project provides a library called *autodynatrace*, which is a wrapper around the OneAgent SDK for Python and allows you to instrument python applications with minimal code changes.\n\n\n\u003e **Warning**\n\u003e Autodynatrace is opensource and supported via github issues, this is not supported by Dynatrace via support tickets.\n\n### Usage\n\n`pip install autodynatrace`\n\n### Option 1 - Instrumentation without code changes\n\nAdd the environment variable `AUTOWRAPT_BOOTSTRAP=autodynatrace` to your python processes\n\n### Option 2 - Semi-Auto Instrumentation\n\nFor most technologies, just import it in your code.\n\n`import autodynatrace`\n\n### Technologies supported:\n\n- **aiohttp** (client)\n- **asyncio** - Run with the environment variable `AUTODYNATRACE_INSTRUMENT_CONCURRENT=True`\n- **bottle**\n- **celery**\n- **concurrent.futures**\n- **confluent_kafka**\n- **cx_Oracle**\n- **django**\n- **fastapi**\n- **flask**\n- **grpc** (client)\n- **paramiko**\n- **pika** (RabbitMQ)\n- **psycopg2**\n- **pymongo**\n- **pysnmp**\n- **redis**\n- **ruxit** (Dynatrace plugin framework)\n- **sqlalchemy**\n- **subprocess**\n- **suds**\n- **starlette**\n- **tornado**\n- **urllib**\n- **urllib3**\n- **custom annotations**\n\n### Django\n\nFor Django, add `\"autodynatrace.wrappers.django\"` to `INSTALLED_APPS`\n\n### Environment variables\n\n* `AUTODYNATRACE_CAPTURE_HEADERS`: Default: `False`, set to `True` to capture request headers\n* `AUTODYNATRACE_LOG_LEVEL`: Default `WARNING`\n* `AUTODYNATRACE_FORKABLE`: Default `False`, set to `True` to [instrument forked processes](https://github.com/Dynatrace/OneAgent-SDK-for-Python#using-the-oneagent-sdk-for-python-with-forked-child-processes-only-available-on-linux). Use this for gunicorn/uwsgi\n* `AUTODYNATRACE_VIRTUAL_HOST`: Overwrite the default Virtual Host for web frameworks\n* `AUTODYNATRACE_APPLICATION_ID`: Overwrite the default Application Name for web frameworks\n* `AUTODYNATRACE_CONTEXT_ROOT`: Overwrite the default Context Root for web frameworks\n* `AUTODYNATRACE_CUSTOM_SERVICE_NAME`: Overwrite the custom service name (used by `@autodynatrace.trace`)\n* `AUTODYNATRACE_CUSTOM_SERVICE_USE_FQN`: Default `False`, set to `True` to use fully qualified names for service and method names in custom traced services\n* `AUTODYNATRACE_INSTRUMENT_\u003cLIB_NAME\u003e`: If set to `False`, Disables the instrumentation for a specific lib, example: `AUTODYNATRACE_INSTRUMENT_CONCURRENT=False`, default is `True`\n\n### Support\n\nFor support using this open source project, please open a github issue explaining your issue and providing code examples, environment details\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdynatrace-oss%2Foneagent-sdk-python-autoinstrumentation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdynatrace-oss%2Foneagent-sdk-python-autoinstrumentation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdynatrace-oss%2Foneagent-sdk-python-autoinstrumentation/lists"}