$npx skillfedfor your agent

osprofiler

OpenStack Profiler Library

With conditionsPyPI MonitoringReleased May 2026375.8K downloads / moApache-2.0Pure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — osprofiler-4.4.0-py3-none-any.whl
v4.4.0 · released 2026-05-05 · Python >=3.10 · 8 runtime deps: netaddr, oslo.concurrency, oslo.config, oslo.serialization, oslo.utils, PrettyTable, requests, WebOb

Yes, if you operate or develop for OpenStack. OSProfiler is the standard distributed tracing tool for the ecosystem, actively maintained, permissively licensed, and has low install friction. No, if you are outside OpenStack—the library is tightly coupled to OpenStack's architecture and oslo libraries; other Python frameworks have more general-purpose tracing solutions.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.10 or later.
  • Designed for OpenStack environments; utility outside that ecosystem depends on compatible tracing backends.
  • Low install friction with a pure Python wheel.

License · maintenance · safety

Apache-2.0 (permissive) — Apache-2.0 permissive license allows commercial and private use with minimal restrictions—suitable for most deployment contexts.

last release 2026-05-05 (101 days)

0 known vulnerabilities (OSV.dev, 2026-08-14) · 375,765 downloads/mo, #7,133 on PyPI

Verify before relying

pip install osprofiler

from osprofiler import profiler

profiler.init('service-name')
with profiler.Trace('operation-name'):
    # code to profile
    pass
  • Whether tracing backends (e.g., Elasticsearch, Jaeger) are bundled or require separate installation.
  • Performance overhead of trace collection in production workloads.
  • Compatibility with non-OpenStack Python services or frameworks.
Same gist for agents: .md · .json

What it is and what it does

OSProfiler is a distributed tracing library built for OpenStack that captures request flows across multiple services and generates call trees for performance analysis. It instruments code to emit trace events that travel with requests through the system, allowing operators and developers to see where time is spent and identify bottlenecks that span service boundaries.

The library is designed as a lightweight instrumentation layer; you wrap code sections with trace contexts, and OSProfiler collects timing and metadata. The resulting traces can be extracted and visualized to understand request paths. It integrates with OpenStack's oslo libraries and is used across most OpenStack projects, making it the standard tool for cross-project performance debugging in that ecosystem.

Use it for

  • Isolate performance degradation in multi-service OpenStack deployments by tracing a single request end-to-end.
  • Identify which service in a call chain is responsible for high latency in API responses.
  • Build a visual call tree to understand request flow and service interactions during complex operations.
  • Debug timeout or slow-response issues that span multiple OpenStack components.
  • Profile production traffic to find unexpected bottlenecks in service-to-service communication.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you operate or develop for OpenStack.

OSProfiler is the standard distributed tracing tool for the ecosystem, actively maintained, permissively licensed, and has low install friction. No, if you are outside OpenStack—the library is tightly coupled to OpenStack's architecture and oslo libraries; other Python frameworks have more general-purpose tracing solutions.

Install

osprofiler on PyPI

Before you install

Low install friction with a pure Python wheel. Active maintenance status and recent release (101 days old). Eight runtime dependencies are all established OpenStack libraries (oslo.* family, netaddr, requests, WebOb, PrettyTable).

Requires Python 3.10 or later. Designed for OpenStack environments; utility outside that ecosystem depends on compatible tracing backends.

License in practice

Apache-2.0 permissive license allows commercial and private use with minimal restrictions—suitable for most deployment contexts.

Quickstart

pip install osprofiler

from osprofiler import profiler

profiler.init('service-name')
with profiler.Trace('operation-name'):
    # code to profile
    pass

Verify before relying

  • Whether tracing backends (e.g., Elasticsearch, Jaeger) are bundled or require separate installation.
  • Performance overhead of trace collection in production workloads.
  • Compatibility with non-OpenStack Python services or frameworks.

Package facts

LicenseApache-2.0 permissive
Python supportSupports the current Python release >=3.10
Install frictionLow. Pure-Python wheel
Runtime dependencies
8 packages
netaddroslo.concurrencyoslo.configoslo.serializationoslo.utilsPrettyTablerequestsWebOb
MaintenanceActively maintained 101 days since the last release
First released
Downloads375,765 / month, #7,133 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseOperating System :: POSIX :: LinuxProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13

Evidence: osprofiler-4.4.0-py3-none-any.whl

Tags

Capabilities
distributed request tracingopenstack profilingcross-service performance analysisrequest trace collectionlatency debugging across servicesopenstack performance monitoringtrace tree visualization
Topics
distributed-tracingopenstackperformance-profiling

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “openstack profiling”

  • osprofilerOSProfiler generates distributed request traces across OpenStack…
  • openstacksdkopenstacksdk is a client library for interacting with OpenStack…
  • keystoneauth1Provides authentication plugins, API discovery, and session…

Give your agent the search over MCP, or paste the wish link into any chat.

More Monitoring packages

tqdm Worth it
PyPI · Libraries · released Jul 2026

Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.

copyleftpure Python · 3.8+
648.6Mdownloads / mo
opentelemetry-semantic-conventions Worth it
PyPI · Monitoring · released Jul 2026

Provides generated Python code for OpenTelemetry semantic conventions, enabling standardized attribute naming and constant definitions for instrumentation and telemetry collection.

Install it if you are using OpenTelemetry and want to follow semantic conventions correctly.

Apache-2.0pure Python · 3.10+
542.9Mdownloads / mo
opentelemetry-sdk Worth it
PyPI · Monitoring · released Jul 2026

Provides the reference implementation of the OpenTelemetry API for collecting and exporting traces, metrics, and logs from Python applications.

Apache-2.0pure Python · 3.10+
521.8Mdownloads / mo
opentelemetry-api With conditions
PyPI · Monitoring · released Jul 2026

Provides the abstract API and interfaces for OpenTelemetry instrumentation in Python, defining how to emit traces, metrics, and logs without tying code to a specific SDK implementation.

Apache-2.0pure Python · 3.10+
463.8Mdownloads / mo
opentelemetry-exporter-otlp-proto-http Worth it
PyPI · Monitoring · released Jul 2026

Exports OpenTelemetry observability data to an OpenTelemetry Collector using Protobuf-encoded messages over HTTP.

Install it if you are using OpenTelemetry in Python and need to send data to a Collector over HTTP.

Apache-2.0pure Python · 3.10+
409.9Mdownloads / mo
opentelemetry-instrumentation Worth it
PyPI · Monitoring · released Jul 2026

Provides automatic instrumentation commands and programmatic APIs to inject distributed tracing into Python applications without code changes, detecting and instrumenting packages used by your program.

Install it if you need distributed tracing without code changes and have compatible instrumented packages in your environment.

Apache-2.0pure Python · 3.10+
393.5Mdownloads / mo

See also os-client-config · os-service-types · os-vif · oslo.service · perfetto · oslo.reports · oslo.log · os-ken · os-testr · os-traits