As per the community goal of migrating the policy file
the format from JSON to YAML[1], we need to do two things:
1. Change the default value of '[oslo_policy] policy_file''
config option from 'policy.json' to 'policy.yaml' with
upgrade checks.
2. Deprecate the JSON formatted policy file on the project side
via warning in doc and releasenotes.
Also replace policy.json to policy.yaml ref from doc and tests.
[1]https://governance.openstack.org/tc/goals/selected/wallaby/migrate-policy-format-from-json-to-yaml.html
Change-Id: Ibfb162f88cb04c0b2af3fbf41cfcd96bc7e351be
We change the default value of kafka.legacy_kafka_client_enabled from
True to False. The use of new Confluent Kafka client is recommended.
DevStack plugin does not set this option anymore.
Depends-On: https://review.opendev.org/740959
Depends-On: https://review.opendev.org/740966
Change-Id: I4d57b8893a6a131769009dc3299789d3fc89bab6
Story: 2007924
Task: 40338
In some cases, users may want to send periodic notifications for
notification types other than webhooks.
Story: 2006837
Task: 37417
Depends-On: https://review.opendev.org/#/c/694596
Change-Id: Ia2c50e623aa79e06d2d35df4735fb2805fbf40ed
The commit contains upgrade of Elk components, default index pattern
creation in new API.
Story: 2006376
Task: 38125
Depends-On: https://review.opendev.org/#/c/679781
Change-Id: Ib0b966c0d7db993802b5372156c41b3ebdf1a77f
The Stein release does away with the concept of built in notifications,
in favour of treating all notification types equally.
This patch fixes an issue with the DB schema migration associated
with this change, which will fail if any notifications using
built-in notification types are configured at the time of the upgrade.
Story: 2006984
Task: 37746
Change-Id: I2e3f08edf1ab6aec526ad93d04effb91ddca600a
When a large post (> 10s of MB) is made to the Monasca API an attempt
is made to write these metrics to the metrics topic in Kafka. However, due to
the large size of the write, this can fail with a number of obscure errors
which depend on exactly how much data is written. This change supports
splitting the post into chunks so that they can be written to Kafka in
sequence. A default has been chosen so that the maximum write to Kafka
should be comfortably under 1MB.
A future extension could support splitting the post by size, rather than the
number of measurements. A better time to look at this may be after the
Python Kafka library has been upgraded.
Story: 2006059
Task: 34772
Change-Id: I588a9bc0a19cd02ebfb8c0c1742896f208941396
At present, all time series are accumulated in the same database in
InfluxDB. This makes queries slow for tenants that have less data. This
patch enables the option to use separate database per tenancy.
This changeset implements the changes on monasca-api which handles read
requests to InfluxDB database.
It also updates the relevant docs providing link to the migration tool
which enables users to migrate their existing data to a database per
tenant model.
Change-Id: I7de6e0faf069b889d3953583b29a876c3d82c62c
Story: 2006331
Task: 36073
At present, dimensions are not scoped by time window, which makes
dimension related queries to large databases timeout because it searches
all of time instead of a time window specified on the grafana app.
This commit implements the server side changes required to scope the
search query by the time window specified on the app.
Change-Id: Ia760c6789ac0063b8a25e52c9e0c3cc3b790ad2d
Story: 2005204
Task: 35790
The change introduces the possibility to run the API with the new
confluent-kafka client. It has to be enabled in the configuration file.
Story: 2003705
Task: 35859
Depends-On: https://review.opendev.org/680653
Change-Id: Id513e01c60ea584548c954a8d2e61b9510eee8de
Upgrade Apache Kafka to current stable version 2.0.1.
Issues have been observed with legacy Kafka producer being used in
notification engine together with newer Kafka broker versions.
Following changes are included:
* Deprecated configuration option `advertised.host.name` is replaced
with `listeners`.
* Default `log4j.properties` is used.
Story: 2005624
Task: 30933
Change-Id: I898b511b2ab8f68e4850faab2098044cd3f94ee7
Updated default config to use InfluxDB v1.7.6.
This appears to work, at least for viewing
metrics, persisting them, and some CLI commands.
Updated influxdb.conf to bring in line with sample
config.
Drops support for configs of older versions.
Story: 2005624
Task: 30877
Co-Authored-By: Isaac Prior <isaac@stackhpc.com>
Change-Id: Ib73151e6e7d0934303c9e801bb018bc22f1716ae
Creating a cassandra connection can be limited by connection_timeout option.
Story: 2005450
Task: 30502
Change-Id: I8803e28fe8c2c11e819be44db4ef93cb19b47a1d
* Brings alarms count endpoint to parity with the alarms list endpoint
* Brings alarms count endpoint to parity with the alarms counnt endpoint
in the depricated java api
* Allow metric_dimensions filter to filter on multiple dimension values:
metric_dimensions=dns|compute|nova
Change-Id: I46ca0e6a6da46cb850af44768de237e41a43484a
Story: 2005311
Task: 30216
The standard path is /etc/monasca/monasca-api.conf (instead of
/etc/monasca/api.conf).
/etc/monasca/api.conf and /etc/monasca/api-config.conf are still
supported (in case the new file paths are not available) but a
deprectation message is printed.
Story: 2004708
Task: 28738
Depends-On: https://review.openstack.org/#/c/628936/
Change-Id: I94e853f869db7b0a434a1a05517255ae62131132
Add an alembic migration to remove the built-in plugins. Monasca-notification
becomes responsible for creating them, if they are enabled in the
monasca-notification config file. This also adds some very basic tests and
fixes an issue with Python 3 support (highlighted by the tests) where the
schema was stored as unicode which prevented hashing.
Story: 2003801
Task: 26533
Change-Id: I74848bac2137e446c8825f23778f6a16a96a2048
Add a tool to run before upgrading a Monasca installation
that will check for potential issues and report on readiness to upgrade.
For Monasca, this initial version effectively does nothing, but gives a
framework for future checks to be included.
This is a community-wide story for Stein [1].
Story: 2003657
Task: 26142
[1] https://governance.openstack.org/tc/goals/stein/upgrade-checkers.html
Change-Id: I799602caa4029d67f59307bf1ca0d1e8f254d415
It has been deprecated in Ocata release. `database.connection` should be
used instead.
Change-Id: I8ed5f0e248531e1cada182e43cebe44edb324148
Story: 2004257
Task: 27793
Storm 1.1.1 is affected by the security bug CVE-2018-1332 [1].
It is recommended to upgrade to 1.1.3 (latest in the 1.1.x series).
[1]: http://www.securityfocus.com/bid/104399
Story: 2003031
Task: 23059
Change-Id: I95e9235556c9e639083482b63398a657c52f6abb
Keep log message format to ver. 0.9.0 to support old kafka-python
consumers.
Story: 2002746
Task: 22599
Change-Id: I6a092d64906a939d404abb3e43fc017d2eee74ea
Added policies and used policy enforcement engine
from monasca-common.
- Replaced security with oslo.policy
- Updated unit tests and implemented some new tests
- Added a new entry point for generating sample policy file by tox
story: 2001233
task: 6355
Change-Id: I4aa444fe6ec883160c03c201145c77994b6615f9
Signed-off-by: Amir Mofakhar <amofakhar@op5.com>
Change migrates the monasca-api to use oslo-config-generator in
order to always build newest configuration file. That removes
the need of maintaning the file along with changes to oslo configuration.
The example of the file is also included in the documentation.
Also:
* ported case for launching api under WSGI and allowing the argument
parsing of oslo to take place
Story: 2000970
Task: 4865
Story: 2000964
Task: 4106
Change-Id: I57547b0e2122e40f58db5f949773900b76214526