summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* switch to importlib.metadata to find package version3.3.0Doug Hellmann2020-07-063-2/+9
| | | | | | | | | | | | | | | Importing pkg_resources has a side-effect of reading all of the metadata for every installed python package. The newer importlib.metadata module can load the metadata for one package at a time, which makes this library load more quickly and improves the startup-time performance of applications that use it such as python-openstackclient. importlib.metadata is part of the python 3.8 standard library and is distributed separately for other versions of python. Change-Id: Ib1870a3d102116f84c7677601fd44fdac41a13a6 Signed-off-by: Doug Hellmann <doug@doughellmann.com>
* Fix empty 'args' and 'kwargs' when using 'hide_args' with Jaeger3.2.2Daria Kobtseva2020-06-211-2/+4
| | | | | | | | | | | When 'hide_args=True' is used in @profiler.trace() decorator along with Jaeger driver, trace 'args' and 'kwargs' function parameters are empty, which leads to a key error. This change introduces a key check before adding those parameters to tags. Change-Id: I312da1b175a04d4ddee7f823111b8320dd4777d6
* drop mock from lower-constraints3.2.1Hervé Beraud2020-06-091-1/+0
| | | | | | | | | | The mock third party library was needed for mock support in py2 runtimes. Since we now only support py36 and later, we don't need it in lower-constraints. These changes will help us to drop `mock` from openstack/requirements Change-Id: I88e5f5961d0b4b0a71dc55141155fe23a9676a9a
* Merge "Switch to newer openstackdocstheme and reno versions"3.2.0Zuul2020-06-034-19/+16
|\
| * Switch to newer openstackdocstheme and reno versionsAndreas Jaeger2020-06-024-19/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Switch to openstackdocstheme 2.2.1 and reno 3.1.0 versions. Using these versions will allow especially: * Linking from HTML to PDF document * Allow parallel building of documents * Fix some rendering problems Update Sphinx version as well. Disable openstackdocs_auto_name to use 'project' variable as name. Change pygments_style to 'native' since old theme version always used 'native' and the theme now respects the setting and using 'sphinx' can lead to some strange rendering. openstackdocstheme renames some variables, so follow the renames before the next release removes them. A couple of variables are also not needed anymore, remove them. See also http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html Change-Id: Ia700e656b4c2616ccbff32707eb4297a1dafbe3b
* | Fix pep8 failuresAndreas Jaeger2020-06-0210-35/+38
|/ | | | | | | | | | With an updated flake8, we get some new warnings. Update hacking directly to version 3.1.0 and fix the problems found. Note that before this change, flake8 used the default "ignore" list, this now adds a new ignore list. Change-Id: Iccbf4f30eb4e542d3824b7782f43eacda29c5a90
* Merge "Bump default tox env from py37 to py38"Zuul2020-04-241-1/+1
|\
| * Bump default tox env from py37 to py38Sean McGinnis2020-04-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Python 3.8 is now our highest level supported python runtime. This updates the default tox target environments to swap out py37 for py38 to make sure local development testing is covering this version. This does not impact zuul jobs in any way, nor prevent local tests against py37. It just changes the default if none is explicitly provided. Change-Id: I3727e107748db800149aef2ab5696b4bd48df425 Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
* | Add py38 package metadataSean McGinnis2020-04-241-0/+1
|/ | | | | | | | | Now that we are running the Victoria tests that include a voting py38, we can now add the Python 3.8 metadata to the package information to reflect that support. Change-Id: If6896f56cd9df8c2e2f015e79793653abce0da20 Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
* Enforce order of import statementsIlya Shakhat2020-04-207-6/+9
| | | | | | | This patch adds flake8-import-order plugin and fixes all found issues. Change-Id: Ibbeae4afeb737401de48fb2e7e225eb0a969908b
* Use unittest.mock instead of third party mockSean McGinnis2020-04-1815-15/+17
| | | | | | | | Now that we no longer support py27, we can use the standard library unittest.mock module instead of the third party mock lib. Change-Id: I76e01d55ff4d9095a6dbf520752042824225de73 Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
* Add Python3 victoria unit testsOpenStack Release Bot2020-04-141-1/+1
| | | | | | | | | | | This is an automatically generated patch to ensure unit testing is in place for all the of the tested runtimes for victoria. See also the PTI in governance [1]. [1]: https://governance.openstack.org/tc/reference/project-testing-interface.html Change-Id: Ie36d08a274b13181518b3a2628209ab1e81d5c6a
* Update master for stable/ussuriOpenStack Release Bot2020-04-142-0/+7
| | | | | | | | | | | | Add file to the reno documentation build to show release notes for stable/ussuri. Use pbr instruction to increment the minor version number automatically so that master versions are higher than the versions on stable/ussuri. Change-Id: Iaa0abf7e3e8ca5988fe69b60bbe76b631096c03a Sem-Ver: feature
* Update hacking for Python3ussuri-em3.1.0Andreas Jaeger2020-04-013-18/+30
| | | | | | | | | | | The repo is Python 3 now, so update hacking to version 3.0 which supports Python 3. Fix problems found. Update local hacking checks for new flake8. Change-Id: I8ba89483c8e6b76011833cfc5080eab3fd269c8b
* Merge "Start README.rst with a better title"Zuul2020-03-111-7/+3
|\
| * Start README.rst with a better titleyangkun.lc2020-03-111-7/+3
| | | | | | | | Change-Id: I1b18c752dcc2d11144c1b92d9161faef4ad71956
* | [ussuri][goal] Drop python 2.7 support and testing3.0.0Andreas Jaeger2020-02-047-47/+20
|/ | | | | | | | | | | | | | | | | | OpenStack is dropping the py2.7 support in ussuri cycle. Complete discussion & schedule can be found in - http://lists.openstack.org/pipermail/openstack-discuss/2019-October/010142.html - https://etherpad.openstack.org/p/drop-python2-support Ussuri Communtiy-wide goal: https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html Switch to using modern sphinx-build. Remove cruft from setup.cfg Drop non-voting jobs from gate queue. Change-Id: I2cc764bd3de8130aa25868b57b2e89341c71617e
* Merge "Handle driver initialization errors to avoid service crash"2.9.0Zuul2019-11-186-21/+45
|\
| * Handle driver initialization errors to avoid service crashIlya Shakhat2019-07-246-21/+45
| | | | | | | | | | | | | | | | This patch fixes the issue when failed osprofiler driver brings the whole service down. With this patch the default no-op behaviour is used in case of initialization failure. Change-Id: I6ebc393576f4fc3f8b4134164bafc2e09f102ebd
* | Switch to Ussuri jobszhangboye2019-10-251-1/+1
| | | | | | | | Change-Id: Iad81bd6f4b5581d59da48fc163cd38f6ac14d812
* | Update master for stable/trainOpenStack Release Bot2019-09-202-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | Add file to the reno documentation build to show release notes for stable/train. Use pbr instruction to increment the minor version number automatically so that master versions are higher than the versions on stable/train. Change-Id: I001fb0dd6e0a0225c83bd6a3b9fad2b108dc3385 Sem-Ver: feature
* | Add Python 3 Train unit teststrain-em2.8.2Corey Bryant2019-07-053-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | This is a mechanically generated patch to ensure unit testing is in place for all of the Tested Runtimes for Train. See the Train python3-updates goal document for details: https://governance.openstack.org/tc/goals/train/python3-updates.html Change-Id: I18d35d120bed22f5bbb4b8e15942d3e48063615d Story: #2005924 Task: #34234
* | Bring env OSPROFILER_CONNECTION_STRING into effect2.8.1francotseng2019-06-281-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | The --connection-string is marked required, and parse_args() assumes the flag invalid if it's not supplied as command line argument, even if env OSPROFILER_CONNECTION_STRING is setted. We should not rely on the required=True of argparse module, but check the required args on our own to take env arguments into consideration. Change-Id: I50f5f369ec41ddc82f9b66f5910b7805940fb387
* | Support standalone placement in the devstackBalazs Gibizer2019-06-131-0/+1
| | | | | | | | | | | | | | The placement service has a separate config file that also needs to be modified if osprofiler is enabled in devstack. Change-Id: I7fa963b20498549d4241ccb16cfbca8ddf70eef5
* | Merge "Optimize storage schema for Redis driver"2.8.0Zuul2019-05-202-6/+42
|\ \
| * | Optimize storage schema for Redis driverIlya Shakhat2019-04-092-6/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original Redis driver stored each tracing event under its own key, as result both list and get operations required a full scan of the database. With this patch traces are stored as Redis lists under a key equal to trace id. So list operation iterates only over unique trace ids and get operation retrieves the content of a specified list. Note that list operation still needs to retrieve at least 1 event from the trace in order to get a timestamp. Performance test is executed with 1000 traces each consisting 1000 events: * existing driver: * write: 48 sec * list: 41 sec * get: 3.6 sec * optimized driver: * write: 44 sec * list: 4.1 sec * get: 0.01 sec Change-Id: I09a122f91e3d26531965fe53d6df7c66f502de4c
* | | Automatic configuration of SQLAlchemy driver in DevStackIlya Shakhat2019-05-165-14/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds a new type of collector "sqlalchemy". To enable it, add the following line into DevStack local.conf: OSPROFILER_COLLECTOR=sqlalchemy OSProfiler DevStack plugin creates database for traces and configures all services to use it. SQLAlchemy driver is extend to be able to list traces. Zuul job is added to run Tempest tests with sqlalchemy driver enabled. Change-Id: Ia943d311d78f6dfd2e6bb884c8dca725b3b2a36b
* | | Merge "Fix elasticsearch version in python requirements"Zuul2019-05-061-1/+1
|\ \ \
| * | | Fix elasticsearch version in python requirementsRadoslaw Smigielski2019-04-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OpenStack Python requirements check fails on Python elasticsearch with error: > Requirement for package elasticsearch excludes a version > not excluded in the global list. Change-Id: Iadb5a14d495dbf242970b8b1f4705cd33545a7eb Closes-Bug: #1826782
* | | | Merge "change function list_traces of mongodb module"Zuul2019-05-061-1/+1
|\ \ \ \
| * | | | change function list_traces of mongodb moduleXiaojueGuan2019-05-031-1/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | osprofiler fails when it is configed with mongon. the minimum version of pymongo osprofile requires is 3.0.2 and in this version and after when function list_traces is is invoked error will show described in the bug issue. Change-Id: I2510660c36aaa89117a97c67b4cb61fa3dade14d Closes-Bug: 1827480
* | | | Replace git.openstack.org URLs with opendev.org URLscaoyuan2019-04-294-7/+7
|/ / / | | | | | | | | | Change-Id: Id2b126d0b66a24a099fb7f52aa819b4b0ac0f7c7
* | | Minimum versions of databases with JSON data type support2.7.0Radoslaw Smigielski2019-04-211-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SQLAlchemy collector requires database JSON data type support which is fairly new feature and missing in versions older than: - MariaDB 10.2 - MySQL 5.7.8 Let's document that SQLAlchemy collector requirement. Change-Id: Ifb379a40d90d252d56d4f830e75bbfa08bf66a01 Closes-Bug: #1825693
* | | OpenDev Migration PatchOpenDev Sysadmins2019-04-192-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit was bulk generated and pushed by the OpenDev sysadmins as a part of the Git hosting and code review systems migration detailed in these mailing list posts: http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.html http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html Attempts have been made to correct repository namespaces and hostnames based on simple pattern matching, but it's possible some were updated incorrectly or missed entirely. Please reach out to us via the contact information listed at https://opendev.org/ with any questions you may have.
* | | Dropping the py35 testingGhanshyam Mann2019-04-163-6/+7
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | All the integration testing has been moved to Bionic now[1] and py3.5 is not tested runtime for Train or stable/stein[2]. As per below ML thread, we are good to drop the py35 testing now: http://lists.openstack.org/pipermail/openstack-discuss/2019-April/005097.html [1] http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004647.html [2] https://governance.openstack.org/tc/reference/runtimes/stein.html https://governance.openstack.org/tc/reference/runtimes/train.html Change-Id: Idb246e18956ae67795b06d2968c0d5ee19940e47
* | Merge "Allow OSPROFILER_TRACE_SQLALCHEMY to be overridden"Zuul2019-04-091-1/+1
|\ \ | |/ |/|
| * Allow OSPROFILER_TRACE_SQLALCHEMY to be overriddenIlya Shakhat2019-04-081-1/+1
| | | | | | | | Change-Id: Idc3f10b108781d09dd9e871b20bbb6a1551f423c
* | Rename OSProfiler-enabled Tempest jobIlya Shakhat2019-04-081-3/+3
|/ | | | | | | A new name reflects that only smoke tests are executed and that Redis driver is used. Change-Id: I79abc1afd67c134842c1e7b432a7da6bdcb37d3d
* Merge "Don't fail if sqlalchemy driver fails to initialize"Zuul2019-03-201-37/+43
|\
| * Don't fail if sqlalchemy driver fails to initializeThomas Bechtold2019-03-191-37/+43
| | | | | | | | | | | | | | | | | | | | | | | | Given that the driver is initialized during the service startup (eg. like Keystone, Nova, ...) a osprofiler driver failure has a huge impact on the service (when the driver fails, the whole service is not usable). We want to avoid that and just log error/exceptions but keep the services running. Change-Id: I5688f10364884a74b7eb44c0c8bda15730ccd424 Closes-Bug: 1819433
* | Update master for stable/steinOpenStack Release Bot2019-03-182-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | Add file to the reno documentation build to show release notes for stable/stein. Use pbr instruction to increment the minor version number automatically so that master versions are higher than the versions on stable/stein. Change-Id: I8e44cbe2b76414c3adc120e9c86a446e57ca5bfd Sem-Ver: feature
* | Merge "Collect traces from Tempest job"Zuul2019-03-182-1/+59
|\ \
| * | Collect traces from Tempest jobIlya Shakhat2018-09-172-1/+59
| | | | | | | | | | | | | | | | | | All traces are stored under osprofiler-traces subfolder. Change-Id: I01a1f93c3a69a3e4bd2ed7777b0cdff58016d728
* | | Merge "Add a job to run full Tempest with enabled profiler"Zuul2019-03-183-0/+28
|\ \ \ | |/ / | | / | |/ |/|
| * Add a job to run full Tempest with enabled profilerIlya Shakhat2018-09-173-0/+28
| | | | | | | | | | | | | | | | | | Default Tempest jobs only execute tests, but do not configure osprofiler library. This patch adds a job that executes full Tempest with enabled osprofiler. Currently the job is non-voting. Depends-on: I64f30c36adbf7fb26609142f22d3e305ac9e82b5 Change-Id: Ib0ad4d22b62dba7cfea76283be2d87574f010c87
* | Merge "Change python3.5 job to python3.7 job on Stein+"2.6.0Zuul2019-02-151-1/+1
|\ \
| * | Change python3.5 job to python3.7 job on Stein+Corey Bryant2019-02-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a mechanically generated patch to add a unit test job running under Python 3.7 and drop the Python 3.5 unit test job. python3.5 was the only supported python3 version on Xenial. Now that we have Bionic nodes supporting python3.6 and python3.7, let's switch to testing with python3.7 in addition to python3.6 in Stein and beyond. See ML discussion here [1] for context. [1] http://lists.openstack.org/pipermail/openstack-dev/2018-October/135626.html Change-Id: I745a7899119bb41b4db749961f070963aef06ca1 Story: #2004073 Task: #27440
* | | Add sqlalchemy collectorThomas Bechtold2019-02-144-0/+151
|/ / | | | | | | | | | | | | | | | | | | Beside the already available collectors, add a sqlalchemy based collector. This is useful if you don't want to maintain another DB solution and just use the (usually) already available database. The driver currently implements the notify() and get_report() methods so it is possible to store trace points and to get a single trace. Change-Id: If91b35d4b97862c0ecf6677f4c6b95a09d411195
* | Merge "Reload keystone to apply osprofiler config"Zuul2019-01-261-0/+3
|\ \
| * | Reload keystone to apply osprofiler configIlya Shakhat2019-01-111-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | In DevStack Keystone is configured and started within the same phase (while other services allow to be configured before starting). To apply osprofiler configuration, Keystone needs to be reloaded. Change-Id: Icf69c4e7f602702cf68986a6073b2cd4c0c3abe8