Commit Graph

647 Commits

Author SHA1 Message Date
Zhongwen Deng a523fa2fa2 feat: add dashboard password validate 2023-01-17 11:30:42 +08:00
Zhongwen Deng f15b29b1ef chore: upgrade app version 2023-01-13 18:22:29 +08:00
firest c5f557e315 fix: disable basic auth for HTTP API 2023-01-12 21:35:49 +08:00
Andrew Mayorov 9e9d97b4d8
Merge pull request #9726 from keynslug/fix/EMQX-8702/fuzzy-search-paging
fix(api): augment paged search responses with `hasnext` flag
2023-01-12 13:35:59 +04:00
Andrew Mayorov e07aa2086b
fix(api): augment paged search responses with `hasnext` flag
This flag indicates whether there are more results available on the
next pages. It is needed in cases when the total number of search
results is not known in advance.

Also, in such cases there's no `count` field in responses anymore
because responding with `0` was confusing for clients: it's not possible
to differentiate between "there are no results" and "we don't know how
much".

Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2023-01-12 10:57:30 +03:00
Zhongwen Deng 1194d07a07 refactor: update emqx_prometheus's headers from map() to list() 2023-01-12 12:48:26 +08:00
zhongwencool ce2b4d48ad
Merge pull request #9714 from zhongwencool/auto-subscribe-api-schema
fix: bad auto_subscribe api schema
2023-01-11 14:32:40 +08:00
Zhongwen Deng 52ccd0762e test: QOS ct failed 2023-01-11 10:34:09 +08:00
Zhongwen Deng 5415e341fb fix: bad auto_subscribe api schema 2023-01-10 21:53:54 +08:00
Zhongwen Deng f6a47e5cf6 chore: support api_key.bootstrap_file config 2023-01-10 19:03:49 +08:00
Zaiming (Stone) Shi e52f9d5920 refactor: use union member type selector for authz sources 2023-01-09 14:26:16 +01:00
Zaiming (Stone) Shi dbc10c2eed chore: update copyright year 2023 2023-01-02 09:22:27 +01:00
Zaiming (Stone) Shi 0ce1ca89b7 refactor: use string type for server and servers 2022-12-30 14:20:23 +01:00
Zaiming (Stone) Shi 9e3da5b661 chore: bump app versions 2022-12-14 20:07:41 +01:00
Thales Macedo Garitezi f827062f0b
Merge pull request #9449 from thalesmg/gcp-pubsub-ee50
feat(gcp_pubsub): implement GCP PubSub bridge (ee5.0)
2022-12-14 10:31:12 -03:00
Stefan Strigler 7bdb029745 refactor: use POST not PUT for `/users/{name}/change_pwd` 2022-12-13 11:08:54 +01:00
Thales Macedo Garitezi 1cd91a24e9 feat(gcp_pubsub): implement GCP PubSub bridge (ee5.0) 2022-12-12 17:18:19 -03: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 dbdb78d38a chore: clarify the case when count returns zero 2022-11-24 20:28:50 +01:00
firest 1719414c04 chore: update app versions 2022-11-23 11:42:49 +08:00
firest 19405114e2 fix: fix newly found unsafe `binary_to_atom` 2022-11-23 11:07:20 +08:00
Zaiming (Stone) Shi 09455edae8 Merge tag 'v5.0.10' into dev/ee5.0 2022-11-16 16:20:30 +01:00
lafirest 5886db08e0
Merge pull request #9279 from lafirest/fix/binary_to_atom
fix: use binary_to_existing_atom to replace some risky binary_to_atom
2022-11-02 10:57:05 +08:00
firest 60492615ba fix(API): Ensure that the node name is known 2022-11-01 17:28:34 +08:00
Ivan Dyachkov aeca8833f5
Merge pull request #9250 from id/fix-typo-in-http-error-code
fix: typo in http error code
2022-10-31 10:23:55 +01:00
JianBo He d995842f36
Merge branch 'master' into fix-gw-api-erros 2022-10-28 10:18:21 +08:00
Ivan Dyachkov d4adf8532e fix: typo in http error code 2022-10-27 18:14:46 +02:00
Zaiming (Stone) Shi c157392452 docs: fix self-closing html tag, change </br> to <br/> 2022-10-27 13:57:18 +02:00
Stefan Strigler ef5687d465 fix(emqx_gateway_api): don't crash on unknown status 2022-10-27 12:35:15 +02:00
JianBo He 5a66c8b117
Merge pull request #9082 from HJianBo/update-api-docs
chore(i18n): enrich HTTP API desc
2022-10-12 09:36:11 +08:00
Zaiming (Stone) Shi abb941d161 docs: remove port 8081
port 8081 is the management API in 4.x
in 5.0 api port is 18083 (same as for serving the dashboard)
2022-10-05 17:15:19 +02:00
JianBo He a84c6f938c chore(swagger): caption tags name 2022-09-30 23:04:26 +08:00
JianBo He 834910b6f6 chore: update app.src 2022-09-27 17:24:44 +08:00
Zaiming (Stone) Shi 00e4b4da5a fix(schema): support hostname.domain:port for mqtt bridge 2022-09-27 09:02:49 +02:00
Shawn dfe14be8b2 chore: bump app vsns 2022-09-26 18:23:28 +08:00
Zaiming (Stone) Shi 4534966e36 Merge remote-tracking branch 'origin/master' into dev/ee5.0 2022-09-13 12:16:54 +02:00
firest 47b35f0c6a fix(api): add listener create API from `POST /listeners/{type:name}` to `POST /listeners`
Old:
    API: POST /listeners/{type:demo}
    Body: {"type" : "tcp", "id" : "tcp:demo"}
New:
    API: POST /listeners
    Body: {"type" : "tcp", "name" : "demo"}
2022-09-08 20:28:40 +08:00
Zaiming (Stone) Shi 81ec4c4403
Merge pull request #8906 from zmstone/merge-master-to-ee50-a
Merge master to ee50
2022-09-07 11:19:41 +02:00
Zaiming (Stone) Shi befc4acced Merge remote-tracking branch 'origin/master' into merge-master-to-ee50-a 2022-09-06 20:31:38 +02:00
Shawn 60a90858f8 feat: check dependent actions before removing the bridges 2022-09-06 15:34:23 +08:00
Zhongwen Deng 13c0c79567 chore: bump up emqx_dashboard 2022-09-01 09:39:15 +08:00
Zaiming (Stone) Shi dac178cbaf chore: ensure version bumps 2022-08-31 17:23:47 +02:00
Zaiming (Stone) Shi 5a3fb4a011 Merge remote-tracking branch 'origin/master' into dev/ee5.0 2022-08-31 17:11:15 +02:00
Zhongwen Deng 1cb281fbc4 fix: return 503 if dashboard's router not ready 2022-08-31 15:45:54 +08:00
JianBo He 3874f14f8c chore: rename bootstrap_user to bootstrap_users 2022-08-19 14:51:41 +08:00
firest 66f06c3ab7 fix(dashboard): change `bootstrap_user` to `bootstrap_user_file` 2022-08-16 14:15:10 +08:00
Shawn b3162fe5ff fix: conflicts between master and ee5.0 2022-08-14 22:24:09 +08:00
firest d4bf658e38 fix(dashboard): add bootstrap user tag && return error when adding bootstrap user fails 2022-08-12 16:40:36 +08:00
lafirest c7f6517aee
Merge pull request #8667 from lafirest/feat/bootstrap_user
feat(dashboard): add bootstrap files to initialize user accounts
2022-08-12 10:43:42 +08:00
Shawn c3c4ed02b4 fix: bump emqx_dashboard to 5.0.4 2022-08-12 00:24:58 +08:00
firest d55c9341eb fix(dashboard): fix nit codes 2022-08-11 17:42:22 +08:00
JimMoen 223b84017e fix(influxdb): api schema `write_syntax` using raw type `string()` 2022-08-11 11:36:08 +08:00
firest 463d255c0a fix(dashboard): make dialyzer happy 2022-08-09 16:36:46 +08:00
firest 0f8ebbdf0f feat(dashboard): add bootstrap files to initialize user accounts 2022-08-09 16:02:50 +08:00
firest 01ba45cc37 fix(mgmt): remove the `/api/v5` prefix of status API 2022-08-08 17:34:18 +08:00
zhongwencool c6f879e03b
Merge pull request #8634 from zhongwencool/improve-swagger-router-generate
fix: return 503 instead of crash when dashboard generate router timeout
2022-08-03 10:46:59 +08:00
Zhongwen Deng 8e53a61791 fix: return 503 instead of crash when dashboard generate router timeout 2022-08-02 19:49:06 +08:00
Thales Macedo Garitezi a78760dbac chore: bump app vsns 2022-08-01 10:57:34 -03:00
JianBo He 14920743ca
Merge pull request #8513 from lafirest/fix/limiter_interface
refactor(limiter): refactor the user interface
2022-08-01 11:02:15 +08:00
JianBo He 257e310931 chore: ensure the `bind` output style
e.g:
- Configured as `1883`, printed as `:1883`
- Configured as `0.0.0.0:1883`, printed as `:1883`
- Configured as `127.0.0.1:1883`, printed as `127.0.0.1:1883`
- Configured as `::1:1883`, printed as `[::1]:1883`
- Configured as `[::1]:1883`, printed as `[::1]:1883`
2022-07-26 19:02:04 +08:00
JianBo He 2c71d27a89 feat(listeners): change the `GET /listeners` api fields 2022-07-26 11:04:33 +08:00
Zhongwen Deng 02c0755867 fix: dashboard failed test 2022-07-25 16:55:38 +08:00
Zhongwen Deng a3296078c3 chore: make sure swagger's tags always titlecase 2 2022-07-25 16:55:38 +08:00
Zhongwen Deng dd59c850e0 chore: make sure swagger's tags always titlecase 2022-07-25 16:09:17 +08:00
firest 15c8110af2 fix(limiter): lift the level of the `client` field 2022-07-22 17:14:24 +08:00
Thales Macedo Garitezi be9efcae2e fix: dashboard monitor crash after badrpc
Accumulator becomes unusable after a `badrpc` error.

```
2022-07-21T15:22:17.825688-03:00 [warning] exception: error, line: 116, mfa: minirest_handler:apply_callback/3, path: /monitor_current, reason: {badmap,{badrpc,{'emqx@emqx-17.int.thales',{'emqx@emqx-17.int.thales',timeout}}}}, stacktrace: [{maps,get,[connections,{badrpc,{'emqx@emqx-17.int.thales',{'emqx@emqx-17.int.thales',timeout}}},0],[{file,"maps.erl"},{line,517},{error_info,#{module => erl_stdlib_errors}}]},{emqx_dashboard_monitor,'-merge_cluster_rate/2-fun-0-',3,[{file,"/emqx/apps/emqx_dashboard/src/emqx_dashboard_monitor.erl"},{line,259}]},{maps,fold_1,3,[{file,"maps.erl"},{line,410}]},{lists,foldl,3,[{file,"lists.erl"},{line,1267}]},{emqx_dashboard_monitor,current_rate,0,[{file,"/emqx/apps/emqx_dashboard/src/emqx_dashboard_monitor.erl"},{line,126}]},{emqx_dashboard_monitor_api,monitor_current,2,[{file,"/emqx/apps/emqx_dashboard/src/emqx_dashboard_monitor_api.erl"},{line,135}]},{minirest_handler,apply_callback,3,[{file,"/emqx/deps/minirest/src/minirest_handler.erl"},{line,111}]},{minirest_handler,handle,2,[{file,"/emqx/deps/minirest/src/minirest_handler.erl"},{line,44}]},{minirest_handler,init,2,[{file,"/emqx/deps/minirest/src/minirest_handler.erl"},{line,27}]},{cowboy_handler,execute,2,[{file,"/emqx/deps/cowboy/src/cowboy_handler.erl"},{line,41}]},{cowboy_stream_h,execute,3,[{file,"/emqx/deps/cowboy/src/cowboy_stream_h.erl"},{line,318}]},{cowboy_stream_h,request_process,3,[{file,"/emqx/deps/cowboy/src/cowboy_stream_h.erl"},{line,302}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,226}]}]
```
2022-07-21 15:40:29 -03:00
Zhongwen Deng a12478225a fix: fix bad swagger format 2022-07-20 16:56:07 +08:00
Zhongwen Deng 26820ed0c4 chore: remove /configs/listeners, we should use /listeners/ API 2022-07-14 15:23:39 +08:00
Zhongwen Deng 421251f4c8 chore: improve the dashboard listener startup log 2022-07-14 09:49:54 +08:00
DDDHuang 941440800b fix(cli): subscriptions with sub options, qos rh rap nl; admins response
data format
2022-07-13 15:55:07 +08:00
Zaiming (Stone) Shi 07783249bb chore: move emqx API version (in generated doc) to emqx_release.hrl
So we have one place to bump all versions
2022-07-06 14:01:35 +02:00
JimMoen 2ad99fca7a chore: update appup.src 2022-07-01 21:07:33 +08:00
zhongwencool e0ab8e58cf
Merge pull request #8360 from zhongwencool/example-name
chore: mv i18n.conf to emqx_dashboard/priv/
2022-07-01 10:23:10 +08:00
Zhongwen Deng 92019e4d4c chore: don't copy i18n.conf 2022-07-01 09:33:35 +08:00
Zhongwen Deng 9768e302c2 chore: mv i18n.conf to emqx_dashboard/priv/ 2022-06-30 21:15:57 +08:00
DDDHuang f502e09f5f fix(dashboard): add more test suite 2022-06-30 14:52:48 +08:00
DDDHuang 0b32bf72f7 fix: dashboard users api, cannot delete self 2022-06-30 10:51:44 +08:00
Zaiming (Stone) Shi b467e11b2e fix(appup): fixed appup and version check scripts for 5.0 2022-06-20 22:20:31 +02:00
Zaiming (Stone) Shi 385566c1a0 docs: change descriptive info from 'community' to 'opensource' 2022-06-20 19:38:29 +02:00
Zhongwen Deng 73711d4147 fix: brutal kill emqx_dashboard_listener 2022-06-17 00:08:03 +08:00
zhongwencool fbfed35371
Merge pull request #8214 from zmstone/0613-best-effort-json-for-hocon-type-check-errors
refactor: best-effort json for hocon type check errors
2022-06-15 22:45:05 +08:00
Zaiming (Stone) Shi 738a551550 refactor: best-effort json for hocon validation errors 2022-06-15 15:01:15 +02:00
DDDHuang de10149133 fix: user change pwd failed, response 400 2022-06-14 17:21:53 +08:00
DDDHuang cae59ae555 fix: login failed spelling 2022-06-07 14:13:25 +08:00
ieQu1 44d73e620e fix(dashboard): Fix typing error 2022-06-07 02:26:16 +02:00
zhongwencool 914fbedd7e
Merge pull request #8116 from zhongwencool/better-hocon-validate-msg
chore: better hocon validate msg
2022-06-06 20:29:25 +08:00
Zhongwen Deng de5e388afb chore: hocon validate message 2022-06-06 09:55:12 +08:00
Zhongwen Deng c7cc2e85b2 fix: add default&example for schema 2022-06-06 09:52:10 +08:00
Ilya Averyanov 1bad5f8b7c
Merge pull request #8088 from savonarola/authn-import-users-request
feat(authn api): add method for user file upload
2022-06-02 13:51:46 +03:00
Zhongwen Deng 9ec804ae03 feat: generate example.conf from schemas 2022-05-31 19:20:27 +08:00
Zhongwen Deng 8519b161dc chore: replace = by : in conf 2022-05-31 19:20:27 +08:00
Zhongwen Deng 8aa60cc0a5 feat: generate a minimized emqx.conf 2022-05-31 19:20:27 +08:00
Ilya Averyanov 3be617cf40 feat(authn api): add method for user file upload 2022-05-31 00:40:10 +03:00
JimMoen 0c88457b4e
Merge pull request #7945 from DDDHuang/dash_m
feat: dashboard monitor missed topics field
2022-05-14 00:15:43 +08:00
Zaiming (Stone) Shi b17a32661e test: fix flaky test, wait for new sample data 2022-05-13 11:52:41 +02:00
DDDHuang a8ef4698e6 feat: dashboard monitor missed topics field 2022-05-13 16:15:33 +08:00
Zhongwen Deng af8cad3856 chore: bump minirest to 1.3.3(force generate dispatch rule) 2022-05-12 16:42:20 +08:00
Zhongwen Deng 09e5f35f5c fix: include ref's desc 2022-05-12 16:17:03 +08:00
zhongwencool dbfbdb930f
Merge pull request #7920 from zhongwencool/remove-enable-from-server-ssl-options
fix: remove enable from server_ssl_opts_schema
2022-05-12 14:47:26 +08:00
Zhongwen Deng e929da2e68 fix: remove enable from server_ssl_opts_schema 2022-05-11 22:08:24 +08:00
Zaiming (Stone) Shi 60ca1cb2a5 refactor(authn): use hocon enum type for user_id_type 2022-05-11 09:02:55 +02:00
Zhongwen Deng 7c34c8a8b1 fix: retry if init_disaptch failed 2022-05-10 09:38:48 +08:00
Zhongwen Deng 34ad395abe fix: don't router request until dispatch is ready 2022-05-10 09:38:48 +08:00
Zhongwen Deng 068421d0e1 feat: don't dispatch requests until dispatch is ready 2022-05-10 09:38:48 +08:00
Zhongwen Deng b91e9e59ba chore: bump minirest to 1.3.1(generate api_spec concurrency) 2022-05-10 09:38:48 +08:00
Zhongwen Deng ec297965f6 fix: move clear_i18n to after clause 2022-05-10 09:38:48 +08:00
Zhongwen Deng 23a01e393c chore: bump minirest to 1.3.0 2022-05-10 09:38:48 +08:00
Zhongwen Deng 5c66b6f04d feat: generate dashboard's dispatch asynchronously 2022-05-10 09:38:48 +08:00
zhongwencool 2d58121ed0
Merge pull request #7857 from DDDHuang/monitor_10s
fix: monitor calculate rate time delta is 0
2022-05-06 10:27:06 +08:00
firest acb78d53eb fix(limiter): fix rate parser, support this format: xMB/s 2022-05-05 15:38:04 +08:00
DDDHuang 2504531b45 fix: monitor calculate rate time delta is 0 2022-05-05 09:32:15 +08:00
DDDHuang 177926b0a8
Merge pull request #7833 from DDDHuang/testm_cluster
fix: cluster monitor rate, topics calculate error
2022-04-29 13:45:35 +08:00
Zhongwen Deng 591b7c4fdb fix: make ssl options's required keys is [] 2022-04-29 11:45:22 +08:00
Zhongwen Deng bfdd86b3fd fix: reset config not work in cluster 2022-04-29 11:45:22 +08:00
Zhongwen Deng 352984efe7 fix: dashboard https without deafult pem/keyfile 2022-04-29 11:45:22 +08:00
DDDHuang 9d1afa06c4 fix: cluster monitor rate, topics calculate error 2022-04-29 11:26:43 +08:00
Zhongwen Deng e24bdab2a5 fix: crash when swagger hocon translation failed 2022-04-29 08:52:03 +08:00
Zhongwen Deng 3e8bedda76 fix: dashboard ct add enable options 2022-04-28 14:05:39 +08:00
Zhongwen Deng 2eab3f1cdb fix: dashboard https's password can't update 2022-04-28 14:05:39 +08:00
Zhongwen Deng 5c08c4ff4e chore: more detailed about dashboard inet6 option 2022-04-28 14:05:39 +08:00
Zhongwen Deng 204f04be65 fix: handshake_timeout is ranch option not socket options 2022-04-28 14:05:39 +08:00
Zaiming (Stone) Shi 974380a3d4 feat(dashboard): add listener enable/disable config toggle 2022-04-28 14:05:39 +08:00
Xinyu Liu a9c6f93b48
Merge pull request #7772 from DDDHuang/dash_format
chore: dashboard code format
2022-04-27 10:33:44 +08:00
DDDHuang 1185f010ec
Merge pull request #7771 from DDDHuang/monitor_topics
fix: monitor samplers data calculate topics error
2022-04-26 17:23:14 +08:00
DDDHuang 07444e3da5 chore: dashboard format code 2022-04-26 17:18:30 +08:00
DDDHuang 2ea66ebcee
Merge pull request #7749 from DDDHuang/fix_some_api
fix: create banned & dashboard default user name
2022-04-26 16:43:44 +08:00
DDDHuang 00d4e4b9d9 fix: monitor samplers data calculate topics error 2022-04-26 15:17:54 +08:00
DDDHuang 6db01bdd85 fix: add dashboard test suite & bug fix 2022-04-26 13:44:55 +08:00
Zhongwen Deng 3d47e28fa9 fix: responses don't support object, use ref 2022-04-26 11:57:10 +08:00
DDDHuang 69f1a2ac86 fix: build i18n conf with dashboard app 2022-04-26 11:57:07 +08:00
DDDHuang 57360de94d fix: dashboard users api format & i18n & response code 2022-04-26 11:56:41 +08:00
JianBo He a58b88aeec chore(i18n): fix more and more typos 2022-04-26 09:28:05 +08:00
zhongwencool 4b763a3a12
Merge pull request #7742 from zhongwencool/schema-namespace
fix: add namespace to schema
2022-04-26 09:26:04 +08:00
DDDHuang 3b13f1dfcc fix: dashboard change pwd & delete user with destory token 2022-04-25 18:27:24 +08:00
DDDHuang 40560230db fix: create banned & dashboard default user name 2022-04-25 18:27:24 +08:00
JianBo He 0a16c9fabf
Merge pull request #7747 from HJianBo/rename-bytes-rate
fix(dashboard): rename fields  for monitor_current APIs
2022-04-25 13:47:33 +08:00
Zhongwen Deng 55f8f7277d fix: imporve hocon check failed error 2022-04-25 11:47:18 +08:00
JianBo He 60a8f3083b fix(dashboard): rename fields for monitor_current APIs
received_rate -> received_msg_rate
sent_rate -> sent_msg_rate
dropped_rate -> dropped_msg_rate
2022-04-25 09:32:43 +08:00
JimMoen e9843aa225 fix(doc): html line break use `</br>` 2022-04-24 18:56:21 +08:00
Zhongwen Deng 7d9403d056 fix: add namespace to schema 2022-04-24 15:47:23 +08:00
zhongwencool a27caff5af
Merge pull request #7739 from DDDHuang/better_dashboard_log
fix: better listener log
2022-04-24 14:08:27 +08:00
Zhongwen Deng 38215f73fc fix: rate limiter schema check crash and return 500 2022-04-24 11:59:08 +08:00
Zhongwen Deng eeba6ac01d fix: dashboard should restart listeners after return 200 2022-04-24 11:15:21 +08:00
Zhongwen Deng b7a6bd973f fix: monitor crash by ets badarg 2022-04-24 11:13:33 +08:00
DDDHuang 1752257169 fix: better listener log 2022-04-24 09:55:35 +08:00
Zhongwen Deng 5223c3ee61 feat: obfuscate sensitive values default_password 2022-04-24 09:41:29 +08:00
JimMoen 14e0296221
Merge pull request #7728 from zhongwencool/fix-swagger
fix: swagger crash/ copy conf failed from core node
2022-04-22 20:49:21 +08:00
JimMoen 1fab779db8 fix(i18n): rm double quotes in i18n confs, add missing translation 2022-04-22 19:26:44 +08:00
Zaiming (Stone) Shi 0945c959bf chore(emqx_dashboard): update hocon desc cache APIs 2022-04-22 08:21:07 +02:00
Zhongwen Deng 393fbd2bdb feat: add emqx_dashboard i18n 2022-04-21 23:43:12 +08:00
Zhongwen Deng 05b4ed58e0 feat: add emqx_conf_schema i18n conf 2022-04-21 22:17:59 +08:00
zhongwencool 051ed84fc8
Merge pull request #7675 from zhongwencool/api-listener
refatcor: simplify updating the listener
2022-04-20 14:10:01 +08:00
Zhongwen Deng 24e1772532 fix: wrong default label name when desc is not struct 2022-04-19 21:29:37 +08:00
JimMoen cf671f10e7 fix(swagger): string example use binary 2022-04-19 18:57:01 +08:00
JimMoen 93dd7d46c5 refactor: fields `meta` ref to dashboard_swagger 2022-04-19 18:57:01 +08:00
Xinyu Liu 86e8498bce
Merge pull request #7658 from terry-xiaoyu/dashboard_conf_no_array
refactor: change confs for dashboard listeners from array to map
2022-04-19 16:06:27 +08:00
Shawn e6f8069145 fix: add desc for dashboard:listeners 2022-04-19 14:04:09 +08:00
Shawn b04ca3cb99 fix: udpate test cases for new dashboard configs 2022-04-19 10:49:40 +08:00
Zhongwen Deng 0de367dc63 feat: Make api_listener align with gateway and remove unused APIs. 2022-04-19 10:42:08 +08:00
Shawn 8e6b98af68 refactor: change confs for dashboard listeners from array to map
Don't use arrays in the config path to make it easier to change
configs via environments varibles.
2022-04-19 00:46:21 +08:00
Zhongwen Deng 929d043677 chore: fix elvis warning atom_naming_convention. 2022-04-18 22:09:03 +08:00
Zhongwen Deng c37f01fd3e fix: responses/error_code support ?DESC/x. 2022-04-18 21:00:01 +08:00
Zhongwen Deng ce88b2d899 fix: method desc support ?DESC/1/2. 2022-04-18 19:59:08 +08:00
Zhongwen Deng df3addb217 chore: Don't display primary example, we should show default if no example. 2022-04-18 11:02:39 +08:00
Xinyu Liu 21fe7f01ee
Merge pull request #7624 from DDDHuang/fix_api_params
Fix api params
2022-04-18 09:33:22 +08:00
DDDHuang dbadf50cee fix: monitor rate default 0 2022-04-16 16:37:36 +08:00
DDDHuang 402d3d97ae fix: dashboard swagger SUITE 2022-04-16 16:37:10 +08:00
DDDHuang a1ef677e33 fix: remove duplicate references 2022-04-16 16:37:10 +08:00
DDDHuang 1121c6a47e fix: code format3 2022-04-16 16:37:10 +08:00
DDDHuang 82ce6ae9f9 fix: bad integer, bad qos; TODO: gateway api * 2 2022-04-16 16:37:10 +08:00
DDDHuang e22d01d25f fix: page & limit & pool_size pos_integer; some bad spelling 2022-04-16 16:37:10 +08:00
Zhongwen Deng f98cb972e2 fix: dashboard ct failed 2022-04-15 14:37:51 +08:00
Zhongwen Deng 164754b182 test: dashboard ct failed with lack i18n_lang 2022-04-15 12:04:01 +08:00
Zhongwen Deng 700c2cfb39 feat: move *i18n.conf from etc to i18n dir 2022-04-15 10:43:37 +08:00
Zhongwen Deng 630cc8ee34 feat: support i18n with desc struct. 2022-04-15 08:42:13 +08:00
DDDHuang bf827cffa8 fix: authn bad examples 2022-04-13 16:16:13 +08:00
DDDHuang 9ef1795985 fix: add bad api test 2022-04-13 16:16:13 +08:00
DDDHuang 322bdffea9 fix: bad api path 404 response 2022-04-13 16:16:13 +08:00
DDDHuang b8e2c76382 fix: remove routes 2022-04-13 16:16:12 +08:00
Dmitrii 20f66664d7
Merge pull request #7478 from ieQu1/doc-schema-7
docs(schema): Add descriptions of fields and records
2022-04-05 14:21:07 +02:00
ieQu1 99b3f2f83e docs(schema): Document missing records and fields 2022-04-04 23:58:43 +02:00
Ilya Averyanov f4e4331556 chore(emqx_mangement): improve emqx_mgmt_api_nodes coverage 2022-04-04 23:39:53 +03:00
Thales Macedo Garitezi f425665449
fix(test): fix flaky test 2022-04-01 09:27:53 -03:00
Ilya Averyanov 12f6b8fab0 chore(emqx_modules): improve emqx_delayed_api coverage 2022-03-31 18:44:29 +03:00
Ilya Averyanov 0728b1e3f4 chore(emqx_modules): add emqx_topic_metrics_api tests 2022-03-30 21:18:27 +03:00
Zhongwen Deng 86f455fd3a fix: cluster conf must be readonly; add dashboard listener update hook 2022-03-25 18:43:15 +08:00
Zhongwen Deng 8d46332b30 chore: upgrade hocon to 0.26.4 to limit HOCON_MAP's key format 2022-03-25 15:00:51 +08:00
Zhongwen Deng 55f805bac0 fix: dashboard_monitor crash 2022-03-25 14:18:56 +08:00
zhongwencool f1b511023d
Merge pull request #7400 from DDDHuang/fix_examples_spec
fix: api examples spec error
2022-03-25 11:03:27 +08:00
Dmitrii f4125fbe0d
Merge pull request #7386 from ieQu1/doc-schema-3
docs(schema): Add descriptions to the schema
2022-03-24 14:05:38 +01:00
Dmitrii fa8ab06368
docs: Apply remark
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-03-24 11:39:35 +01:00
Dmitrii 1c65176362
docs: Apply remark
Co-authored-by: Thales Macedo Garitezi <thalesmg@gmail.com>
2022-03-24 11:39:11 +01:00
DDDHuang 08de17e631 fix: api examples spec error 2022-03-24 18:01:47 +08:00
DDDHuang 9037b807ae fix: add api auth failed code def & fix bad spelling 2022-03-24 12:12:19 +08:00
ieQu1 077ef073e5 docs(schema): Add descriptions to the schema 2022-03-23 19:05:25 +01:00
ieQu1 8967e13eee docs(schema): Move descriptions from emqx.conf.all 2022-03-23 13:52:54 +01:00
ieQu1 c6b0e8806f docs(schema): Add descriptions to the schema 2022-03-22 19:09:20 +01:00
Zhongwen Deng f81eb8f62f fix: remove TODO from hot-config-schema.json. 2022-03-21 17:56:22 +08:00
DDDHuang e517b41a4d fix(api): desc & remove useless api 2022-03-21 15:03:37 +08:00
DDDHuang 010dbbdb26 fix: bad code style 2022-03-21 14:12:19 +08:00
DDDHuang 66c6ea4c23 fix: dashboard swagger desc & description check 2022-03-21 14:12:19 +08:00
DDDHuang 4d4348759d fix: generate connector & exhook & retainer api response code 2022-03-21 14:12:19 +08:00
DDDHuang 60f107f91f fix: generate dashboard api response code 2022-03-21 14:12:19 +08:00
DDDHuang 74e6fa5a94 fix: generate bridge api response code
fix: generate connector api response code SUITE

fix: generate exhook api response code
2022-03-21 14:12:19 +08:00
firest beba7c9692 fix(limiter): improve code style and description 2022-03-18 16:00:42 +08:00
firest d28b34f0d1 fix(limiter): improve test case and fix some bugs 2022-03-18 16:00:42 +08:00
lafirest e7dec7835f feat(limiter): change zone to group and simplify config 2022-03-18 16:00:42 +08:00
DDDHuang a6b7f51d96 fix: dashboard monitor bad key spell 2022-03-14 17:57:56 +08:00
DDDHuang 03ca53d9b3 fix: monitor api query string param latest: legal & default value infinity 2022-03-10 16:40:40 +08:00
DDDHuang f22f61ac66 fix: users api, create illegal char username 2022-03-10 09:58:42 +08:00
Zhongwen Deng 7942de53a0 chore: fix elvis warning 2022-03-09 16:07:01 +08:00
Zhongwen Deng 414d29c413 chore: add label field for schema.json. 2022-03-09 14:40:14 +08:00
DDDHuang 103df6f06b fix: dashboard monitor bpapi 2022-02-25 18:38:10 +08:00
DDDHuang 00b83121a4 fix(test): add api test SUITE & bug fix 2022-02-25 17:36:07 +08:00
DDDHuang c21bc9d329 feat: dashboard monitor granularity adapter 2022-02-25 17:36:07 +08:00
DDDHuang a88e8b0c9e fix(doc): remove annotation 2022-02-25 17:36:07 +08:00
DDDHuang 8c1c87a8d6 fix(test): add monitor SUITE, TODO: API Test SUITE 2022-02-25 17:36:07 +08:00
DDDHuang fedfa6c653 feat: monitor api, TODO: test suite 2022-02-25 17:36:07 +08:00
DDDHuang 21b9943df9 feat: new monitor TODO: API 2022-02-25 17:36:07 +08:00
DDDHuang f4a669b3bc fix(doc): reflactor monitor 2022-02-25 17:36:07 +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 334d315838 feat: gen hot conf schema.json. 2022-02-24 15:46:51 +08:00
Zhongwen Deng 574bbafc9b fix(schema): Ensure enum is atom or int. 2022-02-24 15:36:04 +08:00
DDDHuang 90ee450a84 feat: support http error code & error code api 2022-02-22 17:14:35 +08:00
JimMoen e816e3e4a3
Merge pull request #7075 from JimMoen/refactor-authz-sources-api
refactor: authz_api_sources swagger spec
2022-02-22 01:24:42 +08:00
Zhongwen Deng 9f9bf059b9 fix(schema): remove unuse to_bin function; simplify body schema. 2022-02-21 23:02:49 +08:00
k32 115c3f2d29 chore: Fix URLs 2022-02-21 10:13:09 +01:00
Zaiming (Stone) Shi 1be3eb1446 chore: rename EMQX Broker to just EMQX 2022-02-19 12:51:34 +01:00
Zaiming (Stone) Shi 64db085163 chore: EMQ X -> EMQX in source code 2022-02-16 22:08:12 +01:00
Zaiming (Stone) Shi 0528262705 chore(app.src): EMQ X -> EMQX in .app.src files 2022-02-16 17:51:45 +01:00
Zaiming (Stone) Shi b3d9605722 chore(conf): EMQ X -> EMQX in conf files 2022-02-16 17:50:41 +01:00
zhongwencool 310a97305a
Merge pull request #6997 from zhongwencool/epoch-rfc3339-convert
feat(schema): schema support epoch_second, epoch_millisecond type.
2022-02-16 16:51:38 +08:00
Zaiming (Stone) Shi 667d66eb1e docs(README): EMQ X -> EMQX 2022-02-15 16:19:26 +01:00
JimMoen 2a1fba97da test(auth): resource use connector provided default port 2022-02-15 10:41:26 +08:00
JimMoen ab7c2b72e3 refactor(connector): db connector provide default port 2022-02-15 00:51:48 +08:00
zhongwencool 498434826a feat(schema): schema support epoch_second, epoch_millisecond type. 2022-02-14 11:35:32 +08:00
zhongwencool 47b1dde7fd
Merge pull request #6949 from zhongwencool/add-qos-type
feat(schema): support qos type.
2022-02-09 16:13:11 +08:00
zhongwencool 36cf00108c feat(schema): support qos type. 2022-02-09 15:16:43 +08:00
Chris d0b0b05aa4 fix: decouple suite tests 2022-02-08 14:53:01 +01:00
zhongwencool 5f2618912f chore(format): format port by ts 2022-02-08 11:03:54 +08:00
zhongwencool b50ceac9bb chore(listener): change the listener binding format 0.0.0.0:port to :port. 2022-02-08 10:28:10 +08:00
zhongwencool 6a701e098f feat(shell): add restricted shell and user_default 2022-02-07 15:33:59 +08:00
zhongwencool 8041524d20 chore(dashboard): warning wehn stop dashboard listener not found. 2022-01-29 10:36:53 +08:00
zhongwencool ec5d1b1463 feat(dashboard): support bind specific ip(port or ip:port). 2022-01-28 16:52:03 +08: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
JimMoen b950042cbf refactor(api): prometheus swagger spec 2022-01-21 14:09:42 +08:00
JimMoen d8f49f8a5f
Merge pull request #6732 from JimMoen/telemetry-api-refactor
refactor(api): telemetry api swagger spec
2022-01-14 09:36:54 +08:00
k32 6207e93e93 refactor(dashboard): Decorate remote procedure calls 2022-01-13 13:14:59 +01:00
JimMoen 82e3565344 chore: major mode file variable for Emacs 2022-01-13 15:53:47 +08:00
JianBo He af2868e598 chore(dashboard): change root name emqx_dashboard > dashboard 2022-01-12 13:51:34 +08:00
zhongwencool 3bdfa183f3
Merge pull request #6666 from JimMoen/merge-5.0-beta.3-to-master
Merge 5.0 beta.3 to master
2022-01-06 18:20:30 +08:00
JimMoen 9a115b99a4 Merge remote-tracking branch 'emqx/release-5.0-beta.3' into merge-5.0-beta.3-to-master 2022-01-06 14:08:45 +08:00
Zaiming (Stone) Shi 63167cea70 chore: update copyright 2022-01-05 20:55:00 +01:00
zhongwencool 303707d69d fix: make sure authz headers is binary. 2022-01-05 15:11:16 +08:00
Zaiming (Stone) Shi 65b1ce80d9 chore: fix deps discrepancy 2022-01-03 11:47:43 +01:00
Zaiming (Stone) Shi 2898fa76e1 Merge remote-tracking branch 'origin/release-5.0-beta.3' into merge-5.0-beta.3-to-master 2022-01-03 11:39:06 +01:00
zhongwencool d16362af96
Merge pull request #6547 from zhongwencool/trace-formatter
feat(trace): replace logger_formatter by emqx_trace_formatter
2021-12-30 23:40:59 +08:00
JimMoen ff3707fbdc
Merge pull request #6565 from JimMoen/fix-redis-servers-field
fix(connector): redis cluster `servers` field
2021-12-30 19:33:12 +08:00
DDDHuang c2e36b041b fix: dashboard return type 2021-12-30 18:53:09 +08:00
JimMoen 39c29b2396 fix(connector): redis cluster `servers` field 2021-12-30 15:37:53 +08:00
DDDHuang db9d269034 fix(dashboard): batter auth failed response message 2021-12-30 10:29:20 +08:00
zhongwencool 43141dffee
Merge branch 'release-5.0-beta.3' into trace-formatter 2021-12-29 22:37:59 +08:00
DDDHuang 34dfc327f3 fix(api): auth failed with basic type check 2021-12-29 19:34:13 +08:00
zhongwencool 04313dc044 fix(trace): download trace api not working 2021-12-29 19:03:54 +08:00
zhongwencool 0712fc1e75 chore(schema): remove emqx_schema:unicode_binary/0 2021-12-28 23:50:12 +08:00
Thales Macedo Garitezi 0020cf592f
Merge remote-tracking branch 'origin/master' into build-with-mix-mkII 2021-12-28 11:28:40 -03: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
JimMoen 6f28e103d0 fix(dashobard): statistical diagram timestamp use UTC time 2021-12-20 19:21:19 +08:00
JimMoen 3a3226fc78 fix(dashboard): enable dashboard by default 2021-12-17 11:20:23 +08:00
zhongwencool e4a21fd90d fix: merge from master 2021-12-15 16:24:25 +08:00
zhongwencool f95ef04cf7
Merge branch 'master' into api-key-secret 2021-12-15 16:01:09 +08:00
Thales Macedo Garitezi 95de2d3467
fix(monitor): fix return value on badrpc
If the rpc in `emqx_dashboard_monitor_api:get_collect/1` fails, an
empty map is return.  But the current function expects a 4-tuple,
which results in a 500 error returned on such occasions.

```
curl -su admin:public localhost:8888/api/v5/monitor/current | jq .
{
  "code": "INTERNAL_ERROR",
  "message": "error, function_clause, [{emqx_dashboard_monitor_api,format_current_metrics,[[#{},{0,0,0,0},{0,0,0,0}],{0,0,0,0}],[{file,\"emqx_dashboard_monitor_api.erl\"},{line,179}]},{emqx_dashboard_monitor_api,current_counters,2,[{file,\"emqx_dashboard_monitor_api.erl\"},{line,167}]},{minirest_handler,apply_callback,3,[{file,\"minirest_handler.erl\"},{line,112}]},{minirest_handler,init,2,[{file,\"minirest_handler.erl\"},{line,38}]},{cowboy_handler,execute,2,[{file,\"cowboy_handler.erl\"},{line,41}]},{cowboy_stream_h,execute,3,[{file,\"cowboy_stream_h.erl\"},{line,318}]},{cowboy_stream_h,request_process,3,[{file,\"cowboy_stream_h.erl\"},{line,302}]},{proc_lib,init_p_do_apply,3,[{file,\"proc_lib.erl\"},{line,226}]}]"
}
```
2021-12-14 17:56:32 -03:00
Thales Macedo Garitezi 0300403fc0
fix(admin): inconsistent return type on empty inputs
If an empty username or password are given during the initialization
of `emqx_dashboard_admin`, it'll return just the atom `ok`, which
breaks the expected `{ok, _}` in `emqx_dashboard_app:start/2`.

```
{'EXIT',
 {{failed_to_start_app,emqx_dashboard,
   {emqx_dashboard,
    {bad_return,
     {{emqx_dashboard_app,start,[normal,[]]},
      {'EXIT',
       {{badmatch,ok},
        [{emqx_dashboard_app,start,2,
          [{file,
            "/home/thales/dev/emqx/emqx/apps/emqx_dashboard/src/emqx_dashboard_app.erl"},
           {line,32}]},
         {application_master,start_it_old,4,
          [{file,"application_master.erl"},{line,293}]}]}}}}}}}}
```
2021-12-14 17:51:50 -03: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 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 5525cb3262 refactor: only apply environment variables on base config 2021-12-06 08:00:42 +01:00
zhongwencool 1f6e2e7397 chore: add test for sub fields 2021-12-01 12:01:44 +08:00
Zaiming (Stone) Shi d2fa0a71f4 refactor: give psk auth a better namespace 2021-12-01 00:33:20 +01:00
zhongwencool f697028b70
Fix ping not return pong (#6285)
* fix: ./bin/emqx ping return pong

* chore: waiting longer for logger flush log to disk

* fix: change swagger page's limit from 100 to 1000

* chore: type wrong

* fix: sync log to disk by logger_disk_log_h:filesync
2021-11-26 17:02:45 +08:00
zhouzb 63f1d88ed3 chore(dashboard): disable by default 2021-11-22 22:23:06 +08:00
Shawn f0c61068e8 fix(authn): test cases issues 2021-11-22 17:35:33 +08:00
Shawn c66c6b53b2 feat(connector): add APIs for connector 2021-11-22 17:35:33 +08:00
Shawn bcf5f499da feat(connector): add APIs for connector 2021-11-22 17:35:33 +08:00
Zaiming Shi 6ca6d60858 fix(dashboard): change hash from sha3_256 to sha256
old version os has no support for it
2021-11-20 21:21:11 +01: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 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 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
DDDHuang 1476accd63
fix: monitor bad mnesia write & rpc call (#6060) 2021-11-15 15:28:19 +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
zhongwencool eea789451b
feat: sha3_256 dashboard account's password (#6084) 2021-11-09 15:41:28 +08:00
Ilya Averyanov 796553b5ea fix(authn api): eliminate possible atom leak 2021-11-01 16:51:48 +03:00