Thales Macedo Garitezi
4c24b08244
fix(rule_action): fix metrics for bridges returning `async_return`
...
Kafka Producer, when called asynchronously, will return
`{async_return, {ok, pid()}}`, which currently counts as an unknown failure.
2023-04-06 16:00:01 -03:00
Serge Tupchii
aca65ca2d4
fix(rule_engine): don't increment unknown counter on unrecoverable errors
...
Closes: EMQX-8786
2023-04-04 15:59:53 +03:00
Thales Macedo Garitezi
d126c7dc62
refactor(rule_engine): use more helper functions
...
Follow up to
https://github.com/emqx/emqx/pull/10251#discussion_r1150710899 and
https://github.com/emqx/emqx/pull/10251#discussion_r1150720420
2023-03-28 13:46:56 -03:00
Thales Macedo Garitezi
1824e7efcc
fix(rule_engine): count referenced bridges in `from` clauses as dependencies (rv5.0)
...
Fixes https://emqx.atlassian.net/browse/EMQX-9325
Currently, ingress bridges referenced in the `FROM` clause of rules
are not being accounted as dependencies.
When we try to delete an ingress bridge that's referenced in a rule
like `select * from "$bridges/mqtt:ingress"`, that bridge does not
trigger an UI warning about dependent actions.
2023-03-28 10:31:10 -03:00
ieQu1
e3595f2e79
chore(mria): Bump version to 0.4.0
2023-03-11 00:37:25 +01:00
JimMoen
842cb7fadc
fix: debug log for rulesql parse failed
...
See also: PR#10059.
The other error logs will be printed in `emqx_rule_runtime:apply_rule/3`
2023-03-09 11:28:27 +08:00
Ivan Dyachkov
c01f62a1c1
chore: bump apps versions
2023-03-03 13:58:32 +01:00
Stefan Strigler
6ebd3dc747
feat(emqx_rule_engine): decompose error tuples
...
sqltester for instance returns sth like {"...sytnax error...", OrigSql}
2023-03-03 09:59:24 +01:00
Stefan Strigler
44eca1fa72
fix(emqx_rule_engine): don't crash if we can't encode json
2023-03-03 09:36:13 +01:00
Stefan Strigler
64b5e9585e
feat(emqx_rule_engine): API format errors in a human readable way
2023-03-02 16:49:11 +01:00
Zaiming (Stone) Shi
9316690c29
fix(schema): binary string for default values
...
A lot of the string value fields had default value defined in
schema as list-string rather than binary-string.
This caused the generated schema dump (in JSON format)
to have raw_default field as an integer array.
2023-02-21 09:09:51 +01:00
ieQu1
d9554c36ac
chore: Bump umbrealla app versions
2023-02-17 09:50:50 +01:00
ieQu1
794bedef9f
fix(emqx_ctl): Start CLI before ekka
2023-02-17 09:50:50 +01:00
Zaiming (Stone) Shi
157c919ba1
ci: add i18n style check script
2023-02-09 11:41:52 +01:00
Andrew Mayorov
ce2dba15b4
feat: turn tables queried with search APIs into ordered sets
...
This is needed to ensure more or less consistent client experience
for the new planned cursor-based search APIs.
2023-01-16 15:39:10 +03:00
Zaiming (Stone) Shi
7073c62dd9
feat: add a 'this' for rule engine put env
...
now a dot is allowed in front of a var (path)
e.g. ${.clientid} is equivalent to ${clientid}
${.} however, means everything.
the parsed var is interally represented as $_THIS_
to make it easier to read/search.
2023-01-14 11:03:58 +01:00
Zhongwen Deng
f15b29b1ef
chore: upgrade app version
2023-01-13 18:22:29 +08:00
zhongwencool
0049b4a294
Merge branch 'master' into release-50
2023-01-13 16:39:35 +08:00
Thales Macedo Garitezi
48e1ba4832
feat(docs): add tags to schemas
...
This'll allow us to split the generated `schema.json` file into
subsections for better documentation navigation.
2023-01-11 09:10:03 -03:00
Zhongwen Deng
fdc0682c3f
fix: elvis warning
2023-01-11 17:30:45 +08:00
Thales Macedo Garitezi
eb7dca3691
chore(rule_engine): reset metrics when disabling a rule
...
https://emqx.atlassian.net/browse/EMQX-8502
When a bridge is disabled, its metrics are reset. With this change,
we make rule actions behave like that: disabling a rule will reset its
metrics.
2023-01-04 09:30:47 -03:00
Zaiming (Stone) Shi
dbc10c2eed
chore: update copyright year 2023
2023-01-02 09:22:27 +01:00
JimMoen
4906da9796
test(rule-funcs): test compression funcs
2022-12-19 15:43:50 +08:00
JimMoen
5151242583
feat(rule-engine): `zip`, `gzip`, `zip_compress` funcs in rule-sql
2022-12-19 15:43:50 +08:00
Zaiming (Stone) Shi
bd65e8aad6
Merge remote-tracking branch 'origin/release-50' into 1206-chore-merge-ee50-to-release-50
2022-12-06 16:42:50 +01:00
Zaiming (Stone) Shi
1c2fc4b6c3
Merge remote-tracking branch 'origin/release-50' into 1206-chore-merge-ee50-to-release-50
2022-12-06 16:35:56 +01:00
Stefan Strigler
0b324da7cb
refactor: move metrics out of /rules(/:id) to /rules/:id/metrics
2022-12-06 15:23:28 +01:00
Zaiming (Stone) Shi
cca3421308
refactor: use static function references
2022-12-06 09:40:03 +01:00
Zaiming (Stone) Shi
b398617614
chore: bump app versions
2022-11-28 21:12:43 +01:00
Zaiming (Stone) Shi
7ee53e5319
Merge tag 'v5.0.11' into dev/ee5.0
2022-11-28 21:02:21 +01:00
JianBo He
edb35c08a8
chore: refactor ms2qs function type
2022-11-24 20:14:33 +01:00
JianBo He
9786a6c267
refactor(mgmt): convert fuzzy filter func to named func
2022-11-24 20:14:33 +01:00
JianBo He
b9c5a5f822
fix(delayed): return correct node name
2022-11-24 20:14:33 +01:00
JianBo He
8a0c468b01
test: refine tests for lots of List HTTP API
2022-11-24 20:14:33 +01:00
JianBo He
1fe9c105aa
refactor(mgmt): smplify the node_query/cluster_query implementation
2022-11-24 20:14:33 +01:00
JianBo He
08121e7df6
fix(mgmt): optimize the speed of query tail pages
...
In the previous, when you query the tail pages, all the front of rows
will be queried out and formatted. It greatly hurts the speed of query.
Currently, we only format the final result rows. i.e, the query for the
last page of data will be 10x faster.
2022-11-24 20:14:33 +01:00
Zaiming (Stone) Shi
f3df2c80d8
feat: add user_properties arg for republish action
2022-11-22 20:09:59 +01:00
kraftwerk28
00c57de4c3
feat: do not drop MQTTv5 properties in rule/bridge
2022-11-22 20:09:59 +01:00
Zaiming (Stone) Shi
c940b901f5
chore: fix app versions
2022-11-16 16:26:43 +01:00
Zaiming (Stone) Shi
09455edae8
Merge tag 'v5.0.10' into dev/ee5.0
2022-11-16 16:20:30 +01:00
JimMoen
4f00206693
test: different resons for disconnect event
2022-11-08 23:22:58 +08:00
Zaiming (Stone) Shi
d704de4a84
fix(emqx_rule_events): drop tuple-value from message headers
...
the message headers are fed to a JSON ecnoder which
may crash if the header value is a tuple
2022-10-27 20:31:33 +02:00
Zaiming (Stone) Shi
a314950be9
docs: fix zh punctuations
2022-10-26 16:19:38 +02:00
Shawn
4135910b42
chore: merge master into dev/ee5.0
2022-09-26 09:52:33 +08:00
Kjell Winblad
9ea0147a8c
feat(rule engine jq function): config for changing implementation
...
This commit adds a rule engine configuration option for changing the
implementation module used for the rule engine function jq. The two
options are `jq_port` (uses Erlang port programs to interact with jq)
and `jq_nif` (uses an Erlang NIF library to interact with jq).
Thanks to @terry-xiaoyu (Xinyu Liu <506895667@qq.com>) for Chinese
translations
2022-09-22 09:02:30 +02:00
Shawn
60a90858f8
feat: check dependent actions before removing the bridges
2022-09-06 15:34:23 +08:00
Shawn
0ef0b68de4
refactor: change '{recoverable_error,Reason}' to '{error,{recoverable_error,Reason}}'
2022-08-31 18:25:00 +08:00
Shawn
14633eaac8
fix: please the elvis
2022-08-31 09:40:22 +08:00
Shawn
ca52b8eb29
fix: start connector-mqtt failed when username/password not provided
2022-08-31 09:18:10 +08:00
Shawn
73e19d84ee
feat: use the new metrics to bridge APIs
2022-08-30 23:47:58 +08:00