Spycsh c89a663b53 chore: refactor slog under emqx, conf and exhook преди 4 години
..
docs 7c46c8712b docs(exhook): renanme CheckAcl to Authorize преди 4 години
etc f3efc89192 refactor(config): replace all ':' with '=' in the *.conf (#5531) преди 4 години
include aa019b34ad test(exhook): refine tests преди 4 години
priv d3038c0b71 fix(exhook): BrokerInfo uptime is now a duration integer преди 4 години
src c89a663b53 chore: refactor slog under emqx, conf and exhook преди 4 години
test e37ecc10a6 style(behaviour attrs): unify behaviour declarations преди 4 години
.gitignore 879c191e41 refactor(exhook): adapt to the hocon schmea преди 4 години
README.md 879c191e41 refactor(exhook): adapt to the hocon schmea преди 4 години
rebar.config aa019b34ad test(exhook): refine tests преди 4 години

README.md

emqx_exhook

The emqx_exhook extremly enhance the extensibility for EMQ X. It allow using an others programming language to mount the hooks intead of erlang.

Feature

  • Based on gRPC, it brings a very wide range of applicability
  • Allows you to use the return value to extend emqx behavior.

Architecture

EMQ X                                      Third-party Runtime
+========================+                 +========+==========+
|    ExHook              |                 |        |          |
|   +----------------+   |      gRPC       | gRPC   |  User's  |
|   |   gPRC Client  | ------------------> | Server |  Codes   |
|   +----------------+   |    (HTTP/2)     |        |          |
|                        |                 |        |          |
+========================+                 +========+==========+

Usage

gRPC service

See: priv/protos/exhook.proto

CLI

Example

Recommended gRPC Framework

See: https://github.com/grpc-ecosystem/awesome-grpc

Thanks