| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: I0e246a5701e376544ac5a804dba31c71a4ab8f9c
|
|
|
|
|
|
|
| |
H703 doesn't exist in hacking>=0.10.2, so remove it.
Fix E126 violations and remove E126.
Change-Id: I727282e4e7f276318f3cdd50d885941ab8b4ff49
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
OpenStack projects are no longer being tested under Python 2.6, so
remove the trove classifier implying that this project supports 2.6.
Change-Id: I9eba1d7547c3459a707110785b79bc79914a88a8
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
testr uses anydbm to create a database, but python 3 dropped support for
the database format that is the default in python 2. The default for
python 3 is available under python 2, so if we run the python 3 tests
before the python 2 tests everything works fine. Change the order in the
default environment list so that if someone checks out the repo and runs
'tox' all of the tests work.
Change-Id: I44b23add5acc297ca00d2d3c7747f0cfff85cc2f
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In order for the config generator's new hook for updating default values
to work, we have to return the same Opt objects from list_opts() that
our set_defaults() function is going to modify. There's no real need to
be making copies of the objects anyway, so just stop doing it.
Change-Id: I9c6149c354adc1827b773aa07bf5874981ee8b8f
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
It's more correct to use inspect.isclass(X) instead of type(X) == type
as if some parent of the class we're trying to trace has metaclass used,
the type will be that metaclass.
Change-Id: I5102eb46a7a377eca31375a0d64951ba1fdd035d
|
|\ \ \
| |/ /
|/| | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
For users that want to know what the currently used
trace headers are in a progamatic way it is nice to
expose these headers as constants that others can
easily import.
This makes it possible to do things like:
>>> from osprofiler import web
>>> web.X_TRACE_INFO
'X-Trace-Info'
>>> web.X_TRACE_HMAC
'X-Trace-HMAC'
Change-Id: Ibd9de5dde77b5a0f8b37b23fefc4ed6167f6a00a
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This tracing case has variety of corner cases, that need to
be treated separately. Let's skip staticmethods tracing until
this research willl be done.
Change-Id: I3effc9b9bf1ab3922d837cefe7ea472d9eedd6af
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | | |
Change-Id: I39156c20319609354639021fe778dc92c9acf8df
|
| | | |
| | | |
| | | |
| | | | |
Change-Id: I3a48ea3f1157c7f97dfa1773f66e0638abfc43a5
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
OSprofiler uses free-form notifications in fact, so any kind of data
might be included to the profiling trace. To be able to do that in
Ceilometer case, that use explicit event definitions, we need to
use its raw data events storage, that will include all notification
message.
To use this feature the following section needs to be set in
ceilometer.conf:
[event]
store_raw = info
where info is the notification level used.
Warning: if raw data is used, ALL events that come into ceilometer
with info notification level will be stored with raw data included,
there is no way to set this parameter only for profiler.* events.
Change-Id: I3ebf8ee34ac01e68d530a676ae840f7a62d897bd
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
To follow the pattern that nearly all oslo tests follow
move the tests out of the osprofiler root directory and into
the osprofiler module itself.
This makes it easier for new people to get involved and follows
the more common directory structure that people should already
be used to.
Change-Id: I384cdb5466d852dd4493e4fce2f0078545724416
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Instead of computing/finding the decorated function name using
a less robust function, use the one provided by oslo.utils which
is more robust.
Also at the same time, avoid refinding the function name every
single time the decorated function is called, as its needless to
do this once it has been completed once.
Change-Id: Id39a73ee80163dd930a5900d9631e3b8665e7a26
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Right now every project has its own copy of the profiler options,
This situation will make it very hard to keep up when we want to
change things in osprofiler. So we should consolidate the code
just like all other oslo libraries in osprofiler itself. However
one twist here is that we should avoid needing oslo.config as a
hard requirement for project that do not want to use it, so we
should add this as an extra in setup.cfg and adjust the testenv
as well.
Change-Id: I4343136be501551bb2c87d4b66d839c4e63a67fc
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
argparse was external in python 2.6 but not anymore, remove it
from requirements.
This should help with pip 8.0 that gets confused in this situation.
Installation of the external argparse is really not needed.
Change-Id: Id8984ef560f0bb3006e360a8cb32fc015a9ccfcf
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
os.popen() is deprecated since version 2.6. Resolved with use of
subprocess module.
Change-Id: I5e8a3cb1d2a50656025ca0fec5f95b581f0af7b4
Closes-Bug: #1529836
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
OSprofiler supports py34, and it should be add to env list
Change-Id: Id0aebc0d871a4ecf6dde4144199190a381a0642f
|
|\ \ \ \
| |/ / /
|/| | | |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Previously pure datetime.datetime.utcnow() was used here, it makes
osprofiler work ok in real OpenStack environment, where
oslo.messaging is used, but in case of out-OpenStack env
it was impossible to simply dump timestamp.
Change-Id: I98d9f090e6501c26c9c35b70f65378c58ec2fca8
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Python 3.3 support is being dropped from Mitaka
by INFRA team. This patch is updating the same.
Change-Id: I03835c3a0e70656020f58285ac6d0e66d09c3448
Closes-Bug: #1526170
|
|\ \ \ \
| |/ / / |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Python 2.6 is not supported from Mitaka, as per Infra.
The following patch removes the support for the same.
Change-Id: Ieae4ca2695f5e0f73efece34c631204b51004b00
|
| |/ /
|/| |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This allows us to automate enabling OSProfiler in OpenStack
Just add to DevStack localrc file:
enable_plugin ceilometer https://github.com/openstack/ceilometer
enable_plugin osprofiler https://github.com/openstack/osprofiler
Change-Id: I3607407dd506723c1aad6696ec98eaed8a8ddd9e
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
osprofiler trace show <file_path> --html
will generate html report from file that contains trace info in json
Change-Id: I20eaf679ce30d34bd8f974438e3cb4ee958c857a
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
Using angular logic instead of CSS rules for hover functionallity
is really crazy idea that works very slow when we have >200 elements
on page.
Change-Id: Ifdf11694e526918b71ce3b384d94eea6b7357c4b
|
| |
| |
| |
| |
| |
| |
| | |
We shouldn't .pop() trace_private from trace_args because it will
work only for first method in class.
Change-Id: Id713d1a1a9452bbdd2f58fde9499159cdfc0a037
|
| |
| |
| |
| | |
Change-Id: I976c619d7afbc6b4672bbb7472af918b8a43c3ff
|
|/
|
|
| |
Change-Id: I83aa97b3caadb053fddc76088d19ed5110035c67
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This metaclass allows to trace all classes inherited from
the parent using it.
Possible usage can look like:
>>> @six.add_metaclass(profiler.TracedMeta)
>>> class RpcManagerClass(object):
>>> __trace_args__ = {'name': 'rpc',
>>> 'info': None,
>>> 'hide_args': False,
>>> 'trace_private': False}
>>>
>>> def my_method(self, some_args):
>>> pass
>>>
>>> def my_method2(self, some_arg1, some_arg2, kw=None, kw2=None)
>>> pass
Adding of this metaclass requires to set __trace_args__ attribute to the
class we want to modify. __trace_args__ is the dictionary with one
mandatory key included - "name", that will define name of action to be
traced - E.g. wsgi, rpc, db, etc...
Change-Id: I202680d47ec3f037824cf62f3dc0e3072a1baf7f
|
|\ |
|
| |
| |
| |
| | |
Change-Id: Ia6bc1eedddeebb0aceb01d3c34b066d0b268f34d
|
|/
|
|
|
|
|
|
|
|
| |
Caching is enabled by default from pip version 6.0
More info:
https://testrun.org/tox/latest/config.html#confval-downloadcache=path
https://pip.pypa.io/en/stable/reference/pip_install/#caching
Change-Id: I2f917ca797bcdad8d854440183867a09f7563cdc
|
|
|
|
|
|
|
|
| |
0.3.1 osprofiler release had the bug related to the compatibility
between old-fasion api-paste.ini way of setting HMAC keys and
tracing enabling and new-fashion one. This commit fixes it.
Change-Id: Ieb820acb6eb4614e5b66f6d8dbce4209a31833c3
|
|
|
|
| |
Change-Id: Id335bfdf49ed88edd14e896a48c22b11113600c8
|
|
|
|
|
|
|
| |
* osprofiler.web.WsgiMiddleware now treats hmac_keys as optional arg
* add hmac_keys argument to enable() method to use it later in
OpenStack services setup
Change-Id: Ib544d2732c7307bc5405b4336eda80120d2f43af
|
|
|
|
| |
Change-Id: I236e5100d08303ef046cee9370653ee0a52e4327
|
|
|
|
| |
Change-Id: I99efd5d6844df9f706198545d7ca752292822db0
|
|
|
|
| |
Change-Id: I6572b7dcbce1a04453df563422bde9bf6fc16879
|
|
|
|
| |
Change-Id: Ib17a511f029701581df98be21099309ffd659779
|