Commit Graph

375 Commits

Author SHA1 Message Date
zhongwencool 668180388c feat(trace): replace logger_formatter by emqx_trace_formatter 2021-12-27 14:40:40 +08:00
tigercl 41694b7b34
Merge pull request #6526 from emqx/release-5.0-beta.3
Sync 5.0-beta.3 fixes into master
2021-12-24 13:49:13 +08:00
zhongwencool 33a6568654 fix(banned): crash by bad peerhost; add banned http API tests 2021-12-24 10:56:41 +08:00
Spycsh 41e373dbc4
Merge pull request #6478 from Spycsh/slog
chore: refactor ?SLOG
2021-12-23 22:21:33 +08:00
Thales Macedo Garitezi 34d6dbca61
chore(mix): simplify build by using rebar3 for umbrella apps
By treating the apps in the umbrella as dependencies to be managed and
built by rebar3, we can simplify the maintenance of the release, at
the cost of increased build times: using Mix as before, it could track
changed files better than using rebar.  But the complexity and
possibility of discrepancies make it using rebar much more compelling.
2021-12-22 09:40:01 -03:00
zhongwencool 2e10a5700c
Merge pull request #6515 from zhongwencool/fix-bann-utf8
fix(banned): create banned with utf8 failed by 500 response
2021-12-22 16:08:34 +08:00
zhongwencool b11a15fa00 fix(banned): create banned with utf8 failed by 500 2021-12-22 14:29:15 +08:00
Thales Macedo Garitezi 917575de5a
chore(mix): minimal elixir mix release build
This commit enables a minimal working build of EMQX release using
Mix.  However, to properly start the release, several configuration
steps are still missing.  A `mix_release.sh` script does a few hacks
to get the release built with Mix to start properly, by first assuming
that `make emqx` has been run prior to the release, ran once to
generate the `app.*.config` files, and then it copies that and some
other files to the expected places.

Also, `emqx_telemetry` hangs the start procedure because it thinks
it's in an official release and tries to make a request.  We disable
it temporarily via config just to get a working build for now.
2021-12-21 13:51:22 -03:00
zhongwencool f7a55d3f8d
Merge pull request #6238 from zhongwencool/fix-keepalive-ct-failed
fix: keepalive ct failed
2021-12-20 11:00:20 +08:00
zhongwencool 96ee51fe57
Merge pull request #6460 from zmstone/feat-add-plugin-mgmt
refactor(plugins): refactor plugins configuration interface
2021-12-20 09:24:38 +08:00
Spycsh ca2660d609 chore: refactor ?SLOG 2021-12-18 00:17:45 +01:00
zhongwencool 870af6df41 fix: Limit interval between 0~65535 2021-12-17 15:51:54 +08:00
zhongwencool fdff3c5a53 fix: keepalive ct failed 2021-12-17 15:51:51 +08:00
zhongwencool 89d904b7ef feat(trace): trace http api schema 2021-12-17 09:29:37 +08:00
Zaiming (Stone) Shi 48ad0adbaa refactor: delete plugin management APIs from emqx_mgmt
Will move the APIs to emqx_plugins_api.erl
2021-12-16 21:53:42 +01:00
Zaiming (Stone) Shi 3a7924d0fd refactor(plugins): new CLI for plugins 2021-12-16 21:21:16 +01:00
zhongwencool f95ef04cf7
Merge branch 'master' into api-key-secret 2021-12-15 16:01:09 +08:00
lafirest 82746134bb feat(emqx_slow_sus): ported emqx_slow_subs from v4.4 2021-12-10 16:42:55 +08:00
firest 8493b61cb5 refactor(eqmx_limiter): use the new hierarchical token bucket to replace the old ratelimit code 2021-12-10 14:37:23 +08:00
zhongwencool 64341fdc23 fix(swagger): remote api_secret field form api_key api 2021-12-09 17:57:57 +08:00
zhongwencool 0614c157ec fix(elvis): elvis warning 2021-12-09 16:42:10 +08:00
zhongwencool cf11f3f8ee feat(api-key): support api_key/secret 2021-12-09 16:42:10 +08:00
Zaiming (Stone) Shi 9276a5bc3c
Merge pull request #6394 from zmstone/fix-typo-in-hook-point-name
fix: typo takeovered -> takenover
2021-12-07 21:06:30 +01:00
Zaiming (Stone) Shi 5440b431a1 fix: typo takeovered -> takenover 2021-12-07 16:06:23 +01:00
JimMoen a7cd1ad30b fix(mgmt): node memory usage info 2021-12-03 14:41:33 +08:00
zhongwencool ef0e440d27
feat: http trace api for 5.0 (#6200)
* feat: port log trace http api for 5.0

* fix: name must printable unicode len<256

* fix: check-nl-at-eof warning

* fix: handler_id always atom
2021-11-23 13:49:12 +08:00
JimMoen 08899552fe fix(mgmt): fix broken `ets:continuation` been sent between nodes 2021-11-22 17:16:12 +08:00
zhongwencool 33f5eec802
feat: set keepalive via http api (#6171)
* feat: set keepalive via http api

* fix: make cluster_rpc test case solider
2021-11-18 10:56:58 +08:00
JimMoen 57075902a3
fix(mgmt_api): kickout non-existing clientid should return code `404` (#6180) 2021-11-17 12:29:27 +08:00
DDDHuang 7c48bcabed
fixt: generate api (#6124)
* fix: generate api

* fix: banned suite

* fix: generate api bad rpc

* fix: bad message suite

* fix: create banned with check existed
2021-11-17 10:55:48 +08:00
JimMoen c0e388e52a style: make elvis happy 2021-11-16 19:35:35 +08:00
JimMoen 1dc0a2e8b5 fix(mgmt_api): kickout non-existing clientid should return code `404` 2021-11-16 17:32:12 +08:00
JimMoen c05ecdbcb8
fix(api): DELETE success wrongly returned code 200 (#6135) 2021-11-16 09:28:57 +08:00
JianBo He a113b9b65d chore: fix elvis warnings 2021-11-15 22:26:46 +01:00
Zaiming Shi dd771c5568 fix(emqx_mgmt_cli): idempontent kick. now it always returns ok 2021-11-15 22:26:46 +01:00
JimMoen dcc5ae0642 test: API return code section 2021-11-15 16:30:44 +08: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
JimMoen 9b17757ae8 style: make elvis happy 2021-11-12 09:29:26 +08:00
JimMoen 37cdd429b2 fix(api): remove sessionID from client information 2021-11-12 09:29:26 +08:00
zhongwencool 7a5da76197
Mgmt http api banned (#5998)
* fix(swagger): don't transform [log,publish] to a list.pwd

* chore: replace banned-api by hocon schema

* fix(api): code style warning
2021-11-11 16:35:29 +08:00
JimMoen ac23214447
fix(api): config api on sepcific node (#6100)
* fix(api): config api on sepcific node

* chore(style):  code style for elvis checking
2021-11-10 09:38:45 +08:00
zhongwencool e62fde321c
Emqx alarm (#5994)
* chore(alarm): normalize_message outside emqx_alarm

* chore(alarm): don't cache config in emqx_alarm; remove dirty_write/read; add desc/example to alarm; add more test

* chore(alarm_api): alarm_api with hocon schema

* fix: activted's nullable is true

* fix(swagger): translate map to object

* fix(cluster_rpc): debug failed cluster_rpc test

* fix: Update schema description

Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>

Co-authored-by: Zaiming (Stone) Shi <zmstone@gmail.com>
2021-10-28 18:03:51 +08:00
JimMoen 4a07d5e1f3 refactor(paginate): use exported fun call `{M,F}` 2021-10-26 16:16:37 +08:00
JianBo He b36865e970 fix(api): escape the searching string 2021-10-26 10:34:03 +08: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 8e58699ff5
Merge pull request #5937 from k32/mria
feat(mria): Replace ekka_mnesia with mria
2021-10-20 13:15:23 +02:00
JimMoen a8bb2a60b0 fix(gateway_api): client ip and port as two fields when clients query 2021-10-19 15:36:02 +08:00
JimMoen 6fb1d22e0c fix(mgmt_api): client ip and port as two fields when clients query 2021-10-19 15:36:02 +08:00
k32 d14b8e7da9 chore(mria): ekka_rlog -> mria_rlog 2021-10-18 22:04:05 +02:00
k32 e14a62d4d6 chore(mria): ekka_mnesia:start/stop -> mria:start/stop 2021-10-18 22:04:05 +02:00
k32 ff48322e0c chore(mria): ekka_mnesia:running_nodes -> mria:running_nodes 2021-10-18 22:04:05 +02:00
Tobias Lindahl aa19c2a908 chore: Remove emqx_ct_helpers as dependency 2021-10-15 10:40:57 +02:00
JimMoen 40ab0064ae fix(api): invalid params HTTP Code 400 2021-10-14 18:57:33 +08:00
JimMoen cc36c7e48d fix(mgmt_api): add page limit check. 2021-10-14 18:57:33 +08:00
William Yang dcca1d7544
Merge pull request #5867 from qzhuyan/dev/william/olp
feat(olp): first PR for overload protection
2021-10-14 10:00:01 +02:00
William Yang 23fc8afc50 feat(olp): rename olp mgmt API
on -> enable
off -> disable
2021-10-13 10:18:57 +02:00
zhongwencool d80f20aca3
feat(swagger): define mgmt config_api by hocon schema (#5814)
* feat(swagger): define mgmt config_api by hocon schema

* fix: enum can't defined by integer, use union.

* fix: hocon schema union to enum
2021-10-13 14:04:43 +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
JimMoen 19456d84a5 style: code format fix 2021-10-12 10:37:45 +08:00
JimMoen 321d941eaf fix(mgmt_api): rows too big fixing. 2021-10-11 21:11:34 +08:00
JimMoen 3960204ce3 refactor(mgmt_api): `select_table_with_count`. 2021-10-11 21:11:34 +08:00
JimMoen ea7aa5bc41 refactor(mgmt_api): use `select_table` congruously. 2021-10-11 21:11:34 +08:00
JimMoen b65c9908a1 refactor(mgmt_api): Clearer variable name. 2021-10-11 21:11:34 +08:00
JimMoen 77516d3854 refactor(mgmt_api): `node_query`. 2021-10-11 21:11:34 +08:00
JimMoen e26804b9ac refactor(mgmt_api): `cluster_query`. 2021-10-11 21:11:34 +08:00
JimMoen 705ed0ce7b refactor(mgmt_api): Fuzzy filter using `select_table`. 2021-10-11 21:11:34 +08:00
JimMoen 5daef544a0 refactor(mgmt_api): `select_table`. 2021-10-11 21:11:34 +08:00
JimMoen b4433f77c8 refactor(mgmt_api): Add `page_start`. 2021-10-11 21:11:34 +08:00
JimMoen 9657d7e628 refactor(mgmt_api): Use Continuation with ets selecting. 2021-10-11 21:11:34 +08:00
William Yang 67267acb70 feat(olp): management API 2021-10-04 14:36:30 +02:00
zhanghongtong 9b3917e0d3 chore(authz mnesia api): get method supports paging
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-09-26 16:19:47 +08:00
JimMoen e737f18548 fix(mgmt_api): Friendly HTTP Status Code for Listeners. 2021-09-24 14:28:52 +08:00
JimMoen 54b3dd8718 fix(mgmt_api): update listener on specific node. 2021-09-24 14:28:52 +08:00
JimMoen 2e088c0ae8 fix(mgmt_api): return 404 when node not found. 2021-09-24 14:28:52 +08:00
JimMoen deac54c847 chore(for editor): Add comments for Emacs major mode. 2021-09-16 15:43:30 +08:00
Jim Moen 294c1a5f69 fix(emqx_mgmt): clients api query params supports epoch(milliseconds). 2021-09-16 13:54:11 +08:00
Jim Moen 8cbec2ec6e chore(emqx_mgmt): test suite for clients api times using rfc3339. 2021-09-16 13:54:11 +08:00
Jim Moen 834a688062 fix(emqx_mgmt): clients api times using rfc3339. 2021-09-16 13:54:11 +08:00
lafirest 9ad9f619c1
Merge pull request #5676 from lafirest/feat/coap_api
feat(emqx_coap): add emqx_coap_api
2021-09-08 22:23:22 +08:00
DDDHuang e2d9d9bfcb
fix: banned api rfc time & login hidden error type (#5681) 2021-09-08 17:53:52 +08:00
lafirest 89f48f89eb feat(emqx_coap): add emqx_coap_api
1. add a request api for emqx_coap
2. fix some emqx_coap logic error
2021-09-07 19:20:52 +08:00
DDDHuang 8b2488e099
fix: routes api add params (#5675)
* fix: routes api add topic query params

* fix: routes api add node query params
2021-09-07 18:31:40 +08:00
DDDHuang b1023d9733
fix: clients ip address params trans (#5657)
* fix: clients ip address params trans
2021-09-06 13:32:29 +08:00
Zaiming (Stone) Shi 7a4fdd7620
Merge pull request #5647 from zmstone/feat-generate-config-doc-from-schema
refactor(schema): prepare for hocon schema doc generation
2021-09-03 17:54:01 +02:00
Zaiming Shi ec13463f4a refactor(schema): prepare for hocon schema doc generation 2021-09-03 11:02:31 +02:00
DDDHuang 07821b9574
fix: cli error & routes api doc (#5639) 2021-09-03 16:07:34 +08:00
DDDHuang be0fd6fddd
fix: add sub api doc & test suite (#5634)
* fix: add sub api doc & test suite
2021-09-03 10:57:54 +08:00
JianBo He fd12a7ac9c chore(gw): improve the gateway api swagger codes 2021-09-03 09:50:07 +08:00
JianBo He 0a7a14f4cd chore(mgmt): callback query function with table name param 2021-09-03 09:50:07 +08:00
DDDHuang 3bc92e5845
fix: mgmt listener cli (#5632)
* fix: mgmt cli linteners
2021-09-02 17:16:13 +08:00
DDDHuang 516f2fd06e
fix: listener api doc (#5627) 2021-09-02 15:30:53 +08:00
DDDHuang 8d2b72c278
fix: alarms api return time (#5612) 2021-08-31 19:12:27 +08:00
DDDHuang 00d469976f
fix: subscriptions api share param name (#5610) 2021-08-31 19:04:52 +08:00
Shawn 0af39e88a4 feat(listeners): add DELETE APIs for removing the listeners 2021-08-31 19:01:11 +08:00
Shawn 4da413c453 fix(APIs): clarify the error message when update listener failed 2021-08-31 19:01:11 +08:00
Shawn 7390d2bb36 fix(listeners): test case emqx_mgmt_listeners_api_SUITE failed 2021-08-31 19:01:11 +08:00
Shawn 8c36b7879f feat(listeners): APIs for updating the listener 2021-08-31 19:01:11 +08:00
Shawn ca327b7c55 refactor(listener): GET /listeners API returns full config of listeners 2021-08-31 19:01:11 +08:00
DDDHuang 5b75fdd120
fix: some API code format & api doc code format (#5601) 2021-08-30 16:41:00 +08:00