Commit Graph

189 Commits

Author SHA1 Message Date
Zaiming (Stone) Shi
51cd83e70f refactor: delete dead code 2023-04-26 20:48:53 +02:00
Ilya Averyanov
ebb75b275e feat(ft): update app versions 2023-04-21 17:52:13 +03:00
Ilya Averyanov
0211bcf030 Merge branch 'master' into file-transfer
* master: (279 commits)
  chore: shorten ct/run.sh script
  chore: rename cassandra_impl to cassandra_connector
  chore: fix mix.exs checking
  refactor(cassandra): move cassandra bridge into its own app
  chore: apply review suggestions
  chore: update changes/ce/fix-10449.en.md
  test: add a test for authn {}
  chore: add changlog for authn_http validation
  fix: always check authn_http's header and ssl_option
  chore: apply suggestions from code review
  fix(emqx_bridge): validate Webhook bad URL and return 'BAD_REQUEST' if it's invalid
  fix(emqx_alarm): add safe call API to activate/deactivate alarms and use it in resource_manager
  perf(emqx_alarm): use dirty Mnesia operations to activate an alarm
  ci: simplify find-apps.sh for ee apps
  perf(emqx_resource): don't reactivate alarms on reoccurring errors
  ci: check if Elixir files are formatted in pre-commit hook
  fix(dynamo): fix field name errors
  chore: remove *_collector for prometheus api's example
  chore: make plugins config to low level
  chore: re-split dynamo i18n file
  ...
2023-04-21 17:37:17 +03:00
Stefan Strigler
9c11bfce80 refactor: rename emqx_misc to emqx_utils 2023-04-14 13:41:27 +02:00
Stefan Strigler
f8e9e54393 refactor: move emqx_json to emqx_utils_json 2023-04-14 13:31:27 +02:00
Ilya Averyanov
07ae50a54b fix(ft-s3): fix release settings 2023-04-07 17:25:23 +03:00
Ilya Averyanov
31b441a46e feat(s3): add S3 client application 2023-04-07 17:25:22 +03:00
Zhongwen Deng
0738444da9 fix: stop port apps when emqx_machine_terminator shutdown 2023-03-14 15:39:50 +08:00
Zaiming (Stone) Shi
fe27604010 Merge remote-tracking branch 'origin/release-50' into 0308-merge-release-50-back-to-master 2023-03-08 16:46:45 +01:00
Zaiming (Stone) Shi
4eb9a69df0 feat(bin/emqx): diagnose boot failure
Prior to this change, when EMQX daemon mode failed to start
it's not quite easy for users to understand what went wrong.
All the know is the node did not start in time
and then instructed to boot the node in 'console' mode wishing
for some logs.
However, the node might actuay be running, causing 'console' mode
to fail with a different reason.

With this change, after a filure of daemon mode boot,
we issue a diagnosis.
1. if node can not be found from ps -ef, instruct the user
   to find information in erlang.log.N
2. if the node is found running, but not responding to pings
   instruct the user to check if the node name is
   resolvable and reachable
3. if the node is responding to pings but emqx app is not
   running, then it's likely a bug. so the user is advised
   to report a github issue.
2023-03-02 14:46:09 +01:00
Zaiming (Stone) Shi
3458aee296
Merge branch 'master' into 0213-port-blackbox-cover-report-from-v4 2023-02-22 22:21:44 +01:00
ieQu1
794bedef9f fix(emqx_ctl): Start CLI before ekka 2023-02-17 09:50:50 +01:00
Zaiming (Stone) Shi
ba65cf48c3 feat: add new module emqx_cover.erl 2023-02-13 22:31:18 +01:00
Zhongwen Deng
f98786c91f fix: bad crash_dump_file default value in rpm 2023-01-17 20:47:54 +08:00
Zhongwen Deng
cf99089f84 chore: add some trace func to user_default 2023-01-17 20:33:01 +08: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
cac7e0c5f0 refactor: move version prefix string detection to a static fun
this is to make dialyzer happy
2022-12-30 14:19:03 +01:00
Zaiming (Stone) Shi
0412826dd5 refactor: change ce | ee to v | prefix for shell prompt
reason: 'ce' (Community Edition) is only for internal use,
when it comes to user/customer facing descriptions,
we should use Opensource edition and Enterprise edition.

Similary, for user/customer facing shell prompt,
use `v` for Opensource edition and `e` for Enterprise
2022-12-14 13:05:44 +01:00
Zaiming (Stone) Shi
1c2fc4b6c3 Merge remote-tracking branch 'origin/release-50' into 1206-chore-merge-ee50-to-release-50 2022-12-06 16:35:56 +01:00
Zhongwen Deng
59ac5320b1 chore: update emqx_conf/emqx_machine version 2022-11-25 07:33:08 +08:00
Zhongwen Deng
70b6397ada feat: support node.global_gc_interval=disabled 2022-11-24 20:35:41 +08:00
Zhongwen Deng
57cc880977 chore: change community to opensource 2022-09-05 14:27:47 +08:00
Zhongwen Deng
d447659365 feat: add edition info to /nodes api 2022-09-05 11:29:49 +08:00
Zhongwen Deng
cd91b4b582 fix: dialyzer never match warning 2022-06-07 10:47:40 +08:00
Zhongwen Deng
eb2a4df4af feat: change node.applications default to [] 2022-06-07 10:19:26 +08:00
ieQu1
27c922dbf2 fix(emqx_machine): Start essential applications as permanent 2022-05-24 12:42:30 +02:00
Georgy Sychev
0522361604 feat(shared_sub): Per-group shared subscription and local strategy 2022-05-13 14:23:06 +02:00
zhongwencool
cee4607472
Merge pull request #7738 from zhongwencool/obfuscate_sensitive_config
feat: obfuscate sensitive values default_password
2022-04-24 14:05:23 +08:00
Zhongwen Deng
26f82fe2af chore: don't display arg(too long) 2022-04-24 11:15:53 +08:00
Zaiming (Stone) Shi
b445182335 style: reformat emqx_machine, emqx_plugin_libs, and emqx_statsd 2022-04-23 09:55:50 +02:00
Thales Macedo Garitezi
5748b9b492
feat: allow customizing per-shard transaction log transport 2022-03-30 11:11:30 -03:00
Thales Macedo Garitezi
2a48f143bd
style: please elvis checks 2022-03-30 11:11:30 -03: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
Shawn
8207090419 fix: format the code to remove extra spaces 2022-02-09 18:46:49 +08:00
k32
5a1b18ae86 fix(system_monitor): Fix conditional start 2022-02-08 12:46:27 +01:00
zhongwencool
3b4eade1ad
Merge pull request #6900 from zhongwencool/restricted-shell
feat(shell): add restricted shell and user_default
2022-02-08 17:25:28 +08:00
Ilya Averyanov
17599432d1 feat(license): add license application 2022-02-07 19:05:47 +03:00
zhongwencool
f24c05b1bd chore(shell): make restricted_shell prompt more friendly. 2022-02-07 15:33:59 +08:00
zhongwencool
b189d594c3 chore: fix dialyzer warning. 2022-02-07 15:33:59 +08:00
zhongwencool
3efa583830 feat(shell): add emqx version to prompt. 2022-02-07 15:33:59 +08:00
zhongwencool
6a701e098f feat(shell): add restricted shell and user_default 2022-02-07 15:33:59 +08:00
k32
f699de9773 feat(system_monitor): Bump version to 3.0.0 2022-02-07 02:22:11 +01: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
Zaiming (Stone) Shi
2fbe2dd0c3 fix(boot): ensure emqx_conf is the first app to boot
The first one to boot after emqx_machine
2022-01-03 12:53:49 +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
Shawn
626a4c4713 fix(machine): some apps not restarted after joining into the cluster 2021-12-31 00:03:03 +08:00
Thales Macedo Garitezi
11c169501e
chore(mix): fix app dependencies and reboot apps (emqx_conf)
While declaring `emqx_conf` as an application dependency of
`emqx_resource` worked for releases, it messed up the startup
relationship during tests.  Since only removing `emqx_conf` from the
`applications` key in `emqx_resource` breaks the list of apps that
need to be rebooted on config changes (since `emqx_conf` is not on any
apps dependencies list, it was not being added to the final
topologically sorted list), we now always add it as a vertex to ensure
its presence there.  This (apparently) makes the rebar3 release, the
mix release and test runs behave normally.
2021-12-23 13:48:28 -03:00
Zaiming (Stone) Shi
b9a3b558ee refactor(plugins): refactor plugins configuration interface 2021-12-16 13:59:20 +01:00
k32
9fbc247e29 feat(system_monitor): Add system_monitor application 2021-12-08 16:34:10 +01: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
Zaiming (Stone) Shi
ed069cfecc
Merge pull request #5963 from zmstone/refactor-authn-schema
refactor(authn): check authenticator config with provider module
2021-10-21 08:07:48 +02:00
Zaiming Shi
ce5b456872 refactor(authn): make schema doc generation work 2021-10-20 17:42:06 +02: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
Zaiming Shi
9c414096c7 test(authz): test HTTP apis for built-in-database 2021-10-20 09:17:21 +08:00
Zaiming Shi
0fcb3a1e93 docs: add more schema docs for authz 2021-10-20 09:17:21 +08:00
k32
37a1c45af0 fix(dialyzer): Fix problems found by dialyzer 2021-10-18 22:04:05 +02:00
k32
07ea6e5689 fix(mria): Fix startup sequence 2021-10-18 22:04:05 +02:00
k32
73a4816d9c fix(mria): Hook up mria to emqx_machine 2021-10-18 22:04:05 +02:00
k32
7086135ec8 chore(mria): Remove the obsolete annotiation 2021-10-18 22:04:05 +02:00
k32
d14b8e7da9 chore(mria): ekka_rlog -> mria_rlog 2021-10-18 22:04:05 +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
ae2056da1b chore(mria): Fix clear_table and ro_transaction calls 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
lafirest
8a2c5e2422 feat(rate_limiter): implement hierarchical token buckets 2021-10-14 10:20:05 +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
zhongwencool
af36e1a791 fix: emqx_cluster_rpc.hrl to emqx_machine.hrl 2021-09-30 16:04:30 +08:00
zhongwencool
93c210887b chore: don't use emqx_machine.hrl in emqx 2021-09-30 16:04:30 +08:00
zhongwencool
44a6f04a45 chore: reorganize shards position 2021-09-30 16:04:30 +08:00
zhongwencool
be123f613d
Fix: apps should boots after emqx_machine_sup's children spawn. (#5851)
* fix(cluster_call): apps should start after cluster_call init

* fix: undef function

* chore: reformat code

* fix: ekka must start before emqx
2021-09-30 13:56:18 +08:00
tigercl
55ec5bab9e
Merge pull request #5773 from tigercl/feat/psk-file
feat(psk): support psk
2021-09-29 13:37:49 +08:00
zhouzb
74c9a38e9f fix(psk): fix bugs and add test case 2021-09-27 21:42:32 +08:00
Spycsh
c3b980fde9 chore: fix Windows compilation process 2021-09-27 21:24:10 +08:00
zhongwencool
5280f83651
Merge pull request #5784 from zhongwencool/delayed-api-schema
feat(delayed_api): support hocon schema
2021-09-27 13:45:17 +08:00
Shawn
bd081913b5 refactor(rules): remove emqx_rule_actions 2021-09-26 23:00:08 +08:00
zhongwencool
8c441673c2 feat(delayed_api): support hocon schema 2021-09-24 15:22:05 +08:00
Zaiming Shi
b1cf5bc1d4 fix(schema): do not validate etc_dir 2021-09-23 16:56:02 +02:00
Zaiming Shi
97e1cf65b7 refactor(schema): make a client ssl options schema
client and server ssl options share some common fields
this commit make an abstraction for the common fields
then export server_ssl_options_schema/2 and client_ssl_options_schema/1
for other schema modules to call
2021-09-23 16:56:02 +02:00
Zaiming Shi
fbd5701989 fix(emqx_schema): make ssl config schema right 2021-09-23 16:56:02 +02:00
zhongwencool
6ed0bdc665 fix(cluster-call): MinDelay clumiscalculation, don't sleep in first check. 2021-09-17 15:23:25 +08:00
JimMoen
deac54c847 chore(for editor): Add comments for Emacs major mode. 2021-09-16 15:43:30 +08:00
zhongwencool
86eb6605f1
Merge pull request #5623 from zhongwencool/cluster-call-api
feat(cluster-call): support confirm success after all mfa apply ok
2021-09-13 16:03:47 +08:00
Spycsh
f971dfd149 chore(config): add etc dir config 2021-09-10 20:31:32 +08:00
Zaiming Shi
0b11ab2d59 refactor(schema): reorder config root fields
so more important configs are ordered before less important
2021-09-10 07:28:09 +02:00
Zaiming Shi
01166a8bfb feat(schema): generate document when building the release 2021-09-10 07:27:02 +02:00
Zaiming Shi
0039bfca6b refactor(emqx_machine_schema): use hoconsc:map type 2021-09-10 07:27:01 +02:00
zhongwencool
5a4428c53d Merge branch 'cluster-call-api' of https://github.com/zhongwencool/emqx into zhongwencool-cluster-call-api 2021-09-10 13:11:13 +08:00
Shawn
037b75a276 refactor(bridges): remote the old emqx_bridge_mqtt app 2021-09-10 11:43:03 +08:00
Shawn
bfb2df37ce refactor(bridge): rename emqx_data_bridge to emqx_bridge 2021-09-10 11:43:03 +08:00
zhongwencool
6bc7378e63 fix(cluster-call): fix typo and add is_success/1 help function 2021-09-10 09:40:30 +08:00
zhongwencool
24aaa5349b chore(cluster-call): more clear function/var name 2021-09-07 10:00:19 +08:00
zhouzb
e998770f2e refactor(authn): refactor to support global and listener authentication 2021-09-06 18:46:08 +08:00
Zaiming Shi
19aff7bfdd fix(authz): schema fields used directly. 2021-09-03 14:58:49 +02:00
Zaiming Shi
ec13463f4a refactor(schema): prepare for hocon schema doc generation 2021-09-03 11:02:31 +02:00
zhongwencool
679edbc29c feat(cluster-call): support confirm success after all mfa apply ok 2021-09-02 10:03:03 +08:00
Zaiming Shi
5165fd6b30 refactor(schema): implement new hocon_schema callbacks 2021-08-30 09:56:03 +08:00