Kjell Winblad
74c33cd4e5
feat(rule_engine): add jq function to the rule engine
...
This commit adds a function to the rule engine that alows users
to transform text or JSON objects using [jq filter programs][1].
[jq][1] is a command line tool that can be used to transform
and filter JSON text using jq's built-in language. The rule engine
function that is added with this commit uses the
[Erlang jq NIF library][2] that wraps the jq C library in an
Erlang NIF function.
[1]: https://stedolan.github.io/jq/
[2]: https://github.com/emqx/jq
2022-05-04 17:09:16 +02:00
Zaiming (Stone) Shi
02c3f87b31
style: reformat all remaining apps
2022-04-27 15:51:18 +02:00
EMQ-YangM
e4b62f3a5f
feat: add rule-engine functions
2022-04-15 18:02:24 +08:00
Kian-Meng Ang
fc92e4c8bf
docs: fix typos
2022-01-27 12:29:38 +01:00
Zaiming (Stone) Shi
63167cea70
chore: update copyright
2022-01-05 20:55:00 +01: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
Zaiming Shi
6354e75626
chore: update copyrights
2021-04-23 20:43:00 +02:00
Shawn
19a9bab3a4
feat(rule_engine): add rule sql functions for datetime rfc3339
2021-04-22 10:32:44 +08:00
Shawn
196fef0255
chore(rule): migrate rule-engine from enterprise version
2021-02-22 13:53:51 +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
c3159420bb
feat(funcs): add bitsize/1 and subbits/2,3,6 functions
2020-12-22 11:18:16 +08:00
Zaiming Shi
3a91ff8a7b
chore(proj): resync apps
2020-12-11 08:19:26 +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
Zaiming Shi
2fda0a1565
chore(apps): Sync again all apps
2020-12-07 21:30:21 +01:00
Zaiming Shi
686c006d6e
refactor(proj): Add apps
2020-12-04 22:11:53 +01:00