The change updates the imports to use simplejson instead of ujson and
monasca_log_api.common.rest instead of monasca_common.rest
Temporarily set monascalog-python3-tempest as voting false
This is an alternative to this change
https://review.opendev.org/#/c/724658/
Change-Id: Iae94376b38cae8a1eb8aa6a704fc2ca5d383adaf
Story: 2007549
Task: 39601
Falcon 2.0.0 introduces some breaking changes. The relevant ones here are:
- falcon.testing.TestCase.api property was removed
- falcon.testing.TestBase class was removed
- falcon.HTTPRequestEntityTooLarge exception was renamed to
falcon.HTTPPayloadTooLarge
Additionally, the default behaviour for handling trailing slashes on
URIs also changed:
https://falcon.readthedocs.io/en/latest/user/faq.html#how-does-falcon-
handle-a-trailing-slash-in-the-request-path
This commit adds support for using the new release.
Story: 2005695
Task: 33474
Change-Id: I2379522efef81b919098a0143b66cc259a184e70
Create a tox environment for running the unit tests against the lower
bounds of the dependencies.
Create a lower-constraints.txt to be used to enforce the lower bounds
in those tests.
Add openstack-tox-lower-constraints job to the zuul configuration.
Remove the cap on eventlet at the same time to make the requirements
match the global list.
See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.
Change-Id: I5efe5f6e7a0725f1f20de11ca0b2fe656a4c099d
Depends-On: https://review.openstack.org/563087
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Similar to other openstack projects,
monasca-log-api should provide information
about request's context in the log information.
This is done by:
* implementing custom Request that creates context (oslo.context)
* changing logging configuration to use ContextLogFormatter
Additionally, since information like tenant-id can be
retrieved from the context, modified resource code to use
that.
Change-Id: I992a2f4de64b54a705cc2bafdb3e83de0b1691c7
Gunicorn is not part of global-requirements.
Having it here prevents check-requirements from working
Change-Id: I6575d42ad0566ec6727e0e359966e8129c003635
Sync manually with requirements. The automatic sync will not work yet
since gunicorn is not in global-requirements file and then the sync
stops.
So, let's sync what can be synced...
Remove flake8, let hacking install it as dependency in the corresponding
version.
Disable E126 flake8 test since it now fails due to newer flake8
version.
Change-Id: I9547e654de0c618386d56dd98c053118ec0100cf
Following commit adds monitoring
for monasca-log-api with metrics:
* monasca.log.in_logs - amount of logs that API has received
* monasca.log.in_logs_rejected - size of received logs in bytes
* monasca.log.processing_time_ms - log-api time to process received logs
* monasca.log.out_logs - amount of logs pubslished to kafka
* monasca.log.out_logs_lost - amount of logs that were lost (critical errors)
* monasca.log.publish_time_ms - time log-api needed to pubslish logs
* monasca.log.in_bulks_rejected - amount of rejected bulk requests
* monasca.log.out_logs_truncated_bytes - amount of truncated bytes from messages
Change-Id: Ib4165fe128e87b356415da8423f536d393c89f01
This patch cleans up the requirement list to remove six module
that is not used anymore directly by monasca-log-api.
Change-Id: I2ba9058005620c4f791a912a792ec2220b9bd093
In terms of using https for python monasca-log-api
i've discovered a Bug in gunicorn which makes
running with ssl mode impossible. This bug
(https://github.com/benoitc/gunicorn/issues/1177) is
fixed in gunicorn version 19.5.0.
Change-Id: Ia2163243786677e81ff002ac7f65f43080058d5c
Implemented specification proposal for batch support at,
https://review.openstack.org/#/c/273058/
Note, if you want to use this in the monasca-vagrant environment
it should work. I've modified the value of the field kafka_url in
etc/monasca/monasca_log_api.conf to use the kafka server in the
mini-mon vm.
After you've deployed monasca-vagrant using "vagrant up"
ssh into mini-mon "vagrant ssh mini-mon" and then create a new
topic for logs which can be done running the command:
/opt/kafka/bin/kafka-topics.sh --create -zookeeper localhost:2181
--replication-factor 1 --partitions 128 --topic logs
To watch the log messages at the console in the mini-mon VM
/opt/kafka/bin/kafka-console-consumer.sh
--zookeeper localhost:2181 --topic logs
Change-Id: I4247d1824a237ecbe4db878e72485938f40a31c3
Created middleware to authorize access
to log api. Only configured roles (i.e. default) can access
the api. Also middleware detect if the request would
come from monasca-log-agent.
Summary:
- middleware added (logic + tests)
- extended documentation
Additionaly:
- added better tox processing
- added minimum coverage
Change-Id: Ic848bfa3a8552887661f8223078efe3a4bca5c37
- removed own kafka abstraction in favour of monasca-common
- removed monasca keystone context filter, not actually used
- changed URI of logs endpoints to /v1.0/log/single
Change-Id: Iaceabdce2b2862451cfe63d2a612577d7710022b
- single log message with rest api
- parsing / validation for data
- configuration
- bootstrapping
- tox
- unit tests
Change-Id: I7386b3500ee9097383a573bf915da55ce2ff881f