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
c2cd2fd231
Merge remote-tracking branch 'origin/dev/v4.3.0' into dev/v5.0
2021-02-19 21:13:33 +01: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
Shawn
10dbb5bc96
Fix testcases warns ( #3906 )
2020-12-11 18:54:48 +08:00
Zaiming Shi
7bdd093ef5
Merge remote-tracking branch 'origin/dev/v4.3.0' into umbrella-fix-build
2020-12-11 08:55:57 +01:00
Zaiming Shi
3a91ff8a7b
chore(proj): resync apps
2020-12-11 08:19:26 +01:00
ayodele.akingbule
b2efcef4b4
fix(emqx_rule_runtime): Dialyzer warnings
2020-12-10 23:34:36 +01:00
Zaiming Shi
c8b866dc63
fix(emqx_rule_engine): Dialyzer warnings
2020-12-10 11:22:38 +01:00
Zaiming Shi
5bb1da5896
fix(emqx_rule_engine_sup): discard ets:new return value
2020-12-10 11:22:38 +01:00
Zaiming Shi
8bb8dc5363
fix(emqx_rule_engine): Dialyzer warnings
2020-12-10 11:22:38 +01:00
Zaiming Shi
692f59afaf
fix(emqx_rule_events): Dialyzer warnings
2020-12-10 11:22:38 +01:00
Zaiming Shi
3dc11bc9e1
fix(emqx_rule_funcs): Fix strng:pad calls
2020-12-10 11:22:38 +01:00
Zaiming Shi
526d6f74bb
fix(emqx_rule_metrics): Fix type specs
2020-12-10 11:22:38 +01:00
Zaiming Shi
a504539097
fix(emqx_rule_registry): Dialyzer warning
2020-12-10 11:22:38 +01:00
Zaiming Shi
e58abd916c
fix(rule_engine.hrl): Type spec, args map is keyed by binary
2020-12-10 11:22:38 +01:00
Zaiming Shi
bdfcc2da0e
fix(emqx_rule_engine_api): Dialyzer warnings for no_match
2020-12-10 11:22:38 +01:00
Zaiming Shi
ff55b0ff45
fix(emqx_rule_runtime): Dialyzer warnings
2020-12-10 11:22:38 +01:00
Zaiming Shi
42ed274ec3
fix(emqx_rule_runtime): Dialyzer warnings
2020-12-10 11:22:38 +01:00
Zaiming Shi
764d5977c1
fix(emqx_rule_engine): Dialyzer warning related to generated code
2020-12-10 11:22:38 +01:00
Zaiming Shi
6a1aae52eb
fix(emqx_rule_validator): Dialyzer warning
2020-12-10 11:22:38 +01:00
Shawn
15d048d8ec
feat(funcs): add bitsize/1 and subbits/2,3,6 functions
...
Given following Rule SQL:
```
select
subbits(payload, 1, 8) as firstByte,
case
when firstByte = 123 then 't/{'
when firstByte = 125 then 't/}'
else 't/' + str(firstByte)
end as tp
from "t/#"
```
Input Payload: `{x}`
Output: `{"tp": "t/{", "firstByte": 123}`
Input Payload: `}x`
Output: `{"tp": "t/}", "firstByte": 125}`
Input Payload: `a`
Output: `{"tp": "t/97", "firstByte": 97}`
2020-12-10 11:26:07 +08:00
Shawn
573a4b2df8
chore(rule_engine): sync the code from rule-engine/dev/v4.3.0
2020-12-09 17:58:26 +08:00
Zaiming Shi
80e1d6cc9d
chore(apps): delete LICENSE files for apps
2020-12-08 22:28:46 +01:00
Zaiming Shi
7fdbfba06a
Merge branch 'umbrella-for-430-auto-sync' into umbrella-for-430
2020-12-08 22:09:59 +01:00
Zaiming Shi
2fda0a1565
chore(apps): Sync again all apps
2020-12-07 21:30:21 +01:00
Zaiming Shi
036eda27f6
chore(rebar): Delete profiles from apps' rebar.config
...
otherwise rebar3 crashes
2020-12-05 13:36:56 +01:00
Zaiming Shi
db792ec577
chore(apps): Sync again with 4.3.0
2020-12-05 03:02:35 +01:00
Zaiming Shi
8a12018863
Add more cleanups
2020-12-05 02:45:01 +01:00
Zaiming Shi
0fb5fb31a5
refactor(proj) sync 4.3.0 plugins with tracked files
2020-12-05 02:43:04 +01:00
Zaiming Shi
686c006d6e
refactor(proj): Add apps
2020-12-04 22:11:53 +01:00
Zaiming Shi
73d02beace
refactor(apps): Merge emqx_libs back to emqx
...
And move emqx app back to root level
After realising the challenges of developing plugins in standalone
rebar projects. it is perhaps more smooth to keep using emqx as
a rebar dependency
2020-12-04 19:58:58 +01:00
Zaiming Shi
2cbd2bc800
chore(app.src): use semver 4.3.0 for apps version base
2020-12-03 19:59:41 +01:00
Zaiming Shi
5bb0cccb53
refactor(build): Clean up app version management
...
Starting from 5.0.0, all apps in apps dir should follow semver
strictly. Do not use the umbrella project's release tags.
The universal tags made sense when we have applications scattered
in different repos. Now since this is an umbrella project, it is
enough to have a single package level version number corelated with
git tag.
2020-12-01 23:22:33 +01:00
terry-xiaoyu
e586119752
fix(project): point the hrl files to emqx_lib
2020-10-31 12:34:52 +08:00
terry-xiaoyu
0cd1c57a54
Migrate plugins from tag 4.2.2
2020-10-31 12:10:19 +08:00