Commit Graph

705 Commits

Author SHA1 Message Date
Philip Kuryloski 97946f3666 bump a test timeout in bazel 2021-07-23 13:38:53 +02:00
Philip Kuryloski 6628df33ef Increase some bazel test timeouts 2021-07-23 12:57:16 +02:00
Jean-Sébastien Pédron 23a04c2692
rabbit_mgmt_agent_sup_sup: Fix worker type for the pg group
It must be a worker (the default type), not a supervisor. This fixes a
bug causing a crash of the release handler.
2021-07-22 10:21:37 +02:00
Philip Kuryloski d6399bbb5b
Mixed version testing in bazel (#3200)
Unlike with gnu make, mixed version testing with bazel uses a package-generic-unix for the secondary umbrella rather than the source. This brings the benefit of being able to mixed version test releases built with older erlang versions (even though all nodes will run under the single version given to bazel)

This introduces new test labels, adding a `-mixed` suffix for every existing test. They can be skipped if necessary with `--test_tag_filters` (see the github actions workflow for an example)

As part of the change, it is now possible to run an old release of rabbit with rabbitmq_run rule, such as:

`bazel run @rabbitmq-server-generic-unix-3.8.17//:rabbitmq-run run-broker`
2021-07-19 14:33:25 +02:00
Philip Kuryloski 8f9de08de7 Also assert no missing suites for all other deps 2021-07-12 18:05:55 +02:00
Philip Kuryloski 3eac3cf8a8 Remove unused load statements from bazel files 2021-07-12 12:10:26 +02:00
Philip Kuryloski 30f9a95b9f Add dialyze for remaning tier-1 plugins 2021-06-01 10:19:10 +02:00
Philip Kuryloski 98e71c45d8 Perform xref checks on many tier-1 plugins 2021-05-21 12:03:22 +02:00
Michael Klishin 040f8cc912
Replace a few more leftover MPLv1.1 license headers
Most files have been using the MPLv2 headers for months now.
These were detected by the OSL process.
2021-05-19 21:20:47 +03:00
Lajos Gerecs 37a4c270b1 revert restart intensity of external stats process
Previously the restart intensity was 100 and period 50. This process was
prone to crashing in the past, so it does not make sense to not restart it
if anything happens during the gathering of statistics.

Related: #2850
2021-05-14 11:05:54 +02:00
Philip Kuryloski c13c2af614 Bazel file refactoring 2021-05-11 12:03:27 +02:00
Philip Kuryloski 072a1c0462 Refactor and dedupe .bazel file content 2021-04-16 10:22:44 +02:00
Philip Kuryloski b0beaf1b6e Add rabbitmq_management_agent suites to bazel 2021-04-15 17:24:05 +02:00
Philip Kuryloski 388654c542
Add a partial Bazel build (#2938)
Adds WORKSPACE.bazel, BUILD.bazel & *.bzl files for partial build & test with Bazel. Introduces a build-time dependency on https://github.com/rabbitmq/bazel-erlang
2021-03-29 11:01:43 +02:00
Philip Kuryloski a63f169fcb Remove duplicate rabbitmq-components.mk and erlang.mk files
Also adjust the references in rabbitmq-components.mk to account for
post monorepo locations
2021-03-22 15:40:19 +01:00
kjnilsson 52f745dcde Update rabbitmq-components.mk
use v1.x branch of ra
2021-03-18 15:14:40 +00:00
kjnilsson 6c66d814d7 Mgmt agent: format stream queue type 2021-03-16 17:38:10 +00:00
Loïc Hoguin d5e3bdd623
Add ADDITIONAL_PLUGINS variable
This allows including additional applications or third party
plugins when creating a release, running the broker locally,
or just building from the top-level Makefile.

To include Looking Glass in a release, for example:

$ make package-generic-unix ADDITIONAL_PLUGINS="looking_glass"

A Docker image can then be built using this release and will
contain Looking Glass:

$ make docker-image

Beware macOS users! Applications such as Looking Glass include
NIFs. NIFs must be compiled in the right environment. If you
are building a Docker image then make sure to build the NIF
on Linux! In the two steps above, this corresponds to Step 1.

To run the broker with Looking Glass available:

$ make run-broker ADDITIONAL_PLUGINS="looking_glass"

This commit also moves Looking Glass dependency information
into rabbitmq-components.mk so it is available at all times.
2021-03-12 12:29:28 +01:00
Michael Klishin 97ff62d3b2
Drop trailing newlines from logged messages where possible
Lager strips trailing newline characters but OTP logger with the default
formatter adds a newline at the end. To avoid unintentional multi-line log
messages we have to revisit most messages logged.

Some log entries are intentionally multiline, others
are printed to stdout directly: newlines are required there
for sensible formatting.
2021-03-11 15:17:37 +01:00
Jean-Sébastien Pédron cdcf602749
Switch from Lager to the new Erlang Logger API for logging
The configuration remains the same for the end-user. The only exception
is the log root directory: it is now set through the `log_root`
application env. variable in `rabbit`. People using the Cuttlefish-based
configuration file are not affected by this exception.

The main change is how the logging facility is configured. It now
happens in `rabbit_prelaunch_logging`. The `rabbit_lager` module is
removed.

The supported outputs remain the same: the console, text files, the
`amq.rabbitmq.log` exchange and syslog.

The message text format slightly changed: the timestamp is more precise
(now to the microsecond) and the level can be abbreviated to always be
4-character long to align all messages and improve readability. Here is
an example:

    2021-03-03 10:22:30.377392+01:00 [dbug] <0.229.0> == Prelaunch DONE ==
    2021-03-03 10:22:30.377860+01:00 [info] <0.229.0>
    2021-03-03 10:22:30.377860+01:00 [info] <0.229.0>  Starting RabbitMQ 3.8.10+115.g071f3fb on Erlang 23.2.5
    2021-03-03 10:22:30.377860+01:00 [info] <0.229.0>  Licensed under the MPL 2.0. Website: https://rabbitmq.com

The example above also shows that multiline messages are supported and
each line is prepended with the same prefix (the timestamp, the level
and the Erlang process PID).

JSON is also supported as a message format and now for any outputs.
Indeed, it is possible to use it with e.g. syslog or the exchange. Here
is an example of a JSON-formatted message sent to syslog:

    Mar  3 11:23:06 localhost rabbitmq-server[27908] <0.229.0> - {"time":"2021-03-03T11:23:06.998466+01:00","level":"notice","msg":"Logging: configured log handlers are now ACTIVE","meta":{"domain":"rabbitmq.prelaunch","file":"src/rabbit_prelaunch_logging.erl","gl":"<0.228.0>","line":311,"mfa":["rabbit_prelaunch_logging","configure_logger",1],"pid":"<0.229.0>"}}

For quick testing, the values accepted by the `$RABBITMQ_LOGS`
environment variables were extended:
  * `-` still means stdout
  * `-stderr` means stderr
  * `syslog:` means syslog on localhost
  * `exchange:` means logging to `amq.rabbitmq.log`

`$RABBITMQ_LOG` was also extended. It now accepts a `+json` modifier (in
addition to the existing `+color` one). With that modifier, messages are
formatted as JSON intead of plain text.

The `rabbitmqctl rotate_logs` command is deprecated. The reason is
Logger does not expose a function to force log rotation. However, it
will detect when a file was rotated by an external tool.

From a developer point of view, the old `rabbit_log*` API remains
supported, though it is now deprecated. It is implemented as regular
modules: there is no `parse_transform` involved anymore.

In the code, it is recommended to use the new Logger macros. For
instance, `?LOG_INFO(Format, Args)`. If possible, messages should be
augmented with some metadata. For instance (note the map after the
message):

    ?LOG_NOTICE("Logging: switching to configured handler(s); following "
                "messages may not be visible in this log output",
                #{domain => ?RMQLOG_DOMAIN_PRELAUNCH}),

Domains in Erlang Logger parlance are the way to categorize messages.
Some predefined domains, matching previous categories, are currently
defined in `rabbit_common/include/logging.hrl` or headers in the
relevant plugins for plugin-specific categories.

At this point, very few messages have been converted from the old
`rabbit_log*` API to the new macros. It can be done gradually when
working on a particular module or logging.

The Erlang builtin console/file handler, `logger_std_h`, has been forked
because it lacks date-based file rotation. The configuration of
date-based rotation is identical to Lager. Once the dust has settled for
this feature, the goal is to submit it upstream for inclusion in Erlang.
The forked module is calld `rabbit_logger_std_h` and is based
`logger_std_h` in Erlang 23.0.
2021-03-11 15:17:36 +01:00
dcorbacho 61f7b2a723 Update to ranch 2.0 2021-03-08 23:11:05 +01:00
Michael Klishin b6c4831e75
Bump Lager to 3.9.1 2021-03-04 04:36:39 +03:00
Michael Klishin ad47eba2fa
pg2 => pg for OTP 24 compatibility
there is still one failing queue federation test.
2021-03-04 04:06:40 +03:00
Loïc Hoguin 66ac1bf5e9
Bump observer_cli to 1.6.1
More responsive when the system is overloaded with file calls.
2021-03-01 21:55:27 +03:00
Michael Klishin b981cead37
Correct a child spec typo 2021-03-01 21:55:26 +03:00
Michael Klishin 8cbf5a37c3
Regular supervisor is sufficient here 2021-03-01 21:55:25 +03:00
Michael Klishin c01706a758
Extract a constant 2021-03-01 21:55:25 +03:00
Michael Klishin 42b50aaf70
Cosmetics 2021-03-01 21:55:25 +03:00
Michael Klishin 99ab1eda31
OTP 24 compat: switch management and management_agent to use pg
since pg2 was removed in OTP 24.

The only decision worth mentioning here is that both plugins share
a pg scope, which is started in rabbitmq_management_agent supervision
tree and idempotently started in rabbitmq_management without
attaching the scope pid to its tree.

Per discussion with @lhoguin.
2021-03-01 21:55:25 +03:00
Michael Klishin 8fe3df9343
Upgrade Lager to 3.9.0 for OTP 24 compatibility
`lager_util:expand_path/1` use changes are
due to erlang-lager/lager#540
2021-02-26 00:52:15 +03:00
Michael Klishin f73e851f9c
Bump observer_cli to 1.6.0 2021-02-24 12:53:55 +03:00
Michael Klishin a5098b28a7
Bump Lager to 3.8.2 for OTP 24 compatibility 2021-02-24 12:53:30 +03:00
Michael Klishin b11a79cccf
Bump (c) year in header files 2021-02-04 07:04:58 +03:00
Arnaud Cogoluègnes b921ac11a8
Merge pull request #2712 from rabbitmq/rabbitmq-stream-prometheus
Add stream prometheus plugin
2021-01-27 16:46:37 +01:00
Arnaud Cogoluègnes 268bc7257c
Merge pull request #2729 from rabbitmq/rabbitmq-stream-consumers-in-queue-details
Report stream consumers as regular consumers in management
2021-01-27 16:06:59 +01:00
Michael Klishin 52479099ec
Bump (c) year 2021-01-22 09:00:14 +03:00
Arnaud Cogoluègnes 78b723d7c3
Report stream consumers as regular consumers in management
This helps to see that a queue is consumed from.

WIP
2021-01-20 15:36:16 +01:00
Arnaud Cogoluègnes bf72683eb2
Add stream prometheus plugin 2021-01-11 16:49:56 +01:00
Arnaud Cogoluègnes cbd3c8dfdd
Merge branch 'master' into rabbitmq-stream-management 2021-01-04 09:50:47 +01:00
Michael Klishin 799556e2d7
HTTP API: format user tags the same way 'rabbitmqctl export_definitions' now does 2020-12-09 14:30:59 +03:00
Arnaud Cogoluègnes e516aab737
Display only stream connections in plugin 2020-11-19 17:02:35 +01:00
Arnaud Cogoluègnes 23d7e8114c
Introduce stream management plugin 2020-11-19 14:48:25 +01:00
Arnaud Cogoluègnes b90ca377e5 Update rabbitmq-components.mk 2020-11-03 14:27:41 +01:00
Michael Klishin 91722e1b09 Update rabbitmq-components.mk 2020-10-21 12:55:37 +03:00
Luke Bakken 754f58d50f Check return value
Might as well!

rabbitmq/rabbitmq-common#410
rabbitmq/rabbitmq-server#2437
2020-09-02 04:54:03 +03:00
Luke Bakken 81c2abc852 Update rabbitmq-components.mk 2020-08-20 14:26:36 +03:00
Jean-Sébastien Pédron 4f12ee5da5 Update rabbitmq-components.mk 2020-08-20 14:26:36 +03:00
Luke Bakken 5267c27aa3 Update rabbitmq-components.mk 2020-08-20 14:26:35 +03:00
dcorbacho d25c0baff9 Update erlang.mk 2020-08-20 14:26:35 +03:00
Michael Klishin 9aefff759c Update rabbitmq-components.mk 2020-08-20 14:26:35 +03:00
Michael Klishin 691408a285 Update rabbitmq-components.mk 2020-08-20 14:26:35 +03:00
dcorbacho 0bdfbba3c6 Revert drop of Exhibit B on MPL 2.0 2020-08-20 14:26:35 +03:00
dcorbacho bd5f2af4e4 Update LICENSE 2020-08-20 14:26:35 +03:00
Anupama Singh a0b5f4bb19 user_limits feature flag implementation 2020-07-17 16:03:12 +01:00
Michael Klishin cd1b05d51d Update MPL2 license file, drop Exhibit B
and add a VMware copyright notice.

We did not mean to make this code Incompatible with Secondary Licenses
as defined in [1].

1. https://www.mozilla.org/en-US/MPL/2.0/FAQ/
2020-07-17 14:53:06 +03:00
dcorbacho 61200542ec Switch to Mozilla Public License 2.0 (MPL 2.0) 2020-07-13 17:00:00 +01:00
Jean-Sébastien Pédron 5e6b3d308c Update erlang.mk 2020-06-23 17:14:11 +02:00
Michael Klishin a6084e5fc4 Avoid using erlang:get_stacktrace/0 2020-06-13 17:46:19 +03:00
Michael Klishin fa763d3cfc Bump Recon to 2.5.1
for Erlang 23 compatibility of 'rabbitmq-diagnostics observer'

References zhongwencool/observer_cli#68.
2020-06-09 08:22:13 +03:00
Jean-Sébastien Pédron d78292517b Update copyright (year 2020) 2020-03-10 15:41:36 +01:00
Gerhard Lazu 0b360a5ad8 Update rabbitmq-components.mk 2020-03-06 09:19:16 +00:00
Gerhard Lazu a0d17e228e Update erlang.mk 2020-03-06 09:17:51 +00:00
Jean-Sébastien Pédron 2db207a9c7 Travis CI: Update config from rabbitmq-common 2020-03-04 14:24:29 +01:00
Jean-Sébastien Pédron d672b12fdb Travis CI: Update config from rabbitmq-common 2020-03-04 11:17:15 +01:00
Michael Klishin 5ec1b25a80 Transitionary step for OTP 23 [master] compatibility 2020-02-11 21:11:10 +03:00
Gerhard Lazu 7ea9e5232f Update rabbitmq-components.mk 2020-02-11 15:31:45 +00:00
Luke Bakken 94198f1253 Store last error log in state
This allows logging errors only once every 10 minutes. Prior to an
earlier change this time was stored in the process dictionary. Storing
in the state is the "correct" way to do it.

Follow-up to #90
2020-01-14 15:47:33 -08:00
Michael Klishin 84f5019364 Log missing handle.exe warnings as such, closes #90 2020-01-13 18:07:08 +03:00
Michael Klishin 7f7b39f07b (c) bump 2019-12-29 05:50:30 +03:00
Jean-Sébastien Pédron cc3385bdd9 Git: Ignore copied CLI 2019-12-12 14:57:54 +01:00
Jean-Sébastien Pédron 4c9d0417c4 Update rabbitmq-components.mk 2019-12-12 13:14:55 +01:00
Michael Klishin 2786ffa431 Merge pull request #88 from rabbitmq/mgmt-less-improvements
Format queue info proplist
2019-11-27 17:53:17 +03:00
Michael Klishin 0548c818f3 Forward functions extracted into rabbit_misc
References rabbitmq/rabbitmq-common#339.
Part of rabbitmq/rabbitmq-management#749.
2019-11-18 20:26:43 +03:00
dcorbacho 021d4e049b Format queue info proplist
[#169802101]
2019-11-17 22:36:50 +00:00
Michael Klishin 7acfd3e81c Be extra defensive when inferring how many file descriptors are used
While at it, log exceptions every time and as errors.

Closes #86.
2019-11-15 10:01:58 -08:00
kjnilsson a808e1be8a Replace use of orddict with map
There is only a single point in the code we need the ordering at which
point we can explicitly sort the result.
2019-11-04 16:53:14 +00:00
kjnilsson b272199fae Format queue type field
So that it uses the same short name as the x-queue-type argument uses.
2019-09-25 11:51:41 +01:00
kjnilsson 672f35c600 Update rabbitmq-components.mk 2019-09-13 10:24:22 +01:00
kjnilsson 4e49ae4543 Update rabbitmq-components.mk 2019-09-04 10:31:00 +01:00
Jean-Sébastien Pédron 0cb21b2b82 Update erlang.mk 2019-08-29 20:45:20 +02:00
Michael Klishin aa4b9125bd Update rabbitmq-components.mk 2019-08-11 01:47:56 +10:00
Jean-Sébastien Pédron 4c573d4744 Update erlang.mk 2019-08-02 09:54:08 +02:00
Michael Klishin e3470da65d Update rabbitmq-components.mk 2019-08-01 17:13:18 +03:00
Arnaud Cogoluègnes 0bbb907ac7 Update rabbitmq-components.mk 2019-07-09 16:05:59 +02:00
Michael Klishin b0d08cc3dd Format blank effective policy definitions as a JSON object
Closes rabbitmq/rabbitmq-management#701.

References rabbitmq/rabbitmq-management#74, rabbitmq/rabbitmq-management#424.
2019-07-08 16:40:32 +03:00
Michael Klishin 03fbb3e27c Merge pull request #80 from rabbitmq/management-only-api
Include the queue type in queue formatting
2019-07-08 03:29:25 +03:00
Luke Bakken 138a0b385c Check rval 2019-07-01 10:06:08 -07:00
Luke Bakken 7895d19e71 Revert "Remove forced event refresh"
This reverts commit 5cbc03787f.
2019-07-01 10:00:19 -07:00
Jean-Sébastien Pédron 3642beb8b9 Update rabbitmq-components.mk 2019-06-28 16:05:32 +02:00
Jean-Sébastien Pédron 8e6ff56cd4 Update erlang.mk 2019-06-28 16:02:14 +02:00
Diana Corbacho 81e2e537a8 Include the queue type in queue formatting 2019-06-10 22:17:19 +01:00
Gerhard Lazu ebd1913276 Update rabbitmq-components.mk 2019-06-03 02:23:38 +01:00
Jean-Sébastien Pédron 7fda2e91b9 Update rabbitmq-components.mk 2019-05-17 15:17:20 +02:00
Michael Klishin 01440e587d Update rabbitmq-components.mk 2019-05-17 08:36:46 +03:00
Michael Klishin c4f440acd7 Update rabbitmq-components.mk 2019-05-16 23:22:52 +03:00
Michael Klishin c7e55c271c Update rabbitmq-components.mk 2019-05-14 11:50:51 +03:00
Michael Klishin e6a80ae3c7 Update rabbitmq-components.mk 2019-05-13 16:40:34 +03:00
Gerhard Lazu b31ec8ec2f Update rabbitmq-components.mk 2019-05-01 13:18:15 +01:00
Luke Bakken da8b824a2d Update rabbitmq-components.mk 2019-04-30 16:20:58 -07:00
Jean-Sébastien Pédron 9254785183 Update rabbitmq-components.mk 2019-04-30 14:47:32 +02:00
Michael Klishin 480fb31640 Merge pull request #79 from rabbitmq/rabbitmq-server-1904
New channel metric: dropped unroutable messages
2019-04-25 18:13:05 +03:00
Diana Corbacho ea50b4d341 Typo 2019-04-24 20:44:37 +01:00
Michael Klishin 3e35332973 Export newly added functions 2019-04-24 18:20:30 +03:00
Michael Klishin 07189e9d38 Hide drop_unroutable metric behind a feature flag
For mixed version cluster compatibility per
suggestion from @dumbbell.

Pair: @dcorbacho.

Part of rabbitmq/rabbitmq-server#1904.

[#165548314]
2019-04-24 17:55:43 +03:00
Michael Klishin bc0a41e22d rabbit_mgmt_metrics_collector:aggregate_entry/4: update to include a new metric
Pair: @dcorbacho.
2019-04-24 17:23:42 +03:00
Michael Klishin cc5e931377 New channel metric: dropped unroutable messages
Part of rabbitmq/rabbitmq-server#1904.

[#165548314]
2019-04-23 23:25:26 +03:00
Gerhard Lazu 2317030cb8 Update rabbitmq-components.mk 2019-04-23 14:14:57 +01:00
Gerhard Lazu 470d80d0a4 Merge pull request #78 from rabbitmq/disable-metrics-collection
Option to disable metrics collector on startup
2019-04-17 12:44:02 +01:00
Diana Corbacho 1dbf141712 Add cuttlefish schema for agent/disable_metrics_collector
[#164376052]
2019-04-17 08:51:45 +01:00
Jean-Sébastien Pédron 3ce9849f27 rabbit_mgmt_gc_SUITE: Skip `quorum_queue_stats` if quorum queues are unsupported 2019-04-16 12:06:13 +02:00
Diana Corbacho 4c6e9b39bb Option to disable metrics collector on startup
Allows external stats to be gathered for the prometheus plugin, while
removing all metrics collection/aggregation and unnecesary management
services.

To disable set app env `disable_metrics_collector` to `true`.
Defaults `false`

[#164376052]
2019-04-10 20:19:41 +01:00
Diana Corbacho ff266f0c8c Clean up of non-local queue stats
Followers/slaves should not hold stats for any non-local queue.
Ensure clean up happens if any has been left behind

[#165153327]
2019-04-08 20:50:29 +01:00
Spring Operator 9ae86c9a42 URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# HTTP URLs that Could Not Be Fixed
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.

* http://blog.listincomprehension.com/search/label/procket (200) with 1 occurrences could not be migrated:
   ([https](https://blog.listincomprehension.com/search/label/procket) result ClosedChannelException).
* http://dozzie.jarowit.net/trac/wiki/TOML (200) with 1 occurrences could not be migrated:
   ([https](https://dozzie.jarowit.net/trac/wiki/TOML) result SSLHandshakeException).
* http://dozzie.jarowit.net/trac/wiki/subproc (200) with 1 occurrences could not be migrated:
   ([https](https://dozzie.jarowit.net/trac/wiki/subproc) result SSLHandshakeException).
* http://e2project.org (200) with 1 occurrences could not be migrated:
   ([https](https://e2project.org) result AnnotatedConnectException).
* http://nitrogenproject.com/ (200) with 2 occurrences could not be migrated:
   ([https](https://nitrogenproject.com/) result ConnectTimeoutException).
* http://proper.softlab.ntua.gr (200) with 1 occurrences could not be migrated:
   ([https](https://proper.softlab.ntua.gr) result SSLHandshakeException).
* http://yaws.hyber.org (200) with 1 occurrences could not be migrated:
   ([https](https://yaws.hyber.org) result AnnotatedConnectException).
* http://choven.ca (503) with 1 occurrences could not be migrated:
   ([https](https://choven.ca) result ConnectTimeoutException).

# Fixed URLs

## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.

* http://fixprotocol.org/ (301) with 1 occurrences migrated to:
  https://fixtrading.org ([https](https://fixprotocol.org/) result SSLHandshakeException).
* http://erldb.org (UnknownHostException) with 1 occurrences migrated to:
  https://erldb.org ([https](https://erldb.org) result UnknownHostException).

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* http://cloudi.org/ with 27 occurrences migrated to:
  https://cloudi.org/ ([https](https://cloudi.org/) result 200).
* http://erlware.org/ with 1 occurrences migrated to:
  https://erlware.org/ ([https](https://erlware.org/) result 200).
* http://inaka.github.io/cowboy-trails/ with 1 occurrences migrated to:
  https://inaka.github.io/cowboy-trails/ ([https](https://inaka.github.io/cowboy-trails/) result 200).
* http://ninenines.eu with 6 occurrences migrated to:
  https://ninenines.eu ([https](https://ninenines.eu) result 200).
* http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html with 1 occurrences migrated to:
  https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html ([https](https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html) result 200).
* http://www.actordb.com/ with 2 occurrences migrated to:
  https://www.actordb.com/ ([https](https://www.actordb.com/) result 200).
* http://www.cs.kent.ac.uk/projects/wrangler/Home.html with 1 occurrences migrated to:
  https://www.cs.kent.ac.uk/projects/wrangler/Home.html ([https](https://www.cs.kent.ac.uk/projects/wrangler/Home.html) result 200).
* http://www.rebar3.org with 1 occurrences migrated to:
  https://www.rebar3.org ([https](https://www.rebar3.org) result 200).
* http://contributor-covenant.org with 1 occurrences migrated to:
  https://contributor-covenant.org ([https](https://contributor-covenant.org) result 301).
* http://contributor-covenant.org/version/1/3/0/ with 1 occurrences migrated to:
  https://contributor-covenant.org/version/1/3/0/ ([https](https://contributor-covenant.org/version/1/3/0/) result 301).
* http://inaka.github.com/apns4erl with 1 occurrences migrated to:
  https://inaka.github.com/apns4erl ([https](https://inaka.github.com/apns4erl) result 301).
* http://inaka.github.com/edis/ with 1 occurrences migrated to:
  https://inaka.github.com/edis/ ([https](https://inaka.github.com/edis/) result 301).
* http://lasp-lang.org/ with 1 occurrences migrated to:
  https://lasp-lang.org/ ([https](https://lasp-lang.org/) result 301).
* http://saleyn.github.com/erlexec with 1 occurrences migrated to:
  https://saleyn.github.com/erlexec ([https](https://saleyn.github.com/erlexec) result 301).
* http://technet.microsoft.com/en-us/sysinternals/bb896655.aspx with 1 occurrences migrated to:
  https://technet.microsoft.com/en-us/sysinternals/bb896655.aspx ([https](https://technet.microsoft.com/en-us/sysinternals/bb896655.aspx) result 301).
* http://www.mozilla.org/MPL/ with 21 occurrences migrated to:
  https://www.mozilla.org/MPL/ ([https](https://www.mozilla.org/MPL/) result 301).
* http://zhongwencool.github.io/observer_cli with 1 occurrences migrated to:
  https://zhongwencool.github.io/observer_cli ([https](https://zhongwencool.github.io/observer_cli) result 301).
* http://mozilla.org/MPL/2.0/ with 1 occurrences migrated to:
  https://mozilla.org/MPL/2.0/ ([https](https://mozilla.org/MPL/2.0/) result 302).
2019-03-20 03:18:00 -05:00
Michael Klishin f9b89c7a14 Travis: use Erlang 21.3, Elixir 1.8.1 2019-03-20 10:33:16 +03:00
Michael Klishin b3ff2ac9ad Provide a help description for CLI tools 2019-03-17 05:48:58 +03:00
Michael Klishin 7cdc464287 Update rabbitmq-components.mk 2019-03-15 09:34:39 +03:00
Michael Klishin c0bff9d440 Update rabbitmq-components.mk 2019-03-15 05:05:47 +03:00
Daniil Fedotov 10dcfe9d5c Format {terminated_by, Name} status for queues.
If a queue is bainf deleted and it takes some time, for example if there
are many bindings, the management UI crashes formatting the status.

Split the status and terminated_by name into proplist so fomatter
does not crash.
2019-03-01 13:47:28 -05:00
Michael Klishin 8f34daf3cf Update rabbitmq-components.mk 2019-02-12 23:23:57 +03:00
Jean-Sébastien Pédron 2201f35425 rabbit_mgmt_data_compat: New `fill_consumer_active_fields()` function
... to add the new `active` and `activity_status` fields in consumer
stats if they are missing.

This is the case for consumer stats returned by a RabbitMQ 3.7.x node.

[#163298456]
2019-02-04 17:22:24 +01:00
Jean-Sébastien Pédron adbac7ddfc rabbit_mgmt_data: Convert several stats to RabbitMQ 3.7.x format if needed
I.e., if the `empty_basic_get_metric` feature flag is disabled, we
remove the "get empty" queue metric from the slide, before returning it
to the caller.

[#159298729]
2019-01-29 16:03:31 +01:00
Jean-Sébastien Pédron 1388df59de Make #amqqueue{} a private record
See the corresponding commit in rabbitmq-server for all the
explanations.

Now, all accesses to the #amqqueue{} record are made through the
`amqqueue` module (available in rabbitmq-server). The new type name is
`amqqueue:amqqueue()`.

The `amqqueue.hrl` header also provides some macros to help with pattern
matching and guard expressions.

[#159298729]
2019-01-29 16:03:31 +01:00
Arnaud Cogoluègnes 1e9a95c3eb Add activity status to consumer metrics
[#163298456]

References rabbitmq/rabbitmq-server#1838
2019-01-24 10:52:14 +01:00
Arnaud Cogoluègnes 55843136d1 Update active consumer flag
Can be updated to true or false.

[#163298456]

References rabbitmq/rabbitmq-server#1838
2019-01-18 15:47:55 +01:00
Arnaud Cogoluègnes 4b02cc51d5 Add single active consumer flag in consumer metrics
[#163089472]

References rabbitmq/rabbitmq-management#649
2019-01-15 15:17:10 +01:00
Arnaud Cogoluègnes 04ddec2d59 Filter single active consumer pid
[#163089472]

References rabbitmq/rabbitmq-management#649
2019-01-11 09:29:54 +01:00
Luke Bakken 497aa77b5e Update rabbitmq-components.mk 2019-01-09 12:55:08 -08:00
Luke Bakken c00f8b339d Update rabbitmq-components.mk 2019-01-08 11:58:29 -08:00
Jean-Sébastien Pédron 2e1f0d132c Travis CI: Update config from rabbitmq-common 2019-01-08 17:12:44 +01:00
Michael Klishin 0aa7c53084 Update rabbitmq-components.mk 2018-12-06 18:28:50 +03:00
Michael Klishin 0a4e5f04e0 Update rabbitmq-components.mk 2018-12-06 03:15:15 +03:00
Jean-Sébastien Pédron 0081d63f2b Update rabbitmq-components.mk 2018-11-30 14:56:51 +01:00
Jean-Sébastien Pédron 40d2e8b9c2 Update rabbitmq-components.mk 2018-11-22 09:19:36 +01:00
Michael Klishin c5d8a6dd7f Merge branch 'master' into serialise-decimal 2018-10-31 19:50:06 +03:00
Diana Corbacho 652e42298c Serialise decimal arguments
[#161504803]
2018-10-30 14:44:10 +00:00
kjnilsson 09b0e90c98 Update rabbitmq-components.mk 2018-10-29 12:43:21 +00:00
kjnilsson 5cbc03787f Remove forced event refresh
As the management no longer relies on event data to build up the stats
database this function does not need to be called. The only time the
management needs to handle events is to trigger stats gc in a more
timely fashion when events are deleted.
2018-10-26 12:53:53 +01:00
Diana Corbacho 77b0c5da67 Revert "Revert "Collect ra open file stats""
This reverts commit 1770a2178e4f778f9c99847a5159459ffbdace0e.
2018-10-26 12:53:53 +01:00
Diana Corbacho 9958a25a02 Revert "Collect ra open file stats"
This reverts commit 7ee57c0b001eefd2a57d8eab97e3a32d6adbb117.
2018-10-26 12:53:32 +01:00
Diana Corbacho 8ce199b4b2 Retrieve quorum status from amqqueue record
Allows information to be displayed when the custer is in minority
[#157146500]
2018-10-26 12:51:54 +01:00
Diana Corbacho a5dd65cb75 Format follower/leader details into mirroring format
Allows uniform representation in the UI
[#154472407]
2018-10-26 12:51:54 +01:00
Diana Corbacho 02a144aa83 Update ra_log_segment_writer name 2018-10-26 12:50:36 +01:00
Diana Corbacho 85265430e5 Revert "Revert "Collect ra open file stats""
This reverts commit 1770a2178e4f778f9c99847a5159459ffbdace0e.
2018-10-26 12:50:36 +01:00
Diana Corbacho 85cab2d3c3 Collect ra io stats
[#157193081]
2018-10-26 12:50:36 +01:00
Diana Corbacho 564df7798b Revert "Collect ra open file stats"
This reverts commit 7ee57c0b001eefd2a57d8eab97e3a32d6adbb117.
2018-10-26 12:50:36 +01:00
Diana Corbacho a845fcfddd Collect ra open file stats
[#157193081]
2018-10-26 12:50:36 +01:00
Diana Corbacho d1799645f5 Retrieve quorum status from amqqueue record
Allows information to be displayed when the custer is in minority
[#157146500]
2018-10-26 12:50:36 +01:00
Diana Corbacho e298355e72 Format follower/leader details into mirroring format
Allows uniform representation in the UI
[#154472407]
2018-10-26 12:50:36 +01:00
Diana Corbacho 0401d0f600 Request churn rates for the given node
Not the local one
2018-10-16 12:05:24 +01:00
Diana Corbacho 97bc51df17 Report connection/channel/queue churn
Rate metrics for monitoring of high connection churn scenarios
[#160943831]
2018-10-09 11:54:56 +01:00