36 Commits

Author SHA1 Message Date
Seth Foster
0c569c67fd
Add subsystem metrics
- Adds a Metrics() class that can track data such as number of
events the callback receiver inserted into database
- Exposes this metric data at the api/v2/metrics/ endpoint.
This data is prometheus-friendly
- Metric data is stored in memory, then periodically saved to Redis.
- Metric data is periodically broadcast to other nodes in the cluster,
so that each node has a copy of the most recent metric data collected.
2021-03-25 15:23:52 -04:00
Ryan Petrello
c2ef0a6500 move code linting to a stricter pep8-esque auto-formatting tool, black 2021-03-23 09:39:58 -04:00
chris meyers
093d204d19
fix flake8 2020-03-18 16:10:19 -04:00
chris meyers
be58906aed
remove kombu 2020-03-18 16:10:17 -04:00
chris meyers
2a2c34f567
combine all the broker replacement pieces
* local redis for event processing
* postgres for message broker
* redis for websockets
2020-03-18 16:10:15 -04:00
chris meyers
355fb125cb
redis events 2020-03-18 16:10:15 -04:00
chris meyers
c8eeacacca
POC channels 2 2020-03-18 16:10:12 -04:00
Ryan Petrello
40b1e89b67
add the ability to disable RabbitMQ queue durability 2019-05-28 15:49:32 -04:00
Ryan Petrello
f223df303f
convert py2 -> py3 2019-01-15 14:09:01 -05:00
Ryan Petrello
867ff5da71
minor nit for https://github.com/ansible/tower/pull/3060 2018-10-12 16:17:14 -04:00
Ryan Petrello
d4e3127fb4
properly handle AnsibleVaultEncryptedUnicode objects in the callback 2018-10-12 12:29:46 -04:00
Wayne Witzel III
91c6d406c5 Rollback celery 2018-02-22 09:37:14 -05:00
cclauss
e1a8b69736 from six.moves import xrange for Python 3 2018-02-08 22:41:33 +01:00
cclauss
e18838a4b7 Modernize Python 2 code to get ready for Python 3 2018-02-08 17:26:22 +01:00
Wayne Witzel III
14c5123fda
Update celery environ and tasks 2017-11-09 17:21:19 -05:00
Matthew Jones
4ed054f568 Implement optional message persistence on callback events 2017-02-08 11:11:14 -05:00
Matthew Jones
ddaf4ff2d0 Merge branch 'fix_fact_caching' into devel
* fix_fact_caching:
  Convert the fact data structure to the right type
  Fixing up fact cachine related unit tests
  Port fact caching system to rabbitmq
2016-11-21 23:15:13 -05:00
Matthew Jones
c6ebdb9b26 Switch to using callback queue by default
* Fix an issue where we grab the wrong setting for the callback
  connection
* Remove old ansible.cfg that we shipped with the setup playbook for
  centos 6
2016-11-21 13:26:32 -05:00
Matthew Jones
3b07d9745d Port fact caching system to rabbitmq
* Purge all references to zmq also
* New setting to control the queue it works on
2016-11-18 09:44:17 -05:00
Chris Church
31faca2b4f Add option to use callback queue for job events. 2016-10-28 22:32:49 -04:00
AlanCoding
38879d339b flake8 fix 2016-08-26 13:57:35 -04:00
Matthew Jones
dcb4959443 Initial qpid development work
* Switch base tower devel image from u14.04 to c7
* Switch container image to build python dependencies into itself
  instead of forcing it to be built on startup
* Upgrade venv pip to 8.1.2
* Neuter queue.py which was heavily tied to redis and was basically
  orphaned code
* Alter local_settings to override default cache settings and use
  memcached
* Alter local settings to refer to qpid instead of redis for celery
  broker
* Purge redis python dependencies and add qpid and memcached
* Update docker-compose to purge redis and add qpid and memcached
2016-08-24 16:23:47 -04:00
John Mitchell
32d1c0e4db fixed copyright date 2015-06-11 16:10:23 -04:00
Matthew Jones
31d0342d41 More copyright headers for api side stuff 2015-05-29 12:10:40 -04:00
Matthew Jones
b3da3b34a3 Changing some legal headers for python source files 2015-05-29 12:10:39 -04:00
Matthew Jones
bb3732b2c1 Cleaning up some flake8 errors, pyflakes in this case 2015-02-10 17:00:23 -05:00
Luke Sneeringer
99b8b8e193 Beginning work on reintroducing ZeroMQ. 2014-11-21 08:43:54 -06:00
Luke Sneeringer
ec55603e3f Fixing various small issues to improve tests. 2014-11-05 16:07:57 -06:00
Luke Sneeringer
2e19b65738 Fix for run_task_system 2014-11-04 13:51:08 -06:00
Luke Sneeringer
8346f68f2c Make pubsub.subscribe work. 2014-11-04 11:16:53 -06:00
Luke Sneeringer
fd9647ce94 Use closing consistently. 2014-11-04 10:46:17 -06:00
Luke Sneeringer
8d99ef116c Callback Receiver Fixes. 2014-11-04 10:39:53 -06:00
Luke Sneeringer
8d90650134 Shifting job callbacks to ZeroMQ. 2014-10-29 13:51:47 -05:00
Luke Sneeringer
99381f11fa Beginning swap of ZeroMQ for Redis. 2014-10-27 16:18:04 -05:00
Luke Sneeringer
446f29927d Proof of concept Redis PubSub. 2014-10-23 08:50:46 -05:00
Luke Sneeringer
0d5dbd189e Proof of concept Redis FIFO 2014-10-23 08:50:46 -05:00