Commit Graph

252 Commits

Author SHA1 Message Date
JianBo He
edb1460b56 chore(rule-engine): more safe generate even_msg content 2022-03-21 18:17:24 +08:00
Shawn
50ee6ad2e2 fix(rule): update rules without reset the metrics 2022-03-21 15:06:34 +08:00
Shawn
93c5fa60b4 fix(rules): store rule configs to cluster config files 2022-03-16 00:39:01 +08:00
Shawn
869dc1a081 fix(rules): ensure create_at unchanged after rule is updated 2022-03-16 00:38:42 +08:00
Shawn
0b4b3a7cf0 fix(dialyzer): some bad type specs 2022-03-11 18:33:08 +08:00
Shawn
590fa1b375 fix(rule): check request body for /rule_test crashes 2022-03-11 18:13:12 +08:00
Shawn
f924b9389d fix(rule): add swagger schema for events from bridge sources 2022-03-11 14:13:14 +08:00
Shawn
5ca0d4f856 fix(rule): rename the eventname of bridge sources to $bridges/mqtt:* 2022-03-10 23:03:35 +08:00
Shawn
3ca3470844 fix(rule_events): add descs for test columns 2022-03-10 22:49:29 +08:00
Shawn
c673e55a47 fix(rule): add SQL test examples for user properties
Porting from v4.4
2022-03-10 16:01:30 +08:00
Shawn
247b14c95f fix(mqtt_bridge): refine the message format from a mqtt bridge source 2022-03-10 15:57:33 +08:00
Zhongwen Deng
db584f79d6 feat: upgrade hocon to 0.25.0 to replace nullable with required. 2022-02-24 22:39:03 +08:00
Zhongwen Deng
574bbafc9b fix(schema): Ensure enum is atom or int. 2022-02-24 15:36:04 +08:00
k32
5638bcb92b docs: Fix typos 2022-02-17 23:22:31 +01:00
Zaiming (Stone) Shi
0528262705 chore(app.src): EMQ X -> EMQX in .app.src files 2022-02-16 17:51:45 +01:00
zhongwencool
f5415589e9 chore(schema): use emqx_schema:qos() instead of union integer. 2022-02-11 10:09:59 +08:00
Shawn
e6997dc1ce
Merge pull request #6942 from terry-xiaoyu/hook_delivery_drop
Hook delivery drop
2022-02-09 18:28:56 +08:00
Shawn
b2f027bcf7 feat(rule): add 'delivery.dropped' hook for rules 2022-02-08 10:32:25 +08:00
Shawn
261e9929b6 fix(rule): deny POST empty rule ids 2022-02-08 09:57:44 +08:00
Zaiming (Stone) Shi
f7703c906e refactor: move plain_check impl to emqx_hocon 2022-01-29 10:16:55 +01:00
k32
052bd9081d docs(schema): Fix typos in the schema files 2022-01-27 22:39:19 +01:00
Zaiming (Stone) Shi
d6f7ffec3c
Merge pull request #6881 from zmstone/refactor-upgrade-hocon-0.23.0
refactor: upgrade to hocon 0.23.0
2022-01-27 15:48:23 +01:00
Kian-Meng Ang
fc92e4c8bf docs: fix typos 2022-01-27 12:29:38 +01:00
Zaiming (Stone) Shi
252d7e85d9 refactor: call new hocon apis 2022-01-27 00:23:08 +01:00
k32
6e3b05d665 refactor(emqx_plugin): Decorate RPCs 2022-01-18 15:25:34 +01:00
Shawn
8cee9a9e47 fix(rule): compare to null variables should return false 2022-01-17 14:17:49 +08:00
Shawn
2a2a00e0ad fix(rule): remove rules from all nodes in the cluster 2022-01-11 14:44:08 +08:00
Shawn
72d55c8c0d fix(rules): improve the names of the metrics 2022-01-07 09:35:00 +08:00
Shawn
67a60e1153 refactor(rule): add more metrics for rule and bridges 2022-01-07 09:34:54 +08:00
Zaiming (Stone) Shi
63167cea70 chore: update copyright 2022-01-05 20:55:00 +01:00
Shawn
657ecef67b fix(resource): don't crash on resource stopped 2021-12-31 20:57:34 +08:00
Shawn
e299d8d138 fix(rule): rules not triggered after the ingress mqtt bridge received some msg 2021-12-31 15:47:03 +08:00
Shawn
94a5965560 fix(rule): dead lock when update configs for rules 2021-12-31 00:03:03 +08:00
Shawn
a42ab3d9da fix(rule): use emqx_conf:update/3 to make changes to all nodes 2021-12-31 00:03:03 +08:00
zhongwencool
4b6bba11eb feat(trace): struct log for trace 2021-12-29 00:26:54 +08:00
zhongwencool
668180388c feat(trace): replace logger_formatter by emqx_trace_formatter 2021-12-27 14:40:40 +08:00
Shawn
cd4227b851 fix(rules): don't show the module name 'emqx_rule_outputs' in outputs 2021-12-22 10:26:22 +08:00
Shawn
9b4b3d2e8c fix(rules): make the 'name' field of POST /rules mandatory 2021-12-22 10:26:22 +08:00
Shawn
5f050b149b fix(rules): the schema for unsubscribe is messing from rule_test API 2021-12-22 10:26:22 +08:00
Shawn
a9c9d9d805 fix(rule): rename enabled to enable 2021-12-18 20:28:14 +08:00
Shawn
a44e18e869 fix(bridge): filter out some extra fields from the request body 2021-12-18 19:19:58 +08:00
Shawn
494c08f849 refactor(rule): add name field to request body of POST /rules 2021-12-18 06:34:44 +08:00
Zaiming (Stone) Shi
fcb7c2c70f docs: change <module> to {module} so markdown render will not crash
<module> is treated as an HTML tag
2021-12-12 19:34:29 +01:00
Shawn
416b9f8d7c refactor(rule): generate swagger from hocon schema for /rules 2021-12-07 09:48:47 +08:00
Shawn
24bded99d5 refactor(metrics): rename speed to rate in emqx_plugin_libs_metrics 2021-12-07 09:47:53 +08:00
Shawn
e07fce791f feat(connector): add examples to the swagger doc 2021-12-07 09:47:53 +08:00
Zaiming (Stone) Shi
d9a980c7e1 docs: fix config doc, avoid using <text> in doc body 2021-12-06 08:00:42 +01:00
Shawn
4c149f92c1 feat(bridge): support metrics for bridges 2021-11-23 09:36:10 +08:00
Shawn
a0e81226d7 fix(elvis): improve some code format 2021-11-22 19:10:00 +08:00
Shawn
9c93ea0338 feat(connector): add API for /connectors_test 2021-11-22 17:35:33 +08:00
Shawn
7d64013edd refactor(connector): add connector configs 2021-11-22 17:35:32 +08:00
Zaiming Shi
6edd862dd5 refactor: no more EMQX_ENTERPRISE compile flag
The compile flag was introduced in EQM X 4.3 series
where CE and EE code was diverged large enough which made
non-practicle to determin edition at runtime.

such approach made testing quite challenging as we'll have to
build with different compile flags inorder to run per-edition
test cases

In this commit, we try to retrieve edition info from EMQX's
description text, (put to PT for fast access) at runtime
so we can test ALL editions from a super-set edition (EE).
2021-11-20 20:41:06 +01:00
JimMoen
b3f9220d02 style: make elvis happy 2021-11-15 16:30:44 +08:00
JimMoen
106aa559e0 fix(api): DELETE success wrongly returned code 200 2021-11-15 16:30:44 +08:00
Zaiming Shi
d1abb30818 ci: fix elvis check 2021-11-04 15:27:10 +01:00
Zaiming Shi
56e2a9741f style: ensure newline at EOF for all files 2021-11-04 14:40:14 +01:00
zhongwencool
d784e63b9f
emqx_conf (#5939)
* feat(emqx_conf): move conf manager for emqx_machine to emqx_conf

* chore(emqx_conf): change emqx:get_config/2 to emqx_conf:get/2

* fix: common test failed

* fix: badmatch by typo wrong key

* fix(emqx_conf): get the wrong core nodes

* fix(emqx_conf): get core node's tnx_id not latest tnx_id

* fix: add ro_transation when copy conf file

* fix: delete debug info

* fix: change ekka_rlog to mria_rlog

* fix: remove cluster_rpc from emqx_machine.

* fix: don't call ekka:start/0 explicitly

* fix: ekka should be start in emqx_machine
2021-10-21 18:08:51 +08:00
k32
ff48322e0c chore(mria): ekka_mnesia:running_nodes -> mria:running_nodes 2021-10-18 22:04:05 +02:00
Shawn
2e52ab9712 fix(rules): improve some code for emqx_rule_engine 2021-10-14 15:09:37 +08:00
Shawn
dce57a3f92 fix(rules): add description to the config 'ignore_sys_message'
Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2021-10-14 15:09:37 +08:00
Shawn
0e7a3f89a9 feat(rules): support output functions in <<"Mod:Func">> format 2021-10-14 15:09:37 +08:00
Shawn
9c7eef5295 feat(rules): update rule_engine configs from APIs 2021-10-14 15:09:37 +08:00
Shawn
c3effca553 fix(rules): load rules from config file failed 2021-10-14 15:09:37 +08:00
Shawn
467805855d fix(rules): load rules from config file failed 2021-10-14 15:09:37 +08:00
Shawn
1ffae5d1b0 refactor(rule_engine): merge code for emqx_rule_registry and emqx_rule_engine 2021-10-14 15:09:37 +08:00
Shawn
b063b6f253 feat(rules): support configure rules in config file 2021-10-14 15:09:37 +08:00
lafirest
3524942766 fix: change all ~s in io format to ~ts
we should use unicode to replace latin1
2021-10-12 15:09:24 +08:00
zhongwencool
44a6f04a45 chore: reorganize shards position 2021-09-30 16:04:30 +08:00
Shawn
a9185f964e
fix(rules): improve specs and logs (#5821)
Co-authored-by: Zaiming Shi <zmstone@gmail.com>
2021-09-27 21:10:48 +02:00
Shawn
e2721c144c feat(bridge): support http bridge 2021-09-27 22:01:18 +08:00
Shawn
69f3cce75d feat(rules): hook on bridges events and query bridges from rules 2021-09-26 23:00:08 +08:00
Shawn
e630e23846 fix(rules): dialyer failed to analysis the emqx_rule_sqlparser:parse/1 2021-09-26 23:00:08 +08:00
Shawn
0d26e50e87 fix(rules): parse outputs failed 2021-09-26 23:00:08 +08:00
Shawn
420ccf0f51 refactor(rules): change republish as an output 2021-09-26 23:00:08 +08:00
Shawn
f33e28af6d fix(rules): update test cases for emqx_rule_engine_SUITE 2021-09-26 23:00:08 +08:00
Shawn
7bc69b129a fix(rules): update test cases for rule metrics 2021-09-26 23:00:08 +08:00
Shawn
d4f20c82e0 feat(rules): support function outputs 2021-09-26 23:00:08 +08:00
Shawn
bd081913b5 refactor(rules): remove emqx_rule_actions 2021-09-26 23:00:08 +08:00
Shawn
af295a9b71 refactor(rules): remove resources and actions 2021-09-26 23:00:08 +08:00
Shawn
b055464f6b refactor(rule): remove CLIs for rules
We will have new CLIs based on HTTP API in the future.
2021-09-26 23:00:08 +08:00
JimMoen
9c95557bfc fix(emqx_types): type spec refs does not exist file. 2021-09-17 19:28:22 +08:00
zhouzb
43ce727632 chore(gen_id): using emqx_misc:gen_id/0, /1 2021-09-16 16:51:46 +08:00
JimMoen
deac54c847 chore(for editor): Add comments for Emacs major mode. 2021-09-16 15:43:30 +08:00
zhongwencool
86eb6605f1
Merge pull request #5623 from zhongwencool/cluster-call-api
feat(cluster-call): support confirm success after all mfa apply ok
2021-09-13 16:03:47 +08:00
Shawn
d46241fe2f feat(bridges): avoid clientid competition between bridges on different nodes 2021-09-10 14:21:17 +08:00
zhongwencool
0303e593c5 fix: undef function 2021-09-10 13:28:08 +08:00
zhongwencool
5a4428c53d Merge branch 'cluster-call-api' of https://github.com/zhongwencool/emqx into zhongwencool-cluster-call-api 2021-09-10 13:11:13 +08:00
Shawn
135c005467 fix(bridges): do not start any bridge by default 2021-09-10 11:43:03 +08:00
Shawn
eb8822ce41 feat(bridges): start one mqtt bridge worker for each in/out channel 2021-09-10 11:43:03 +08:00
Shawn
1dae970cd3 refactor(rule): move emqx_rule_utils.erl -> emqx_plugin_libs_rule.erl 2021-09-10 11:43:03 +08:00
Zaiming Shi
ec13463f4a refactor(schema): prepare for hocon schema doc generation 2021-09-03 11:02:31 +02:00
zhongwencool
ee2fccac02 fix: don't run mutil cluster-call on one transaction 2021-09-02 14:03:46 +08:00
Zaiming Shi
5165fd6b30 refactor(schema): implement new hocon_schema callbacks 2021-08-30 09:56:03 +08:00
zhongwencool
73238ed81f feat: emqx_resource support cluster_call 2021-08-26 17:23:39 +08:00
DDDHuang
8125ec7d08
feat: topic metrics api (#5520) 2021-08-24 10:52:18 +08:00
k32
9c74fa42a5 chore(rlog): Use the new method of creating shards 2021-08-21 17:47:53 +02:00
Shawn
e8e95d39ef
refactor(config): move emqx_config:get/get_raw to emqx:get_config/get_raw_config (#5517) 2021-08-18 14:52:57 +08:00
turtleDeng
4dc5772103
chore(rule-metrics): remove hot upgrade code change 2021-08-17 09:15:27 +08:00
Zaiming Shi
b10fb4e95d refactor: unify all io:format calls to use the same macro 2021-08-01 09:36:59 +02:00
Zaiming Shi
5d59ac1f02 refactor(logging): delete log headers from all modules 2021-08-01 09:36:59 +02:00