activemq-artemis/docs/user-manual/management-console.adoc

112 lines
4.7 KiB
Plaintext
Raw Normal View History

ARTEMIS-4383 migrate user docs to AsciiDoc Markdown, which is currently used for user-facing documentation, is good for a lot of things. However, it's not great for the kind of complex documentation we have and our need to produce both multi-page HTML and single-page PDF output via Maven. Markdown lacks features which would make the documentation easier to read, easier to navigate, and just look better overall. The current tool-chain uses honkit and a tool called Calibre. Honkit is written in TypeScript and is installed via NPM. Calibre is a native tool so it must be installed via an OS-specific package manager. All this complexity makes building, releasing, uploading, etc. a pain. AsciiDoc is relatively simple like Markdown, but it has more features for presentation and navigation not to mention Java-based Maven tooling to generate both HTML and PDF. Migrating will improve both the appearance of the documentation as well as the processes to generate and upload it. This commit contains the following changes: - Convert all the Markdown for the User Manual, Migration Guide, and Hacking guide to AsciiDoc via kramdown [1]. - Update the `artemis-website` build to use AsciiDoctor Maven tooling. - Update `RELEASING.md` with simplified instructions. - Update Hacking Guide with simplified instructions. - Use AsciiDoc link syntax in Artemis Maven doc plugin. - Drop EPUB & MOBI docs for User Manual as well as PDF for the Hacking Guide. All docs will be HTML only except for the User Manual which will have PDF. - Move all docs up out of their respective "en" directory. This was a hold-over from when we had docs in different languages. - Migration & Hacking Guides are now single-page HTML since they are relatively short. - Refactor README.md to simplify and remove redundant content. Benefits of the change: - Much simplified tooling. No more NPM packages or native tools. - Auto-generated table of contents for every chapter. - Auto-generated anchor links for every sub-section. - Overall more appealing presentation. - All docs will use the ActiveMQ favicon. - No more manual line-wrapping! AsciiDoc recommends one sentence per line and paragraphs are separated by a blank line. - AsciiDoctor plugins for IDEA are quite good. - Resulting HTML is less than *half* of the previous size. All previous links/bookmarks should continue to work. [1] https://github.com/asciidoctor/kramdown-asciidoc
2023-07-27 23:45:17 -04:00
= Management Console
:idprefix:
:idseparator: -
Apache ActiveMQ Artemis ships by default with a management console.
It is powered by http://hawt.io[Hawt.io].
Its purpose is to expose the xref:management.adoc#management[Management API] via a user friendly web ui.
== Login
To access the management console use a browser and go to the URL link:[http://localhost:8161/console].
A login screen will be presented, if your broker is secure, you will need to use a user with admin role, if it is unsecure simply enter any user/password.
image::images/console-login.png[ActiveMQ Artemis Console Login]
== Security
That Jolokia JMX-HTTP bridge is secured via a policy file in the broker configuration directory: 'etc/jolokia-access.xml'.
2024-01-31 09:43:37 -05:00
The contents of that file should be modified as described in the https://jolokia.org/features/security.html[Jolokia Security Guide].
ARTEMIS-4383 migrate user docs to AsciiDoc Markdown, which is currently used for user-facing documentation, is good for a lot of things. However, it's not great for the kind of complex documentation we have and our need to produce both multi-page HTML and single-page PDF output via Maven. Markdown lacks features which would make the documentation easier to read, easier to navigate, and just look better overall. The current tool-chain uses honkit and a tool called Calibre. Honkit is written in TypeScript and is installed via NPM. Calibre is a native tool so it must be installed via an OS-specific package manager. All this complexity makes building, releasing, uploading, etc. a pain. AsciiDoc is relatively simple like Markdown, but it has more features for presentation and navigation not to mention Java-based Maven tooling to generate both HTML and PDF. Migrating will improve both the appearance of the documentation as well as the processes to generate and upload it. This commit contains the following changes: - Convert all the Markdown for the User Manual, Migration Guide, and Hacking guide to AsciiDoc via kramdown [1]. - Update the `artemis-website` build to use AsciiDoctor Maven tooling. - Update `RELEASING.md` with simplified instructions. - Update Hacking Guide with simplified instructions. - Use AsciiDoc link syntax in Artemis Maven doc plugin. - Drop EPUB & MOBI docs for User Manual as well as PDF for the Hacking Guide. All docs will be HTML only except for the User Manual which will have PDF. - Move all docs up out of their respective "en" directory. This was a hold-over from when we had docs in different languages. - Migration & Hacking Guides are now single-page HTML since they are relatively short. - Refactor README.md to simplify and remove redundant content. Benefits of the change: - Much simplified tooling. No more NPM packages or native tools. - Auto-generated table of contents for every chapter. - Auto-generated anchor links for every sub-section. - Overall more appealing presentation. - All docs will use the ActiveMQ favicon. - No more manual line-wrapping! AsciiDoc recommends one sentence per line and paragraphs are separated by a blank line. - AsciiDoctor plugins for IDEA are quite good. - Resulting HTML is less than *half* of the previous size. All previous links/bookmarks should continue to work. [1] https://github.com/asciidoctor/kramdown-asciidoc
2023-07-27 23:45:17 -04:00
By default the console is locked down to 'localhost', pay particular attention to the 'CORS' restrictions when exposing the console web endpoint over the network.
== Console
Once logged in you should be presented with a screen similar to.
image::images/console-artemis-plugin.png[ActiveMQ Artemis Console Artemis Plugin]
=== Navigation Menu
On the top right is small menu area you will see some icons.
* `question mark`
This will open a menu with the following items
* `Help` This will navigate to the console user guide
* `About` this will load an about screen, here you will be able to see and validate versions
* `person`
will provide a drop down menu with
* `Preferences` this will open the preferences page
* `Log out` self descriptive.
=== Navigation Tabs
Running below the Navigation Menu you will see several default feature tabs.
* `Artemis` This is the core tab for Apache ActiveMQ Artemis specific functionality.
The rest of this document will focus on this.
* `Dashboard` Here you can create and save graphs and tables of metrics available via JMX, a default jvm health dashboard is provided.
* `JMX` This exposes the raw Jolokia JMX so you can browse/access all the JMX endpoints exposed by the JVM.
* `Threads` This allows you to monitor the thread usage and their state.
In previous versions there was a "Connect" tab which could be used to connect to a remote broker from the same console.
This was disabled by default for security purposes, but it can be enabled again by removing `-Dhawtio.disableProxy=true` from `artemis.profile` (or `artemis.profile.cmd` on Windows).
You can install further hawtio plugins if you wish to have further functionality.
== Artemis Tab
Click `Artemis` in the left navigation bar to see the Artemis specific plugin.
(The Artemis tab won't appear if there is no broker in this JVM).
The Artemis plugin works very much the same as the JMX plugin however with a focus on interacting with an Artemis broker.
=== Tree View
The tree view on the left-hand side shows the top level JMX tree of each broker instance running in the JVM.
Expanding the tree will show the various MBeans registered by Artemis that you can inspect via the *Attributes* tab.
==== Acceptors
This expands to show and expose details of the current configured acceptors.
==== Addresses
This expands to show the current configured available `addresses`.
Under the address you can expand to find the `queues` for the address exposing attributes
=== Key Operations
==== Creating a new Address
To create a new address simply click on the broker or the address folder in the jmx tree and click on the create tab.
Once you have created an address you should be able to *Send* to it by clicking on it in the jmx tree and clicking on the send tab.
==== Creating a new Queue
To create a new queue click on the address you want to bind the queue to and click on the create tab.
Once you have created a queue you should be able to *Send* a message to it or *Browse* it or view the *Attributes* or *Charts*.
Simply click on the queue in th ejmx tree and click on the appropriate tab.
You can also see a graphical view of all brokers, addresses, queues and their consumers using the *Diagram* tab.
=== Status Logging
When the broker starts it will detect the presence of the web console and log status information, e.g.:
----
INFO [org.apache.activemq.artemis] AMQ241002: Artemis Jolokia REST API available at http://localhost:8161/console/jolokia
INFO [org.apache.activemq.artemis] AMQ241004: Artemis Console available at http://localhost:8161/console
----
The web console is detected by inspecting the value of the `<display-name>` tag in the war file's `WEB-INF/web.xml` descriptor.
By default it looks for `hawtio`.
However, if this value is changed for any reason the broker can look for this new value by setting the following system property
----
-Dorg.apache.activemq.artemis.webConsoleDisplayName=newValue
----