Commit Graph

2392 Commits

Author SHA1 Message Date
JimMoen e361cd5733
Fix dashboard APIs return (#6177)
* fix(dashboard_api): delete non-exist user wrongly return 204

* fix(dashboard): dashboard user should use `tags` not `tag`

* fix(dashboard): create/update user return 200 with full users list

* fix(dashboard): logout status code 204

* fix(dashboard): update pwd status code 204

* test: test suite for dashboard APIs

* refactor(dashboard): user info mnesia record name use description

* style: make elvis happy

* fix(api): dashboard swagger check request should not override env

* fix(dashboard): add/modify dashboard returns single record

* ci: update emqx-fvt version to new tag 1.0.2-dev1
2021-11-18 14:36:12 +08:00
JimMoen 53b51e31f0 fix(api_schema): add authn mongo missing fields 2021-11-18 12:41:40 +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
Zaiming (Stone) Shi 8d653b6d39
Merge pull request #6173 from zmstone/refactor-retainer-use-ordered-set
[5.0] refactor(retainer): use ordered_set Mnesia table type
2021-11-18 00:28:57 +01:00
Tobias Lindahl e52d8138bf test(persistent_session_SUITE): fix another flaky test
Make sure that the connection process dies before terminating the
snabbkaffe trace.
2021-11-17 14:04:06 +01:00
Tobias Lindahl 5914b8ad3d
Fix flaky tests for persistent sessions (#6202)
* test(persistent_session_SUITE): remove redundant sleep and trap_exits

* test(persistent_session_SUITE): fix race for started snabbkaffe

Sometimes snabbkaffe was not started when publishing from a different
process. Wrap the publishing code in a ?check_trace to make sure it is
started, and make sure the publish process is truly down before ending
the trace.

* test(persistent_session_SUITE): fix takeover race

Make sure the previous session is unregistered before trying to
connect again. Sometimes the new session was trying to take over the
session that was shutting down still.
2021-11-17 18:55:11 +08:00
tigercl 7950e26774
Merge pull request #6193 from tigercl/feat/mongo-srv-5.0
feat(mongo srv): support srv record for mongo connector
2021-11-17 15:42:01 +08:00
zhongwencool 04c204374a
chore: All placeholders are placed in the same header file (#6190)
* chore: All placeholders are placed in the same header file

* feat: Separate placeholders from the rules engine
2021-11-17 14:40:48 +08:00
zhongwencool a7a5e2d1f4
fix: can't get default key if all key if default (#6181) 2021-11-17 14:27:51 +08:00
JimMoen 57075902a3
fix(mgmt_api): kickout non-existing clientid should return code `404` (#6180) 2021-11-17 12:29:27 +08:00
zhouzb f8a625a67f feat(mongo srv): support srv record for mongo connector 2021-11-17 12:12:30 +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
Tobias Lindahl ae5792fa64 chore(emqx_cm): remove unused tracepoints 2021-11-16 14:37:15 +01:00
Tobias Lindahl c9b86a8375 test: make testcases not rely on timer:sleep 2021-11-16 13:50:01 +01:00
Tobias Lindahl 05f3bc8c90 fix(emqx_cm): make takeover session less likely to hit a race 2021-11-16 13:49:45 +01:00
JimMoen c0e388e52a style: make elvis happy 2021-11-16 19:35:35 +08:00
Zaiming Shi ac693c0dcb refactor(retainer): use ordered_set Mnesia table type
ordered_set is compatible to set in all the existing APIs
and in addition, it provides a more deterministic traversing
cursor in case we want to change the current dirty_select
based "select ALL" implementation
2021-11-16 12:33:59 +01: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
Zaiming Shi ff23e9dde1 test: sync with emqx_cm process before flushing emqx_pool 2021-11-15 22:27:16 +01:00
JianBo He a113b9b65d chore: fix elvis warnings 2021-11-15 22:26:46 +01:00
JianBo He 9e333ac8b3 fix(emqx_cm): fix typos 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
Zaiming Shi 7e2ca9e287 fix(session): force kill session for 'kick' and 'discard'
Prior to this fix, 'kick' and 'discard' calls may timeout (or
fail for other reason), failures lead to only a log, then
continue to allow the new session to get registered.

As a result, in case a client is stuck, there is no way to
force it to step down, end up with multiple connections (sessions)
for the client ID in dashboard.

After this fix, the stale pids are notified to shutdown
via a gen_server:call, and forced with a exit(Pid, kill) for any
exception happend to the gen_server:call
2021-11-15 22:26:46 +01:00
Zaiming (Stone) Shi 650905667b
Merge pull request #6172 from JimMoen/fix-emqx_cm-ct
test: add tasks flushing in emqx_cm cases
2021-11-15 17:17:27 +01:00
JimMoen cf80aaacc3 test: add tasks flushing in emqx_cm cases 2021-11-15 20:40:43 +08:00
Zaiming (Stone) Shi 9761fe2f6d
Merge pull request #6009 from tigercl/fix/authn
fix(authn): fix handling of query result
2021-11-15 13:32:56 +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 59e6b6ee5b
test(cm): add sleep time for multicore scheduling (#6164) 2021-11-15 15:43:26 +08:00
DDDHuang 1476accd63
fix: monitor bad mnesia write & rpc call (#6060) 2021-11-15 15:28:19 +08:00
zhongwencool 01f29ab052
chore(swagger): lwm2m2 http api to hocon (#6153) 2021-11-15 15:08:50 +08:00
JimMoen 5a928ad8c3 test(cm): add sleep time for multicore scheduling 2021-11-15 13:52:15 +08:00
DDDHuang f0107868d4
fix: test suite stable (#6136)
* fix: test suite stable
2021-11-12 10:53:30 +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
DDDHuang bc6e49804f
feat: support CORS request
feat: support CORS request
2021-11-11 20:27:39 +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 a65597e302
Authz api mnesia refactor (#6082)
* refactor(authz): macro move to hrl and rename, add meta example

* refactor(authz_api_mnesia): use config schemas for request validations

* chore(authz_api_mnesia): suite module typerefl fit

* chore(style): authz_api_mnesia style format
2021-11-11 16:29:36 +08:00
Zaiming Shi b96a106463 style: make elvis happy 2021-11-10 22:54:58 +01:00
Zaiming Shi 9c1972020c test: fix flaky test emqx_stomp_SUITE:t_rest_clienit_inf 2021-11-10 22:51:18 +01:00
Ilya Averyanov 4f0311b6f8
Merge pull request #6093 from savonarola/add-authn-tests
chore(authn mnesia): reimplement emqx_authn_mnesia provider tests
2021-11-10 21:20:46 +03:00
Ilya Averyanov a0a88e23b0 chore(authn mnesia): reimplement emqx_authn_mnesia provider tests 2021-11-10 17:13:04 +03:00
Thales Macedo Garitezi 60d5017eea
style(elvis): fix elvis style complaints 2021-11-10 11:12:10 -03:00
Thales Macedo Garitezi 8fe342a02d
feat(stats): track live channel / client count
Track connected client count

In order to correctly display the number of _connected_ clients in our
monitor dashboard, we need to track those connections that are
actually connected to clients, not considering connections from
persistent sessions that are disconnected. Today, the
`connections.count` that is displayed in the dashboards considers
those disconnected persistent sessions as well.

The new statistics can be found in the
[`emqx_management`](https://github.com/emqx/emqx/tree/main-v4.4/apps/emqx_management)
plugin, under `/api/v4/stats`, in the keys
`live_connections.{max,count}`.
2021-11-10 11:12:10 -03:00
lafirest e8f6035c34
feat(emqx_lwm2m): add some lwm2m api (#6047) 2021-11-10 14:20:33 +08:00
zhongwencool 2d159ad9a1
fix(test): flaky mqtt expiry test case. (#6099) 2021-11-10 09:55:36 +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 eea789451b
feat: sha3_256 dashboard account's password (#6084) 2021-11-09 15:41:28 +08:00