emqx/apps/emqx_management
Andrew Mayorov 110a5a4896
feat(schema): introduce separate root for new session persistence
With some knobs to choose a storage backend. Support only builtin
RocksDB-based backend with minimal configuration for now.
2023-11-20 23:49:14 +07:00
..
etc refactor: close managment http 8081 (#5564) 2021-08-27 13:46:39 +08:00
include fix(management): Don't wait for an empty shard 2023-06-20 10:08:41 +02:00
src feat(schema): introduce separate root for new session persistence 2023-11-20 23:49:14 +07:00
test chore: merge master into release-54 2023-11-09 08:32:26 +01:00
.gitignore chore(emqx_management): move emqx management to apps 2021-03-02 09:35:47 +08:00
README.md style: fix wording 2023-03-31 09:19:48 +02:00
rebar.config refactor: HTTP connector into emqx_bridge_http app 2023-07-12 14:46:43 +02:00

EMQX Management

EMQX Management offers various interfaces for administrators to interact with the system, either by a remote console attached to a running node, a CLI (i.e. ./emqx ctl), or through its rich CRUD-style REST API (mostly used by EMQX' dashboard). The system enables administrators to modify both cluster and individual node configurations, and provides the ability to view and reset different statistics and metrics.

Functionality

Amongst others it allows to manage

  • Alarms
  • API Keys
  • Banned clients, users or hosts
  • Clients (and sessions) including their topic subscriptions
  • Configurations
  • Manage plugins
  • Fixed subscriptions
  • Topics

Moreover it lets you

  • modify hot and non-hot updatable configuration values,
  • publish messages, as well as bulk messages,
  • create trace files,
  • and last but not least monitor system status.

Implementation Notes

API endpoints are implemented using the minirest framework in combination with HOCON schema and OpenAPI 3.0 specifications.

TODO/FIXME

At its current state there are some reverse dependencies from other applications that do calls directly into emqx_mgmt.

Also, and somewhat related, its bpapi proto modules do calls directly into other applications.