Commit Graph

182 Commits

Author SHA1 Message Date
Shawn 9f7f5070b2 fix(channel): update the calls to emqx_session APIs 2022-01-13 13:33:27 +08:00
Shawn 217acc0154 feat(rule): add new event 'delivery_dropped' 2022-01-12 20:11:08 +08:00
EMQ-YangM da8cd5d103 fix(rule_engine_metrics): fxi string:to_integer pattern match error 2022-01-11 22:09:38 -08:00
EMQ-YangM de58c8e7bc refactor(rule_engine_metrics): refactor code_change 2022-01-11 22:09:38 -08:00
EMQ-YangM 7605fa5e64 fix(rule_engine_metric): remove unused metrics 'overall_metrics' 2022-01-11 22:09:38 -08:00
Shawn 82c6eaa3aa
Merge branch 'main-v4.3' into main4.3 2022-01-10 12:31:12 +08:00
EMQ-YangM 3956eaddd7 fix(rule_engine_metrics): add more rulge_engine version to emqx_rule_engine.appup.src 2022-01-09 19:27:49 -08:00
Shawn fbeba39f0d fix(rule): compare to null variables should return false 2022-01-06 20:36:01 +08:00
Shawn b7bcb37eab fix(rule): restore metrics for actions 2022-01-06 20:18:05 +08:00
EMQ-YangM be81c65eda feat(rule_engine_metics): add hot upgrade feat 2022-01-06 00:47:17 -08:00
EMQ-YangM 2074dd63f9 test(rule_engine_metrics): add more test 2022-01-05 21:11:52 -08:00
EMQ-YangM 1211c658fc fix(emqx_rule_engine): change vsn to 4.3.7 2022-01-05 19:18:16 -08:00
EMQ-YangM fae49ad228 fix(rule_engine_metrics): remove more space 2022-01-05 19:03:28 -08:00
EMQ-YangM d7a3ade200 fix(rule_engine_matrics): remove more space 2022-01-05 19:00:59 -08:00
EMQ-YangM 2608798826 fix(rule_engine_metrics): fix RuleID reference 2022-01-05 18:56:34 -08:00
EMQ-YangM c214af2ac0 fix(rule_engine_metics): centralized statistics exception 2022-01-05 18:51:28 -08:00
EMQ-YangM e5993c9f72 refactor(rule_engine_metrics): remove function 'message()' 2022-01-05 02:08:40 -08:00
EMQ-YangM c2870b3322 test(rule_engint_metrics): add test for 'FOREACH' 2022-01-05 01:57:18 -08:00
EMQ-YangM 88913a9144 test(rule_engine_metrics): add test 't_metrics' 2022-01-05 01:20:53 -08:00
EMQ-YangM a5a8aa3b6d feat(rule_metrics): add more metrics to the rule engine 2022-01-05 00:20:06 -08:00
Zaiming Shi f1f2e51c99 fix: update appup 2021-11-08 16:17:54 +01:00
Turtle 9f843d618d fix(rule): fix rpc timeout extend the RPC timeout interval 2021-09-15 08:19:22 +08:00
Turtle 3ad0678892 fix(rule): fix edit rule fail in the cluster 2021-09-14 14:54:24 +08:00
Turtle ac0639f6b1 fix(actions): fix republish actions payload is null 2021-08-04 14:39:19 +08:00
Turtle 8fb9170df8 fix(rule-engine): fix rule status is not available after the emqx restart 2021-08-03 17:31:43 +08:00
Shawn 6724e59e7a fix(appup): relup for emqx_rule_registry failed 2021-06-21 12:18:39 +08:00
Shawn 5962c9c83c
feat(rules): remove stats update from rule_engine_registry (#5029) 2021-06-19 17:02:43 +08:00
Shawn c0367fb8dd
Delete resource failed when searching dependent rules (#4996) 2021-06-17 16:45:44 +08:00
k32 1e562d4bc6 chore(rule_engine): Don't import alias/1 BIF
Fixes: #4847
2021-05-22 01:40:07 +02:00
Shawn 4cd056cab5
fix(rule_engine): update status to false when refresh resource failed (#4821)
* fix(rule_engine): update status to false when refresh resource failed

* fix(dialyzer): ignore import_modules/1 created fun has no local return

* fix(appup): update appup for rule engine
2021-05-17 17:59:01 +08:00
Zaiming Shi ded494f544 fix(emqx_rule_engine): add appup 2021-05-11 14:25:46 +02:00
Turtle 80ef076cee feat(rule_engine): rule sql add null function 2021-05-08 17:15:07 +08:00
Zaiming Shi fbe15859f5 fix(emqx_rule_utils): http connectivity check ipv6 support 2021-04-28 10:43:36 +02:00
Shawn bea28d887c fix(rule_engine): refresh rules and then re-enable it 2021-04-27 15:45:25 +08:00
Shawn 6557b132a2 fix(rule_engine): only refresh enabled rules at bootup 2021-04-27 11:17:12 +08:00
Shawn 7198c018e2 fix(rule_engine): change the rule state when force enabled/disabled 2021-04-27 11:17:12 +08:00
Shawn 18688da0c1 fix(rule_engine): only auto re-enable the rule when it was force disabled 2021-04-27 11:17:12 +08:00
Shawn da81ab7988 fix(rule_engine): remove sleep before refresh rules 2021-04-27 11:17:12 +08:00
Shawn e3501acc02 fix(rule_engine): delete resource crashes when dependent rule exists 2021-04-27 11:17:12 +08:00
Shawn 3646e76a7a fix(rule_engine): re-enable rules after resource started 2021-04-27 11:17:12 +08:00
Shawn 9fd43ef882 fix(rule_engine): reformat some code for dependent rules discovery 2021-04-27 11:17:12 +08:00
DDDHuang 29592fe1b4
Fix rule engine build fail (#4673)
* fix: add rule engine resources time
2021-04-26 15:32:54 +08:00
Zaiming Shi d61b100cc9 chore: more copyright updates 2021-04-23 20:43:00 +02:00
Zaiming Shi 6354e75626 chore: update copyrights 2021-04-23 20:43:00 +02:00
DDDHuang 4178e1a023 fix: disable rule if build fail 2021-04-22 14:46:28 +08:00
Shawn 19a9bab3a4 feat(rule_engine): add rule sql functions for datetime rfc3339 2021-04-22 10:32:44 +08:00
Shawn b5edba7729 fix(rule_engine): load hooks to all the nodes in cluster 2021-04-12 09:41:28 +08:00
Zaiming Shi d8e410e770 fix(emqx_rule_engine): missing calls
some calls are for enterprise only
2021-04-11 22:55:39 +02:00
JianBo He 496e5381fb chore(rule-engine): compatible with the lower case hash string 2021-03-25 09:10:05 +08:00
JianBo He 277cab86d3 refactor: improve the speed of hexstr and binary conversions 2021-03-23 18:25:19 +08:00
wwhai 0d75ea874b fix(rule-engine): add 'undefined' type for create time 2021-03-19 08:57:19 +08:00
wwhai f7b34cb098 feat(rule-engine): list rule support order by timestrap 2021-03-12 17:35:13 +08:00
Zaiming Shi c752f3bec5
Refactor http lib add uri parse (#4292)
* feat(http_lib): Add uri parse to emqx_http_lib

* fix(webhook): call emqx_http_lib to parse uri

* fix(auth-http): Call emqx_http_lib to parse uri

* fix(rule-engine): call emqx_http_lib to parse uri
2021-03-06 13:35:02 +08:00
z8674558 1504164933 chore(src): fix dialyzer warnings (match values) 2021-03-03 20:06:31 +09:00
Zaiming Shi 8316f8cc34 fix(rule-engin-api): transform input config for update requests 2021-03-03 09:19:07 +08:00
Zaiming Shi dd06d70bce refactor(build): Move parse_transform module to root app
So we do not have to workaround the compile order issue
2021-03-02 08:40:19 +08:00
Shawn 6081d45d81
fix(rule): reformat some code
* fix(rule): reformat some code for rule-engine

* fix(lwm2m): change publish_update_when to publish_update_msg_when

Change the option name publish_update_when -> publish_update_msg_when.

Also change the object_list_changed to contains_object_list, as the
the later describes the default behavior correctly.

* fix(lwm2m): publish_update_msg_when -> update_msg_publish_condition
2021-03-01 20:15:12 +08:00
Shawn 6d83bc3e9b
fix(rule): destroy the actions when disabling the rule (#4232)
Merge the following PR from enterprise version:
https://github.com/emqx/emqx-rule-engine/pull/231
2021-02-24 13:24:23 +08:00
Shawn e201484163 fix(rule): incorrect merge for map_get/2,3 and map_put/3 2021-02-22 18:16:24 +08:00
Shawn 196fef0255 chore(rule): migrate rule-engine from enterprise version 2021-02-22 13:53:51 +08:00
Shawn 7778cd8623
Add hooks only when creating the rules (#4160)
* refactor(rules): add hook only when creating rules

* fix(rule): update hooks after application restarted

* fix(rule): remove the extra guard
2021-02-22 11:16:47 +08:00
Shawn 1e047e84c2
feat(resource): keep restart disconnected resources after emqx bootup (#4125)
* feat(resource): keep restart disconnected resources after emqx bootup

* feat(resource): improve the restart monitor

* fix(test): improve emqx_rule_monitor_SUITE

* fix(resource): refresh resource should be only applied on local node

* fix(test): improve the test case for restart_resource

* fix(resource): rename some functions
2021-02-20 17:10:50 +08:00
Shawn c2e1bc039b
feat(rule): add more sql functions #4143 (#4144) 2021-02-20 17:10:10 +08:00
Zaiming Shi 4a877a3a69 chore(apps): relocate some apps
emqx_telemetry is for opensource onlyh
emqx_rule_engiune is common
2021-02-19 11:24:41 +01:00
Zaiming Shi 8f477e8411 refactor(proj): Move opensource apps to lib-opensource
One step closer for better code abstraction for opensorce vs enterprise
So far this relocation is to make opensource to enterprise merges
conflict free.
2021-02-11 16:45:05 +01:00
Shawn 70a490114d fix(rulesql): proc cassandra cql with apostrophes failed 2021-02-05 15:30:16 +08:00
Shawn a2fa84255f
fix(rulesql): proc_sql_param_str incorrect with apostrophes #4135 (#4137) 2021-02-05 10:41:54 +08:00
wwhai 6eff70a646
fix(rule-engine): reply 500 when update resource failed (#4120) 2021-02-01 09:47:08 +08:00
wwhai a3206f5e0b fix(rule-engine): reformat code style 2021-01-29 19:32:05 +08:00
wwhai 3973c93534 fix(rule-engine): remove unused code 2021-01-29 17:16:00 +08:00
wwhai 7072355bc1 fix(rule-engine): fix test failure 2021-01-29 15:24:07 +08:00
wwhai 73655369af fix(rule-engine): reformat some code 2021-01-29 11:52:32 +08:00
wwhai f0993c6b0f
chore(style): improve the codes style 2021-01-28 20:01:59 +08:00
wwhai b5c435e211 fix(rule-engine): add format space 2021-01-27 19:01:11 +01:00
wwhai e7153c4266 fix(rule-engine): add cluster init callback 2021-01-27 15:06:12 +08:00
wwhai 81da182e1b feat(rule-engine): change init resource to test resource 2021-01-25 19:44:32 +08:00
wwhai f3420e8810 fix(rule-engine): fix update resource maybe remove resource 2021-01-25 10:56:58 +08:00
bignullnull 67bfb4f10a
fix(rule_engine): resource update problem and add cli (#3991) 2021-01-15 09:12:24 +08:00
JianBo He f2190dd5b5 chore(mnesia): explicitly specify the copy type for table 2021-01-14 15:46:16 +08:00
JianBo He 2a029b71c9 perf(mnesia): unify the copy types of all nodes 2021-01-14 15:46:16 +08:00
ayodele.akingbule 990be9c198 fix(emqx_rule_engine_api): fix dialyzer warnings 2021-01-04 14:14:55 +01:00
Shawn e518828d8f
fix(rule_engine): mechanism of restarting resources (#3980) 2021-01-04 11:52:57 +08:00
Ayodele 26021b37b3
Umbrella fix build (#3969)
* fix(dialyzer): dialyzer warning.
2021-01-04 09:10:22 +08:00
Shawn d86b5ef210 fix(rule_engine): compile warnings on the macro RAISE 2020-12-31 17:03:39 +08:00
Shawn a747cf16bd
fix(resource_cli): update the CLIs for resources (#3978) 2020-12-31 13:41:33 +08:00
bignullnull 37974f7376
fix(rule_engine): add resource reconnect check (#3974)
* fix(rule_engine): add resource reconnect check
* fix(rule_engine): add reason for RAISE macro
2020-12-31 12:51:01 +08:00
wwhai 903ce29ce0 fix(rule_engine): fix resource update maybe failure 2020-12-31 11:43:03 +08:00
bignullnull efb32e9903
test(rule_engine): add update resource unit test case (#3964)
* test(rule_engine): add update resource unit test case

* feat(rule_engine): add update resource support

Co-authored-by: wwhai <cnwwhai@gmail.com>
2020-12-28 14:59:28 +08:00
JianBo He 9e22f492c7 refactor(rule-engine): add proc_sql_param_str/2 to handle sql params 2020-12-28 10:51:13 +08:00
Shawn 6b5878cdd0 fix(test): solve verification issue when verify the resource numbers 2020-12-23 16:39:40 +08:00
zhanghongtong 3ef08f9ce3 test(meck): add meck unload after meck load 2020-12-22 13:39:49 +08:00
Shawn 443ff737ed fix(rule_engine): use rpc in emqx_rule_engine_api 2020-12-22 11:18:16 +08:00
Shawn e15c0c325e fix(rule_engine): nested_get value from binary was supported in 4.1 2020-12-22 11:18:16 +08:00
Shawn 86d20b060c fix(metrics): counters not created before incr 'rule.matched' 2020-12-22 11:18:16 +08:00
Shawn c3159420bb feat(funcs): add bitsize/1 and subbits/2,3,6 functions 2020-12-22 11:18:16 +08:00
Shawn e72cbd22c4 fix(rule_validator): fill default values when validating the params 2020-12-18 11:08:17 +08:00
Shawn 0a44270932
* fix(dialyzer): remove the dialyzer errors 2020-12-17 10:04:49 +08:00
ayodele.akingbule ec79523ea5 fix(emqx_rule_actions): fix Dialyzer warnings 2020-12-15 11:39:52 +01:00
ayodele.akingbule 8ee98e3f20 fix(emqx_rule_utils): fix Dialyzer warnings 2020-12-15 11:31:55 +01:00
Zaiming Shi d60212787b chore(build): remove emqx from app's applications list 2020-12-12 23:02:26 +01:00