Commit Graph

51 Commits

Author SHA1 Message Date
Thales Macedo Garitezi ef36350bf6 feat: implement message transformation
Fixes https://emqx.atlassian.net/browse/EMQX-12517
2024-06-06 17:51:08 -03:00
Thales Macedo Garitezi 257dae5211 refactor: rename `message_validation` to `schema_validation`
Request from Product team.

Fixes https://emqx.atlassian.net/browse/EMQX-12383
2024-05-14 10:32:27 -03:00
Thales Macedo Garitezi 59ff43ec87 feat(message validation): implement metrics
Fixes https://emqx.atlassian.net/browse/EMQX-12071
2024-03-25 10:55:01 -03:00
Zaiming (Stone) Shi 46877e979b chore: update copyright-year 2024-02-23 08:21:06 +01:00
JimMoen d45d925529
test(prom_api): `/prometheus/stats` in prom/json format 2024-02-18 02:14:36 +08:00
Zaiming (Stone) Shi f57f617ba3 refactor(schema): ensure roots/0 and namespace/0 for all schema modules 2024-02-16 11:35:32 +01:00
JimMoen 2061d75b50
docs: prometheus api `mode` field description 2024-01-22 10:39:56 +08:00
JimMoen b480c5b371
fix(prom): use name `mode` and macros to put/get format mode 2024-01-22 10:39:51 +08:00
JimMoen 4fb1ff2f9d
fix(prom_api): format-mode example value 2024-01-21 00:14:49 +08:00
JimMoen 57f3efde63
feat(prom_auth): cluster metrics with different format-mode 2024-01-21 00:14:48 +08:00
JimMoen fb330f77e6
feat(prometheus): api `format_mode` parameter support
- node(default):
  The only supported format_mode for PushGateway.
  Return the current node's metrics.
  -  Without label `node_name` with content-type: `text/plain`.
  -  Without key `node_name` with content-type: `application/json`

- nodes_aggregated:
  Return all nodes metrics Arithmetic-Sum or Logical-Sum.
  See details in callback modules.
    - Logical-Sum for metrics named with `xxx_enable` or `xxx_status`.
    - Arithmetic-Sum for other metrics.
  `node_name` field:
    -  Without label `node_name` with content-type: `text/plain`.
    -  Without key `node_name` with content-type: `application/json`

- nodes_unaggregated:
  Return all nodes metrics without aggregated.
  `node_name` field:
    -  _With_ label `node_name` with content-type: `text/plain`.
    -  _With_ key `node_name` with content-type: `application/json`
2024-01-21 00:14:47 +08:00
JimMoen 5158395bcf
feat(prometheus): data integration prom data 2024-01-21 00:14:34 +08:00
JimMoen bf2e4d134a
refactor(prometheus): generic api response funcs 2024-01-21 00:14:33 +08:00
JimMoen e0feb580b6
feat(prometheus): auth metrics with text/plain 2024-01-21 00:14:32 +08:00
JimMoen 092159b071
feat(prometheus): cert expiry epoch in endpoint `/prometheus/stats` 2024-01-21 00:14:31 +08:00
zhongwencool 525a9e0adf fix: only return recommend setting when get prometheus api 2023-12-11 14:49:32 +08:00
zhongwencool 0c2610fa61 feat: support prometheus.enable_basic_auth 2023-11-17 08:23:51 +08:00
zhongwencool c376a5db29 refactor: prometheus config 2023-11-17 08:23:51 +08:00
zhongwencool 0632d629cb fix: bad prometheus schema for headers 2023-07-10 16:48:13 +08:00
Stefan Strigler f5e93b1b2b docs(emqx_prometheus): leave remark about json being deprecated 2023-06-08 13:08:45 +02:00
Kjell Winblad ab8b8ccaad docs: make sure there is a summary for all API endpoints
Many HTTP API endpoints did not have a summary when looking at the API
docs at "http://emqx_host_name:18083/api-docs". This has been fixed by
making sure there is a summary corresponding to all endpoints.

Fixes:
https://emqx.atlassian.net/browse/EMQX-9767
2023-05-17 09:58:56 +02:00
Zhongwen Deng 4464a31fab chore: remove *_collector for prometheus api's example 2023-04-20 18:01:27 +08:00
JianBo He b1292d6d4f feat(prom): support configuring job_name for pushing mode 2023-01-11 17:31:58 +08:00
JianBo He 50b7ac6a22 feat(prom): support headers for pushing 2023-01-11 17:31:58 +08:00
Zaiming (Stone) Shi dbc10c2eed chore: update copyright year 2023 2023-01-02 09:22:27 +01:00
Zhongwen Deng e22f8ff2a8 refactor: sync emqx_prometheus via emqx_config_handler 2022-10-26 21:31:19 +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
ieQu1 a9ec193ef8 fix(prometheus): Disable authorization for metrics scraping endpoint 2022-06-23 00:31:53 +02:00
Zaiming (Stone) Shi 02c3f87b31 style: reformat all remaining apps 2022-04-27 15:51:18 +02:00
DDDHuang 471e867bf3 fix(api): rename client info recv_msg.dropped.await_pubrel_timeout 2022-02-10 10:33:25 +08:00
JimMoen 4e9e95c317 fix(swagger): spec remove needless description, fix property name 2022-01-25 15:52:13 +08:00
JimMoen b950042cbf refactor(api): prometheus swagger spec 2022-01-21 14:09:42 +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
Zaiming (Stone) Shi 63167cea70 chore: update copyright 2022-01-05 20:55:00 +01:00
DDDHuang 72713cb85f fix(config): restart app after config update in cluster 2022-01-05 15:06:18 +08:00
DDDHuang 20c5343f9b fix(prometheus): dialyzer 2022-01-05 09:28:49 +08:00
DDDHuang 7bc59969eb fix(prometheus): update config in cluster 2022-01-05 09:28:49 +08:00
zhongwencool f6c61189c4 chore(HTTP): prometheus or json format by accept header 2021-12-02 10:30:50 +08:00
DDDHuang 78cf115a90 fix: swagger doc 2021-08-25 11:58:28 +08:00
Turtle 675d23111c chore(swagger-schema): Delete the schema that is not reused 2021-08-24 23:01:51 +08:00
Turtle a1ae4457df feat(prometheus): add get prometheus_format stats api 2021-08-24 21:01:21 +08:00
Turtle e0c05242a7 refactor(minirest-callback): refactor minirest callback function 2021-08-24 18:19:21 +08:00
Turtle 47378e0e96 refactor(schema-utils): refactor mgmt swagger schema utils 2021-08-24 10:53:06 +08:00
Turtle d4d4ba9ea4 refactor(prometheus): refactor prometheus swagger schema 2021-08-23 09:41:46 +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 bf6251e20f refactor(config): update the return values of config handlers 2021-08-18 09:42:06 +08:00
Shawn bd8263e324 refactor(config): move APIs for config update,remove,reset to emqx
Move the emqx_config:update,remove,reset APIs to emqx, to remove
the circular dependency between the modules emqx_config and
emqx_config_handler.

After this change the dependency among these modules will be:

```
emqx ---> emqx_config
   |          ^
   |          |
   + ---> emqx_conifg_handler
```
2021-08-18 09:42:06 +08:00
Shawn 7f03cd0e8b fix(config): update the calls to emqx_config:update/2,3 2021-08-16 17:41:53 +08:00
Turtle 0ef38c75ed chore(prometheus): update prometheus conf root name 2021-07-29 10:34:27 +08:00