Commit Graph

347 Commits

Author SHA1 Message Date
DDDHuang 0e3310f1cf fix: remove bindings params url decode (url decode by minirest) 2022-02-28 11:13:23 +08:00
zhongwencool 13a0eff678
Merge pull request #7125 from zhongwencool/schema-json
feat: generate hot config's schema.json and remove nullable option.
2022-02-25 17:18:20 +08:00
firest 2053d21bd5 fix(emqx_delayed): fix config update not working 2022-02-25 11:24:30 +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
zhongwencool b7f808db9e
Merge pull request #7027 from DDDHuang/error_code
feat: support http error code & error code api
2022-02-23 16:12:20 +08:00
DDDHuang 90ee450a84 feat: support http error code & error code api 2022-02-22 17:14:35 +08:00
JianBo He 20e3b721a8 chore(gw): ignore auto-subscribe msg 2022-02-22 15:43:04 +08: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
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
zhongwencool 498434826a feat(schema): schema support epoch_second, epoch_millisecond type. 2022-02-14 11:35:32 +08:00
JianBo He 94609e31e4 feat(event): add `connected_at` into client_disconnected event
port from v4.3: https://github.com/emqx/emqx/pull/6822
2022-02-11 11:01:59 +08:00
Shawn 81edbd232d fix: reformat some code style 2022-02-09 18:57:36 +08:00
Shawn 8207090419 fix: format the code to remove extra spaces 2022-02-09 18:46:49 +08:00
k32 052bd9081d docs(schema): Fix typos in the schema files 2022-01-27 22:39:19 +01:00
k32 8378f52d06
Merge pull request #6882 from kianmeng/fix-typos
(docs): fix typos
2022-01-27 13:25:44 +01:00
Kian-Meng Ang fc92e4c8bf docs: fix typos 2022-01-27 12:29:38 +01:00
Zaiming (Stone) Shi 9946f2ecf4 refactor: remove dollar sign from config fields 2022-01-26 22:19:01 +01:00
Zaiming (Stone) Shi 2105d1f22b test: call ct helpers to load config 2022-01-25 11:50:18 +01:00
JimMoen f30c16e47c refactor(schema): description use binary 2022-01-21 17:52:57 +08:00
JimMoen ab94b49762 refactor(api): event_message swagger spec 2022-01-21 17:45:53 +08:00
JimMoen 1a0862913e refactor(api): swagger api tag `mqtt` 2022-01-21 17:26:54 +08:00
JimMoen b950042cbf refactor(api): prometheus swagger spec 2022-01-21 14:09:42 +08:00
JimMoen 31edd49f76 fix(topic_metrics): `POST` `PUT` need response 2022-01-20 10:15:06 +08:00
JimMoen f5cfefc0a5 refactor(api): topic_metrics api swagger spec 2022-01-20 10:15:06 +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
JimMoen 2939803215 refactor(api): telemetry api swagger spec 2022-01-13 15:53:47 +08:00
JimMoen 82e3565344 chore: major mode file variable for Emacs 2022-01-13 15:53:47 +08:00
k32 8570df075c refactor(emqx_telemetry): Decorate remote procedure calls 2022-01-13 00:35:49 +01:00
k32 e513583e70 refactor(emqx_topic_metrics): Decorate remote procedure calls 2022-01-13 00:11:45 +01:00
k32 a9673d7d2d fix(emqx_telemetry): Decorate RPC calls 2022-01-10 18:43:44 +01: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
JianBo He 2c67ec44f4 fix(topic-metrics): fix bad map for calculating metrics 2022-01-04 11:11:41 +08: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
DDDHuang 54ea7a5871
Merge pull request #6582 from DDDHuang/config_bugfix
fix(config):  update configs in cluster
2021-12-31 16:03:41 +08:00
DDDHuang d27aecc985
Merge pull request #6590 from DDDHuang/delayed_b64
fix(delayed): base64 encode twice
2021-12-31 16:02:32 +08:00
DDDHuang d18a2ab57c fix(delayed): base64 encode twice 2021-12-31 14:07:34 +08:00
JianBo He 6e6643f974 fix: fix dialyzer warnings 2021-12-31 12:51:35 +08:00
JianBo He ebbb473d7a refactor(topic-metrics): cluster supported 2021-12-31 12:50:23 +08:00
DDDHuang a630044688 fix: update result by row_config 2021-12-31 12:46:29 +08:00
DDDHuang f0330d9334 fix(event_message): update config in cluster 2021-12-31 12:46:29 +08:00
DDDHuang 23cf74d829 fix(delayed): update config in cluster 2021-12-31 12:46:29 +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
Shawn 3a39db4f97
Merge pull request #6550 from terry-xiaoyu/fix_utf8_topic_rewrite
Fix utf8 topic rewrite
2021-12-28 17:08:23 +08:00
lafirest c68499e39a fix(api): fix the payload in the result of the api of emqx_retainer & emqx_dealy 2021-12-28 10:25:53 +08:00
Shawn e9c2b5d1cf fix(rewrite): don't check and translate body for topic rewrite APIs 2021-12-27 16:17:59 +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
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
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 99a5f14301 fix(telemetry): use required fields, rolling distro use PRETTY_NAME 2021-12-21 10:44:54 +08:00
Spycsh ca2660d609 chore: refactor ?SLOG 2021-12-18 00:17:45 +01:00
Zaiming (Stone) Shi ed073f9966 test: fix emqx_rewrite_SUITE with new path info in schema check failure 2021-12-06 08:00:42 +01:00
zhongwencool 858891dbf5 fix: rewrite ct badmatch 2021-12-03 09:54:44 +08:00
zhongwencool e7a7d64004 feat(conf): skip/fast_forward tnx_id via cluster_call cli 2021-12-02 09:30:27 +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
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 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
Ilya Averyanov 800b4b32c7
refactor(authn api): use config schemas for request validations (#5999) 2021-11-01 17:52:03 +08:00
JimMoen 4a07d5e1f3 refactor(paginate): use exported fun call `{M,F}` 2021-10-26 16:16:37 +08:00
firest d0950b9b9d fix(emqx_telemetry): add default value to get_value 2021-10-23 00:24:07 +08:00
zhongwencool 90795a6f42
Rewrite http api with hocon schema (#5980)
* feat: rewrite http api with hocon

* fix: crash when default_username is empty

* chore: udpate rewrite api with emqx_conf's cluster_rpc

* fix: spec wrong
2021-10-22 17:01:29 +08:00
Ilya Averyanov e37ecc10a6 style(behaviour attrs): unify behaviour declarations 2021-10-21 15:10:59 +03: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 9fdd5e6a7e
fix(emqx_machine): Fix start/stop callbacks (#5969)
* fix(emqx_machine): Fix start/stop callbacks

* chore(ekka): Bump version to 0.11.1

* fix(router): Wait for the tables

* fix(emqx_cluster_rpc): Stop cluster RPC when joining a cluster

* fix(emqx_app): Fix a deadlock when joining the cluster

* fix(emqx_telemetry): Wait for mnesia tables

* test(ct_helper): Start ekka before emqx
2021-10-21 14:49:21 +08:00
k32 b3a8753219 fix(mria): Replace mnesia calls with mria 2021-10-19 12:24:35 +02:00
k32 326923850c chore(mria): Get rid of copy_mnesia callback 2021-10-18 22:04:05 +02:00
k32 9965d6e028 chore(mria): ekka_mnesia:create_table -> mria:create_table 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
k32 b515a45a4f chore(mria): Rename module: ekka_mnesia -> mria 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
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
DDDHuang c90342da4a fix: topic metrics deny wildcard 2021-10-12 09:39:14 +08:00
JimMoen 1509907744 fix(mgmt): delayed messages payload encoded in basd64 twice. 2021-09-28 12:26:13 +08:00
zhongwencool c41b4b0c2f fix(delayed_api): delete msg crash return 500 2021-09-27 09:54:41 +08:00
zhongwencool cae79a0584 feat(swagger): move public page/limit/error_code to emqx_dashboard_swagger module 2021-09-24 21:51:53 +08:00
zhongwencool 8c441673c2 feat(delayed_api): support hocon schema 2021-09-24 15:22:05 +08:00
JimMoen 8d11a61999 fix(delayed): delete with worong msgid return 200. 2021-09-23 16:23:30 +08:00
JimMoen 5baf427b75 fix(delayed): default username when get delayed message form `/publish` api. 2021-09-22 18:45:18 +08:00
JimMoen da923c7df0 fix(delayed): `max-delayed-messages` increase 1 than setting. 2021-09-22 18:45:18 +08:00
DDDHuang ab2cdfeab1
fix: delayed message format & message id parameter name (#5762) 2021-09-22 10:04:00 +08:00
JimMoen deac54c847 chore(for editor): Add comments for Emacs major mode. 2021-09-16 15:43:30 +08:00
DDDHuang 60e815fb9a fix: topic rewrite action type add all 2021-09-16 09:13:34 +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
DDDHuang f5bfa4cd43
fix: deny creating metrics for empty topics (#5650)
* fix: deny null topic create metrics
2021-09-03 18:32:23 +08:00
Zaiming Shi ec13463f4a refactor(schema): prepare for hocon schema doc generation 2021-09-03 11:02:31 +02:00
DDDHuang 4c468b383a
fix: delayed math string (#5609)
* fix: delayed ms
2021-08-31 19:04:38 +08:00
DDDHuang 100e550491
fix: topic metrics api path & params (#5599) 2021-08-30 14:21:15 +08:00
Zaiming Shi 5165fd6b30 refactor(schema): implement new hocon_schema callbacks 2021-08-30 09:56:03 +08:00
Turtle 329cac6623 fix(rewrite): del topic rewrite conf 2021-08-27 20:38:34 +08:00
Turtle 8f058a7680 fix(rewrite): fix get topic rewrite list fail 2021-08-27 20:38:34 +08:00
DDDHuang 9d9eb2095b
fix: delayed message api page param & doc (#5587) 2021-08-27 17:13:16 +08:00
Turtle 856d394860 feat(topic_metrics): update topic_metrics conf to array 2021-08-27 13:58:21 +08:00
Turtle 307eaa7f1e feat(rewrite): update rewrite conf to array 2021-08-27 13:58:21 +08:00
zhongwencool 468102f462 chore: replace recon by obsserver_cli 1.7.0 2021-08-27 13:55:49 +08:00
zhongwencool f4e3eeb2b2 chore(recon): rename to emqx_ctl observer status 2021-08-27 13:55:49 +08:00
zhongwencool 6957445554 chore(recon): add observer_cli to emqx_ctl 2021-08-27 13:55:49 +08:00
DDDHuang e92255114f fix: update delayed config 2021-08-26 18:04:46 +08:00
DDDHuang bcd15e9388
fix: delayed message api doc (#5569)
* fix: delayed message api doc & add delayed message internal & remaning params
2021-08-26 15:11:41 +08:00
DDDHuang 6d7d94c452 fix: topic rewrite api method 2021-08-26 10:08:01 +08:00
DDDHuang 4be58ae759 fix: event message api method 2021-08-25 17:38:08 +08:00
Turtle 675d23111c chore(swagger-schema): Delete the schema that is not reused 2021-08-24 23:01:51 +08:00
DDDHuang bf67fa1be1 fix: generate topic metrics api & delayed message api path 2021-08-24 22:47:27 +08:00
Turtle e0c05242a7 refactor(minirest-callback): refactor minirest callback function 2021-08-24 18:19:21 +08:00
Turtle 0cb5c3e6ec refactor(topic-metrics): refactor topic_metrics api 2021-08-24 11:15:25 +08:00
Turtle 47378e0e96 refactor(schema-utils): refactor mgmt swagger schema utils 2021-08-24 10:53:06 +08:00
DDDHuang 8125ec7d08
feat: topic metrics api (#5520) 2021-08-24 10:52:18 +08:00
k32 9c74fa42a5 chore(rlog): Use the new method of creating shards 2021-08-21 17:47:53 +02:00
Shawn f3efc89192
refactor(config): replace all ':' with '=' in the *.conf (#5531) 2021-08-19 19:57:42 +08:00
DDDHuang 11ea506af6
Merge branch 'master' into delayed_api 2021-08-19 17:24:16 +08:00
DDDHuang cc1b8eca6c fix: params & config generate; api base64 encode payload 2021-08-19 17:23:11 +08:00
DDDHuang 5520326ce3 feat: add delayed api 2021-08-19 10:48:12 +08:00
turtleDeng f01b77e4fe
refactor(event-message): refactor event_message
* refactor(event-message): refactor event_message configuration

* feat(event-message): add event_message REST API
2021-08-18 16:26:15 +08:00
Shawn e8e95d39ef
refactor(config): move emqx_config:get/get_raw to emqx:get_config/get_raw_config (#5517) 2021-08-18 14:52:57 +08:00
Shawn a1da519d55 fix(rewrite): use emqx:update_config/2 instead of emqx_config:update/2 2021-08-18 09:42:06 +08:00
DDDHuang 50ee840220
feat: add rewrite api (#5502) 2021-08-17 17:49:37 +08:00
Turtle 7fcd925eff feat(delayed): add delayed REST HTTP API 2021-08-17 09:21:19 +08:00
Zaiming Shi e6232665a3 refactor(emqx): ensure app shutdown and reboot order
make use of application dependency to ensure start order.
also the same dependency top-sorted for shutdown and reboot order
2021-08-04 08:40:03 +02:00
Zaiming Shi 5d59ac1f02 refactor(logging): delete log headers from all modules 2021-08-01 09:36:59 +02:00
tigercl 305142f991
Merge pull request #5361 from turtleDeng/plugins/module-attr
chore(plugins): delete emqx_plugins module attributes
2021-07-30 15:54:20 +08:00
Turtle 9e97de04c9 chore(plugins): delete emqx_plugins module attributes 2021-07-30 14:32:01 +08:00
Turtle d8eb8a36e0 test(modules/event_message): do not set fake config 2021-07-30 14:17:34 +08:00
Turtle 485f1293fc chore(event_message): rename event_topic to event_message 2021-07-30 12:10:55 +08:00
Turtle ebe31c79d4 feat(event-topic): Add more fields to disconnected event payload 2021-07-30 12:10:55 +08:00
Turtle d6c375ab5b feat(event-topic): fix check dialyzer 2021-07-30 12:10:55 +08:00
Turtle 459d2154c7 feat(event-topic): add more test cases 2021-07-30 12:10:55 +08:00
Turtle 3903575435 feat(event-topic): support publish broker event topic 2021-07-30 12:10:55 +08:00
Zaiming Shi 18fb18be89 test(modules/rewrite): do not set fake config
the hand-crafted fake raw config does not pass hocon schema check
this commit changes to use HOCON text as input for both test cases
2021-07-30 09:18:43 +08:00
Turtle 2fcb9124bf chore(modules): fix check dialyzer 2021-07-29 16:57:14 +08:00
Turtle 76e3dd1905 chore(modules): Get the status by conf 2021-07-29 16:57:14 +08:00
Turtle cdc8000493 chore(modules): presence/delayed/telemetry/rewrite/topic_metrics independent conf 2021-07-29 16:57:14 +08:00
Shawn 7837069a93 fix(modules): disable telemetry by default 2021-07-23 17:06:28 +08:00
Shawn 0704cbc986 refactor(config): change mqtt.session_expiry_interval to ms 2021-07-23 17:06:28 +08:00
Shawn 419036bd9a fix(test): remove emqx:get_env from lwm2m and telemetry 2021-07-23 10:56:20 +08:00
Turtle 709f6a535b feat(telemetry): telemetry API support swagger 2021-07-22 16:21:05 +08:00
DDDHuang c11a8c6db6 refactor: clients api; status api; adapter minirest v1
The serious influence:

authn:
    api
authz:
    api; api test suit
dashboard:
    all closed
lwm2m:
    api;
modules:
    api(api_topic_metrics, modules_api); test suit(emqx_modules_SUITE)
prometheus:
    api
retainer:
    api; api test suit
rule_engine:
    api: api test suit
telemetry:
    api
2021-07-09 18:09:07 +08:00
DDDHuang dc98cff27b
fix: mgmt conf & schema; prepare minirest (#5178) 2021-07-07 17:04:05 +08:00
Turtle 918a26e921 feat(conf): merge all conf to emqx.conf 2021-07-02 17:01:16 +08:00
DDDHuang 2c7fd0b547
chore: mgmt hoconf support (#5153) 2021-07-02 00:02:09 +08:00
turtleDeng c7e540f4f1
feat(modules): Update the configuration file to hocon (#5151) 2021-07-01 20:08:13 +08:00
k32 e8e956b074 chore(mod_delayed): Add RLOG shard 2021-06-28 21:35:10 +02:00
Rory Z c79e478c42 chore: delete internal acl code 2021-06-25 18:45:34 +08:00
Turtle 2d1008ceaf chore: move emqx_recon to emqx_modules plugin 2021-06-25 18:45:04 +08:00
zhanghongtong 8a368efb95 chore: move lib-ce to apps
Signed-off-by: zhanghongtong <rory-z@outlook.com>
2021-06-15 17:31:54 +08:00