ChangeLog

CHANGES

  • Unpin for newer elasticsearch versions

  • Bump hacking to latest

  • Update bandit to 1.7.x

4.2.0

  • reno: Update master for unmaintained/victoria

  • Update python classifier in setup.cfg

  • List up extra requirements for drivers

  • Move oslo.config to normal requirements

  • Declare Python 3.10 support

4.1.0

  • profiler: add python requests profile

4.0.0

  • add support of otlp exporter

  • devstack: remove jaeger container on unstack

  • [profiler] hmac_key should be secret

  • jaeger: introduce process tags’ option for tracer

  • jaeger: introduce service name prefix

  • jaeger: fix driver initialization for tests

  • setup.cfg: Replace dashes with underscores

  • Change StrictRedis usage to Redis

  • tox: Add functional-py38, functional-py39 envs

  • remove unicode prefix from code

  • Fix formattiing of release list

3.4.3

  • Make some revisions in the document

  • Update CI to use unversioned jobs template

  • Fix api index and module index

3.4.2

  • Set manila config opts in devstack

3.4.1

  • Uncap PrettyTable

  • Move flake8 as a pre-commit local target

  • Use TOX_CONSTRAINTS_FILE

  • Dropping lower constraints testing

  • Remove six

  • Use py3 as the default runtime for tox

  • Adding pre-commit

  • ignore reno generated artifacts

  • Add Python3 wallaby unit tests

  • Update master for stable/victoria

3.4.0

  • Fix StopIteration error on Ubuntu Focal

  • Bump bandit version

3.3.0

  • switch to importlib.metadata to find package version

3.2.2

  • Fix empty ‘args’ and ‘kwargs’ when using ‘hide_args’ with Jaeger

3.2.1

  • drop mock from lower-constraints

3.2.0

  • Fix pep8 failures

  • Switch to newer openstackdocstheme and reno versions

  • Bump default tox env from py37 to py38

  • Add py38 package metadata

  • Enforce order of import statements

  • Use unittest.mock instead of third party mock

  • Add Python3 victoria unit tests

  • Update master for stable/ussuri

3.1.0

  • Update hacking for Python3

  • Start README.rst with a better title

3.0.0

  • [ussuri][goal] Drop python 2.7 support and testing

2.9.0

  • Switch to Ussuri jobs

  • Update master for stable/train

  • Handle driver initialization errors to avoid service crash

2.8.2

  • Add Python 3 Train unit tests

2.8.1

  • Bring env OSPROFILER_CONNECTION_STRING into effect

  • Support standalone placement in the devstack

2.8.0

  • Automatic configuration of SQLAlchemy driver in DevStack

  • change function list_traces of mongodb module

  • Replace git.openstack.org URLs with opendev.org URLs

  • Fix elasticsearch version in python requirements

2.7.0

  • Minimum versions of databases with JSON data type support

  • OpenDev Migration Patch

  • Dropping the py35 testing

  • Optimize storage schema for Redis driver

  • Allow OSPROFILER_TRACE_SQLALCHEMY to be overridden

  • Rename OSProfiler-enabled Tempest job

  • Don’t fail if sqlalchemy driver fails to initialize

  • Update master for stable/stein

2.6.0

  • Add sqlalchemy collector

  • Change python3.5 job to python3.7 job on Stein+

  • Use $STACK_USER variable in install_jaeger function

  • Add support for mongodb backend in devstack plugin

  • Reload keystone to apply osprofiler config

  • Do not insert osprofiler filter into Neutron api-paste pipeline

  • Allow test path to be overridden

2.5.2

  • In case of an error, always add message

  • Change http to https in reference link

  • [devstack] Add support for elasticsearch backend

  • Change openstack-dev to openstack-discuss

  • Configure Jaeger collector in DevStack

2.5.1

  • Update min tox version to 2.0

  • In DevStack install Redis client library via pip, not as system package

  • When shortening span-ids, check if they’re already short

  • Don’t quote {posargs} in tox.ini

2.5.0

  • build universal wheels

  • Collect traces from Tempest job

  • Add a job to run full Tempest with enabled profiler

  • Make tracing of SQL statements configurable in DevStack plugin

2.4.1

  • Use templates for cover and lower-constraints

  • add password for connecting redis-sentinel

  • add lib-forward-testing-python3 test job

  • add python 3.6 unit test job

  • import zuul job settings from project-config

  • Update reno for stable/rocky

  • Switch to stestr

2.3.0

  • Add release note link in README

  • Make profiler.clean() public method

2.2.0

  • opts: Fix invalid rST formatting

  • Put ‘db’ parameter back and provide a deprecation warning before remove

  • Add minimum version and fix dulwich issue

  • fix tox python3 overrides

  • Update documentation & usage for redis driver

  • Allow user to specify password for Redis connection

  • OSprofiler with Jaeger Tracing as backend

2.1.0

  • Fix typo

  • Remove lower bound from requirements

  • Trivial: Update pypi url to new url

  • Add lower-constraints job

  • set default python to python3

2.0.0

  • Filter traces that contain error/exception

  • Zuul: Remove project name

  • Update reno for stable/queens

  • Unify and fix `list_traces` function

  • Add initial ‘trace list’ command

  • Remove Ceilometer support

  • Check profiler instance before initialize

  • update sphinx-doc links

  • Initialize osprofiler in Nova Cell configs

  • Add oslo.serialization into requirements

1.15.1

  • Cleanup test-requirements

1.15.0

  • Update the invalid doc links to the right ones in osprofiler docs

  • Add filter for OSprofiler html output

  • Add kwargs to WsgiMiddleware __init__

  • Make collector configurable in DevStack plugin

  • Add functional test for Redis driver

  • Remove setting of version/release from releasenotes

  • Add Zuul job for functional testing

1.14.0

  • Extend messaging driver to support reporting

  • Handle and report SQLAlchemy errors

1.13.0

  • Remove dependency on oslo.log library

1.12.0

  • Do not require OpenStack authentication to run osprofiler CLI

  • Make dependency on oslo.messaging runtime only

  • Make test_notifier independent of test case execution order

  • Add function/sql results to trace info

  • Improve unit test coverage

  • Remove unused parameters from Profiler class

  • Add loading local static files option of template.html

  • Update reno for stable/pike

1.11.0

  • Update URLs in documents according to document migration

  • doc: Fix formatting

  • rearrange existing documentation to fit the new standard layout

  • Switch from oslosphinx to openstackdocstheme

  • Enable warning-is-error in doc build

  • Update .gitignore

1.10.1

  • Expose connection_string parameter into DevStack plugin

1.10.0

  • Cleanup code of DevStack plugin

  • Improve error reporting for Ceilometer driver

  • Replace oslo.messaging.get_transport with get_notification_transport

1.9.1

  • devstack: use project conf file env variables

1.9.0

  • Fix error message for invalid trace

  • Remove unused imports

1.8.0

  • Switch to “topics” keyword for messaging driver

  • Add zun to devstack config

  • Python 3.4 support is removed

1.7.0

  • Highlight last trace for OSprofiler html output

1.6.0

  • Add magnum to devstack config

  • Add Jaeger to list of similar projects

  • [Fix gate]Update test requirement

  • fix an outdated link for zipkin

  • Change some bindings to one-time bindings

  • Revert “Change list_opts to dictionary style”

  • Move implemeted specs to implemented directory

  • Remove extra white spaces in json output

  • Increase angular digest iteration limit

  • devstack: make option hmac_keys configurable

  • Update reno for stable/ocata

  • Change list_opts to dictionary style

  • Fix mistake in split meta string

  • Fix enabling order specify in README.rst

1.5.0

  • Add py35 tox virtualenv

  • Add functional test for notifier backend

  • Upgrade libraries, add highlight for JSON data

  • Fix syntax in JS, JSON indent with 4 spaces

  • Pass oslo.messaging kwargs only for “messaging://”

  • Organize unit tests under tests/unit folder

  • Use uuidutils instead of uuid.uuid4()

  • Use oslo_utils.uuidutils.is_uuid_like

  • Error out for invalid trace ID

  • Re-format html template

  • Replace six.iteritems() with .items()

  • Show team and repo badges on README

  • Fix import order

  • Move hacking checks outside tests

  • Visualize trace output as graph

  • Remove print statement

  • Pretty print json output

  • Add exception to trace point details

  • Add a redis driver

  • Replace logging with oslo_log

  • Add Log Insight driver

  • Add reno for release notes management

  • Use method constant_time_compare from oslo.utils

  • Update documentation to the latest state

  • Update dependencies’ version from project requirements

  • Update devstack plugin readme to enable Panko

  • Enable devstack to configure OSProfiler for Senlin project

  • Add .idea folder to .gitignore

  • Heat and Cinder now use new style conf

  • Fix the issue that ChangeLog not found when building docs

  • Add AUTHORS and ChangeLog to .gitignore

  • Update the driver path in th doc

  • Use an env variable for connection string default

  • Fix a doc typo

  • Update homepage with developer documentation page

  • Trivial: Remove vim header from source files

  • [doc]Add description for multi-backend URI

  • Add Elasticsearch driver

  • Remove old notifiers

1.4.0

  • Add tests for mongodb driver

  • Add connection string usage to osprofiler-cli

  • Add overall profiler stats by operation

  • Fix typos on spec directory

  • Fix title of index page

  • Add MongoDB driver

  • OSprofiler initialization method

  • Add Ceilometer driver

  • Add backward compatible drivers structure

  • Expose osprofiler middleware as entrypoint

  • Remove discover from test-requirements

  • Fix typo: ‘Olso’ to ‘Oslo’

  • Don’t set html_last_updated_fmt without git

  • Add exception type to stop trace info

1.3.0

  • Add hepler to trace sessions

  • doc: Log warning when can’t get informaiton from git

  • Add an error tip when trace_id is not found

  • Add a similar link with reference to similar projects/libraries

  • Continue work on standardizing osprofiler docs

  • Remove dead/broken link to example

  • Updates to doc conf.py to look the same as other projects

  • Clean thread local profiler object after usage

  • Improve unit test coverage

  • Avoid tracing class and static methods

  • Avoid multiple tracing when applying meta or class decorator

  • Remove outdated version

  • Dont claim copyright for future years

  • Use pkg_resources to get version

  • Enable bandit in gate

  • Fallback if git is absent

  • It’s unnecessary set deprecate group for option ‘enabled’

  • Add CONTRIBUTING.rst

1.2.0

  • Remove flake8 ignore list in tox.ini

1.1.0

  • run py34 tests before py27 to work around testr bug

  • stop making a copy of options discovered by config generator

  • Make class detection more accurate

1.0.1

  • Disable staticmethods tracing

1.0.0

  • Add fix for static and class methods in @trace_cls

  • Expose X-Trace-* constants

  • Add raw Ceilometer events support to DevStack plugin

  • Use raw data storage for events to collect more info

  • Use oslo.utils reflection and avoid refinding decorated name

  • Move osprofiler tests into osprofiler

  • Consolidate osprofiler options

  • Remove argparse from requirements

  • Add py34 to tox env list

  • Make profiler timestamp json.dumps friendly

  • Replace deprecated library function os.popen() with subprocess

  • Add DevStack plugin

0.4.0

  • Remove Py33 support

  • Make it possible to specify file path as a source for trace

  • Remove support for py26

  • Improve HTML reports performance

  • Fix TracedMeta class

  • Fix a couple of typos in doc strings

  • Fix Ceilometer parser to use events

  • remove python 2.6 trove classifier

  • Add TracedMeta class

  • Update requirements

  • Deprecated tox -downloadcache option removed

  • Fix enable/disable compatibility

  • Add hacking rules & fix hacking issues

0.3.1

  • Make api-paste.ini config optional

  • Fix minor typos in the multi-backend specification

  • Spec: Integration Testing

  • Spec: Better DevStack Integration

  • Spec: Multi Backend support

  • Spec: Optional options in api-paste.ini

  • Add specs base structure

  • Update .gitreview for new namespace

  • Fix date parsing when there’s not milliseconds in the date

  • Various cleanups

  • Remove version from setup.cfg

  • Stop using intersphinx

  • Rename doc environment to docs

  • Imporve generated trace html

  • Adding a hits to notice operator when trace not found

0.3.0

  • Cut version 0.3.0

  • add more unit tests

  • Allow N-keys (one should apply)

  • Some minor fixes in README.rst

  • ReadMe updates with CLI commands

  • Add entry point for OSProfiler, that display traces

  • Remove dead code

  • Add OSprofiler docs

  • Fix wrong code duplication in utils.itersubclasses()

  • Use compare_digest or an equivalent when available

0.2.5

  • Imporve read me

  • Fix issue with trace_cls

  • Add @profiler.trace_cls decorator

  • Prevent Messaging to resend failed notifications

  • Update README.rst with some small adjustments

  • Some grammar-related imprevements

0.2.4

  • Add alternative way to dissable middleware

  • Improve tracing of sqlalchemy

0.2.3

  • Fix ceilometer parse notifications

0.2.2

  • Improve a bit README.rst

  • Fix & improve trace decorator

  • Fix some typos in README.rst

0.2.1

  • Update README.rst

  • Add @profiler.trace decorator

  • Add missing tests for messaging notifer plugin

0.2.0

  • Add notifier plugin based on Ceilometer

  • Add base for notifier plugins

  • Make profiler.utils private

  • Improve ceilometer notifications getter

  • Move public methods to top of sqlalchemy module

  • Refactor web.add_trace_id_header()

  • Make a cleaner API for osporfiler

  • Add “_” to names of private methods

0.1.1

  • Remove unused libs from requirments and fix info in setup.cfg

0.1.0

  • Add extra docs in sqlalchemy module

  • Make hmac required argument in profiler.Profiler.init

  • Refactor WSGI.middleware and imporve test coverage

  • Improve test coverage

  • Improve README

  • Base64 encode the ‘X-Trace-Info’ header

  • Fix text requirements

  • Edit notifier.notify()

  • Add sanity tests for profiler and hmac usage

  • Imporve ceilometer parser

  • Split code sugar and logic in Profiler class

  • Simplify notifer API

  • Add git review file

  • Add in hmac signing/verification

  • Make name also use a deque

  • Use a collections.deque which has thread safe pop/append

0.0.1

  • Add work around if not all messages were consumed by ceilometer

  • Remove information about service in profiler

  • Add parser of ceilometer notifications

  • Fix setup.cfg python 2.6 is supported as well

  • Add possibility to disable sqlalchemy tracing

  • Fix WSGI middleware and add unit tests

  • Remove from sqlachemy.after_execute notifcation resutls and add UTs

  • Imporove profiler and add UTs

  • Update global requirments

  • Remove unused dependency from requirments.txt

  • Fix licenses

  • Fix pep

  • Add tracer for sqlalchemy

  • Add WSGI Middleware

  • Add profiler class

  • Init Strucutre of lib

  • Initial commit