Commit Graph

32 Commits

Author SHA1 Message Date
Ben Reinhart
6d9d362ca8 chore: use before_request hook for dynamic routes (#14568)
* chore: use before_request hook for dynamic routes

* Shorten hook names

* Introduce with_feature_flags and update thumbnail tests

* Disable test that fails in CI but not locally

* Add test for reports
2021-05-14 12:49:25 -07:00
Daniel Vaz Gaspar
7a95f8f839 fix: flaky test on reports (#14544) 2021-05-10 13:27:12 +01:00
Daniel Vaz Gaspar
45e209d487 fix: flaky test for alerts and reports (#14347) 2021-04-26 18:56:48 +01:00
Daniel Vaz Gaspar
38a7c537ff feat: add alerts & reports to docker compose (#14267)
* feat: add alerts & reports to docker compose

* change to firefox

* add missing package
2021-04-22 17:42:52 +01:00
Lily Kuang
df7e2b6a8e feat(alert/report): chart as csv format attachment for email and slack (#13828)
* add ui for setting report format

* refactor default notification format

* init csv data alert report

* add report format to report_schedule model

* add ALERTS_ATTACH_REPORTS feature flag

* fix lint

* update check image tag

* fix migrations

Co-authored-by: samtfm <sam@preset.io>
2021-04-15 14:07:49 -07:00
Lily Kuang
7980b767c0 feat: Implement Celery SoftTimeLimit handling (#13740)
* log soft time limit error

* lint

* update test
2021-04-12 13:18:17 -07:00
Sam Faber-Manning
911462a148 feat: only send alert error emails to owners of the alert (#13862)
* only send alert error emails to owners of the alert

* reformat long lines

* fix send to owners and add tests

* fix pylint errors

* fix formatting
2021-04-12 08:51:32 -07:00
Daniel Vaz Gaspar
89817d4cee fix(alerts/reports): working timeout with celery kill and logic fix (#13911)
* fix: working timeout with celery kill and logic fix

* add config flags

* fix typo

* fix python lint

* log query time for alerts

* add tests

* fix lint
2021-04-08 11:23:31 +01:00
Lily Kuang
762101018b feat(alert/report): add ALERTS_ATTACH_REPORTS feature flags + feature (#13894)
* Add a feature flag ALERTS_ATTACH_REPORTS

* update test

* update feature flag

* add comment for feature flag

* add unit tests for alerts with attachments disabled

* fix lint

Co-authored-by: samtfm <sam@preset.io>
2021-04-01 13:06:45 -07:00
Jack Fragassi
304e3b36eb feat(alerts & reports): Easier to read execution logs (#13752)
* Prep for migration

* Migration for execution id column

* Generate execution ids for alerts and reports

* Change execution id range

* Add execution id to API endpoint

* Add execution id to execution log view

* Change execution id range

* Change execution id to a uuid

* Fix execution id type

* Switch state and exec. id columns

* Change db column to UUIDType

* Python lint

* Fix failing frontend tests

* execution_id -> uuid

* Fix migration head

* lint

* Use celery task id as the execution id

* lint

* lint for real

* Fix tests
2021-03-30 08:46:16 -07:00
Lily Kuang
3f2e2c9976 fix(alert|report): allow null on chart and dashboard field (#13680)
* allow null on chart and dashboard field

* update api test
2021-03-18 09:17:50 +00:00
ʈᵃᵢ
3078c84d40 feat(reports): SLACK_API_TOKEN as callable or str (#13634) 2021-03-16 10:06:29 -06:00
Daniel Vaz Gaspar
139c7878a5 fix(alerts&reports): add celery soft timeout support (#13436)
* fix(alerts&reports): add celery soft timeout support

* make a specific exception for screenshots timeout

* fix docs, add new test
2021-03-08 14:21:18 +00:00
Daniel Vaz Gaspar
0b114fcbc5 feat(reports): send notification on error with grace (#13135)
* fix: add config to disable dataset ownership on the old api

* fix CI docker build

* fix logic

* add deprecation comment on the config

* feat: send alerts reports errors to recipients

* update

* feat(reports): send notification on error with grace

* merge and revert config

* fix lint and MySQL test

* fix mysql tests
2021-02-24 13:31:31 -08:00
Daniel Vaz Gaspar
6e3121268e fix(alerts): Handle None on results (#13289) 2021-02-23 09:50:55 +00:00
Karol Kostrzewa
974f4476e5 fix reports/commands_tests (#12864)
Co-authored-by: Ville Brofeldt <ville.v.brofeldt@gmail.com>
2021-02-22 14:53:14 -08:00
Moriah Kreeger
fc180ab2a6 fix: add alert report timeout limits (#12926)
* prevent working timeout and grace period from being set to negative numbers

* add extra validation

* lint

* fix black

* fix isort

* add js tests

* fix lint + more python schema validation

* add report schema test for timeout limits

* add extra test for null grace period
2021-02-22 11:12:10 -08:00
Lily Kuang
d8bd8ec896 fix(alert/report): alert modal loading dropdown options (#13222)
* alert modal loading

* add ui test
2021-02-22 01:59:33 +00:00
Daniel Vaz Gaspar
13a5b439fe feat(alerts): apply SQL limit to all alerts (#13150)
* feat(alerts): apply SQL limit to all alerts

* change limit to 2 and test

* undo mock

* mock, mock and mock

* lint
2021-02-17 18:03:35 +00:00
Daniel Vaz Gaspar
2e6ea76631 fix(alerts): void query with numeric comparison (#13090)
* fix(alerts): void query with numeric comparison

* remove config changes

* fix tests

* better logic

* fix logic

* fix logic

* Improve test readability
2021-02-15 17:09:47 +00:00
Daniel Vaz Gaspar
fa4c118e2d fix: API tests, make them possible to run independently again (#13076)
* fix: API tests, possible to run independently

* fix workflow name
2021-02-11 18:19:41 +00:00
Daniel Vaz Gaspar
74f3faf1cd fix(reports): make name unique between alerts and reports (#12196)
* fix(reports): make name unique between alerts and reports

* add missing migration

* make it work for mySQL and PG only (yet)

* fixing sqlite crazy unique drop

* fixing sqlite missing one col
2020-12-24 09:18:46 +00:00
Daniel Vaz Gaspar
09a381da1d fix(reports): notification without standalone link back to superset (#12174)
* fix(reports): notification without standalone link back to superset

* fix comment
2020-12-23 11:31:08 +00:00
Daniel Vaz Gaspar
8d5dcc5784 fix(report): fix last_eval_dttm sort and more tests (#12121)
* fix(report): fix last_eval_dttm sort and more tests

* remove unnecessary permissions and split code path

* remove SIP_34_ALERTS_UI

* disabling an alert that is working will turn it to not triggered
2020-12-21 19:07:30 +00:00
Daniel Vaz Gaspar
1a20552c2b fix(reports): increase crontab size and alert fixes (#12056)
* fix(reports): increase crontab size

* update to current alembic revision

* Merge branch 'master' into feat/security-converge-datasets

# Conflicts:
#	tests/security_tests.py

* Merge branch 'master' into feat/security-converge-datasets

# Conflicts:
#	tests/security_tests.py

* Merge branch 'master' into feat/security-converge-datasets

# Conflicts:
#	tests/security_tests.py

* lint

* update alembic revision

* fix related fields

* fix test
2020-12-17 18:03:05 +00:00
Daniel Vaz Gaspar
0f979dea06 feat(reports): security perm simplification (#11853)
* feat: security converge report

* black

* fix: comment

* add frontend changes and rebase

* fix multiple heads
2020-12-15 08:48:00 +00:00
Daniel Vaz Gaspar
20b1aa7d6c fix(reports): apply owners security validation (#12035)
* fix(reports): apply owners security validation

* fix pylint
2020-12-15 08:43:31 +00:00
ʈᵃᵢ
6fcda5dac1 feat: add cron picker to AlertReportModal (#12032)
* humanize cron display in list view
2020-12-14 22:29:31 -08:00
Daniel Vaz Gaspar
1e3aaab590 fix(reports): validator_config, report state machine, working_timeout (#11890)
* fix(reports): expect more exceptions and fix validator config

* use a state pattern on command reports

* use a state pattern on command reports continue

* fix multiple heads

* fix unittests

* add more tests

* fix api tests after enum rename

* fix alembic multiple heads

* fix tests

* fix fixture cleanup

* fix mysql tests

* fix initial and not found state

* fix schema, and private public methods, addressing comments

* add new col to the API
2020-12-09 18:19:07 +00:00
Lily Kuang
a76eadd838 feat: report/alert list CRUD view (#11802) 2020-12-01 17:57:15 -08:00
Daniel Vaz Gaspar
f27ebc4be5 feat: new reports scheduler (#11711)
* feat(reports): scheduler and delivery system

* working version

* improvements and fix grace_period

* add tests and fix bugs

* fix report API test

* test MySQL test fail

* delete-orphans

* fix MySQL tests

* address comments

* lint
2020-11-25 08:50:30 +00:00
Daniel Vaz Gaspar
12cb27f5cb feat: new reports models api (#11606)
* feat: new report schedule models

* lint and unique constraint

* support sqlite

* fix sqlite

* add audit mixin and minor fixes

* feat(api): alerts and reports REST API

* feat: new report schedule models

* lint and unique constraint

* support sqlite

* fix sqlite

* add audit mixin and minor fixes

* feat(api): alerts and reports REST API

* draft working version

* add tests

* test

* black

* remove copy pasta

* solve dashboard object representation being used on cache

* tests and custom filter

* fix PUT has PATCH on active field

* create feature flag

* fix lint

* address comments
2020-11-12 13:21:01 -08:00