Changelog¶
2.3¶
- Add API methods:
DELETE /notification/all
andDELETE /event/all
moira-alert/moira#73. - Add notifier config option: DateTime format for email sender moira-alert/moira#74.
- Add Graphite-API support for remote triggers moira-alert/moira#75. See more: Remote Triggers Checker. Thanks to @errx.
- Fix newlines in trigger description body for web and email sender moira-alert/moira#76.
- Add option to enable runtime metrics in Graphite-section of configuration moira-alert/moira#79.
- Add new fancy email template 🎂 moira-alert/moira#82.
- Change default trigger state to TTLState option instead of NODATA moira-alert/moira#83.
- Refactor maintenance logic moira-alert/moira#87. See more: Maintenance.
- Add basic false NODATA protection moira-alert/moira#90. See more: Self State Monitor.
- Prohibit removal of contact with assigned subscriptions found moira-alert/moira#91.
- Make trigger exception messages more descriptive moira-alert/moira#92.
- Make filter cache capacity configurable moira-alert/moira#93. See more Filter Configuration.
- Fix incorrect behavior in which the trigger did not return from the
EXCEPTION
state moira-alert/moira#94. - Remove deprecated pseudo-tags, use checkboxes instead moira-alert/moira#95. See more: Ignore specific states transitions.
- Allow to use single-valued thresholds (ex. only
WARN
or onlyERROR
) moira-alert/moira#96. - Reduce the useless CPU usage in Moira-Filter moira-alert/moira#98. Thanks to @errx.
- Add concurrent matching workers in Moira-Filter moira-alert/moira#99. Thanks to @errx.
- Update Carbonapi to 1.0.0-rc.0 moira-alert/moira#101.
- Improve checker performance moira-alert/moira#103.
- Add Markdown support in contact edit modal view moira-alert/web2.0#138.
- Fix default timezone in trigger moira-alert/web2.0#173.
- Add ability to type negative numbers in simple trigger edit mode moira-alert/web2.0#169.
- Fix trailing whitespaces in tag search bar moira-alert/web2.0#139.
- Update Moira Client 2.3.4.
- Update Moira Trigger Role 2.3.
Important
Redis DB conversion is desirable.
Moira 2.3 has some structure changes in Redis DB. It will work fluently out of the box, but we recommend you to run converter once Moira is updated.
moira-cli -update --config=/etc/moira/cli.yml
/etc/moira/cli.yml¶
redis:
host: localhost
port: "6379"
dbid: 0
log_file: stdout
log_level: debug
If you would like to downgrade back to Moira 2.2, you should run CLI-converter.
moira-cli -downgrade --config=/etc/moira/cli.yml
Both cases imply usage of Moira-Cli v.2.3, you can find it on Release Page.
2.2¶
- Add Redis Sentinel support.
- Increase new metric event processing speed by adding a cache on metric patterns.
- Update carbonapi (new functions: map, reduce, delay; updated: asPercent).
- Optimize reading metrics while checking trigger (removed unnecessary Redis transaction).
- Add domain autoresolving for self-metrics sending to Graphite.
- Fix concurrent read/write from expression cache.
- Re-enable Markdown in Slack sender.
- Optimize internal metric collection.
- Replace pseudotags with ordinary checkboxes in Web UI (but not on backend yet).
- Fix bug that allowed to create pseudotags (ERROR, etc.) as ordinary tags.
- Add metrics for each trigger handling time.
- Translate pagination.
- Make sorting by status the default option on trigger page.
- Hide tag list on trigger edit page.
- Sort tags alphabetically everywhere.
- Highlight metric row on mouse hover.
- Automatically add tags from search bar when creating new trigger.
- Add metric name to “Trigger has same timeseries names” error message.
- Update event names in case trigger name had changed.
- Fix bug in triggers with multiple targets. Metrics from targets T2, T3, … were not deleted properly.
- Fix old-style configuration files in platform-specific packages.
- Fix bug that prevented non-integer timestamps from processing.
- Fix logo image background.
- Fix sorting on -s and 0s.
- Fix UI glitch while setting maintenance time.
- Fix retention scheme parsing for some rare cases with comments.
2.1¶
- Throw an exception if any target except the first one resolves in more than one metric.
- Fix Moira version detection in CI builds.
- Add user login information to API request logs.
- Fix long interval between creating a new trigger and getting data into that trigger.
2.0¶
Version 2.0 is fully rewritten in Go instead of Python. This implies lower CPU load in Checker and API microservices, but also changes the list of supported Graphite functions.
We also introduce new UI based on React. It is not backwards-compatible with old API, but new API supports both old and new UI.
Breaking Changes¶
- New structure of Configuration files.
- New Advanced mode expression format. Moira 2.0 supports govaluate expressions instead of Python expressions. Use
moira-cli -convert-expressions
to convert. - API methods URLs do not have trailing slashes anymore.
- API
/notification
method returns valid JSON list instead of plain text. ttl
parameter in API calls is always a number instead of string.- API
PUT
methods strictly separate create and update operations. - There is no
tag maintenance
entity anymore. - Error messages return valid JSON instead of plain text.
- Support for Graphite functions changed. See carbonapi compatibility list for details.
Other Improvements¶
- Internal Graphite metric names changed.
- Numerous bugs fixed. Some new were created :)