Skip to content

Commit 74f2f79

Browse files
author
Tim Middleton
authored
Update to pull dependencies from Maven. Min 2.1 VisualVM required (#18)
* Update to pull dependencies from Maven. Min 2.1 VisualVM required * Add code to recognize all active persistence modes * Add persistence backup space * Add report environment * Add Health Check Tab
1 parent 59d4f82 commit 74f2f79

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+1594
-500
lines changed

.github/workflows/test-against-released.yml

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -44,42 +44,30 @@ jobs:
4444
version:
4545
- 14.1.1-0-9
4646
- 14.1.1-0-8
47-
- 20.06.1
4847
- 20.12.2
4948
- 21.06.1
50-
- 21.12.3
5149
- 21.12.4
52-
- 21.12.2
50+
- 22.06
5351

5452
steps:
5553
- name: Checkout
5654
uses: actions/checkout@v2
5755

58-
- name: Set up JDK 1.8 for NetBeans Dependencies build
59-
uses: actions/setup-java@v1
60-
with:
61-
java-version: 1.8
62-
63-
- name: Print Versions
64-
run: mvn -version && ant -version
65-
6656
- name: Cache Maven packages
6757
uses: actions/cache@v1
6858
with:
6959
path: ~/.m2
7060
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
7161
restore-keys: ${{ runner.os }}-m2
7262

73-
- name: Generate NetBeans Dependencies
74-
shell: bash
75-
run: |
76-
bin/install-artifacts.sh /tmp/install/${{ matrix.version }}
77-
7863
- name: Set up JDK 11 for Build
7964
uses: actions/setup-java@v1
8065
with:
8166
java-version: '11'
8267

68+
- name: Print Versions
69+
run: mvn -version && ant -version
70+
8371
- name: Build
8472
shell: bash
8573
run: |

.github/workflows/test-against-snapshot.yml

Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -52,31 +52,21 @@ jobs:
5252
- name: Checkout
5353
uses: actions/checkout@v2
5454

55-
- name: Set up JDK 1.8 for NetBeans Dependencies build
56-
uses: actions/setup-java@v1
57-
with:
58-
java-version: 1.8
59-
60-
- name: Print Versions
61-
run: mvn -version && ant -version
62-
6355
- name: Cache Maven packages
6456
uses: actions/cache@v1
6557
with:
6658
path: ~/.m2
6759
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
6860
restore-keys: ${{ runner.os }}-m2-snapshots
6961

70-
- name: Generate NetBeans Dependencies
71-
shell: bash
72-
run: |
73-
bin/install-artifacts.sh /tmp/install/${{ matrix.branch }}
74-
7562
- name: Set up JDK 11 for Build
7663
uses: actions/setup-java@v1
7764
with:
7865
java-version: '11'
7966

67+
- name: Print Versions
68+
run: mvn -version && ant -version
69+
8070
- name: Build Coherence Snapshot
8171
shell: bash
8272
env:

README.adoc

Lines changed: 15 additions & 93 deletions
Original file line numberDiff line numberDiff line change
@@ -27,17 +27,19 @@ questions.
2727
image::https://oracle.github.io/coherence/assets/images/logo-red.png[Coherence CE]
2828

2929
image:https://github.com/oracle/coherence-visualvm/workflows/Java%20CI%20-%20Released%20versions/badge.svg[CI Build]
30+
image:https://img.shields.io/github/v/release/oracle/coherence-visualvm[Release]
31+
image:https://sonarcloud.io/api/project_badges/measure?project=oracle_coherence-visualvm&metric=alert_status[Sonarcloud]
3032

3133
The Coherence-VisualVM Plugin (the Plugin) provides management and monitoring of a single Coherence cluster using the VisualVM management utility.
3234

3335
The Plugin aggregates Coherence MBean data and shows a concise operational view of a single Coherence cluster.
3436
Some management information is presented over time, which allows real-time analysis and troubleshooting.
35-
You can connect to clusters via JMX or via management over REST with Coherence versions 14.1.1 or above.
37+
You can connect to clusters via JMX or via management over REST with Coherence versions 12.2.1.4 or above.
3638

3739
The Plugin is an ideal tool for monitoring and managing Coherence clusters during the development and testing lifecycle and supports connecting to both
3840
Community Edition and Commercial versions of Coherence.
3941

40-
NOTE: This version of the Plugin requires VisualVM release 2.0.6 or later which is available from https://visualvm.github.io/.
42+
NOTE: This version of the Plugin requires VisualVM release 2.1 or later which is available from https://visualvm.github.io/.
4143

4244
image::assets/coherence-visualvm.png[Coherence VisualVM Plugin,800,479]
4345

@@ -56,9 +58,9 @@ image::assets/coherence-visualvm.png[Coherence VisualVM Plugin,800,479]
5658

5759
The Plugin will connect to and display data for the following Coherence versions:
5860

59-
**Community Editions**: 14.1.1.0.x, 20.06.x, 20.12.x, 21.06.x and 21.12.x
61+
**Community Editions**: 14.1.1.0.x, 20.06.x, 20.12.x, 21.06.x, 21.12.x and 22.06.x
6062

61-
**Commercial Editions**: 14.1.1.0.x, 12.2.1.5.x, 12.2.1.4.x, 12.1.3.x, 12.1.2.x and 3.7.1.x
63+
**Commercial Editions**: 14.1.1.0.x, 12.2.1.5.x, 12.2.1.4.x, 12.1.3.x, 12.1.2.x and 3.7.1.x (Support will be dropped for versions 12.1.3.x and older in an upcoming release)
6264

6365
NOTE: If you wish to connect to Coherence version 12.2.1.4.x via REST you should have Coherence version 12.2.1.4.7 or greater.
6466

@@ -85,7 +87,7 @@ Other useful resources:
8587
* https://coherence.community/[The Coherence Community - All things Coherence]
8688
* https://visualvm.github.io/[VisualVM Home Page]
8789
* https://github.com/oracle/coherence[Coherence Community Edition on GitHub]
88-
* https://github.com/oracle/coherence/tree/master/examples[Various Coherence Examples]
90+
* https://coherence.community/latest/22.06/docs/#/examples/README[Various Coherence Examples]
8991
* https://github.com/oracle/coherence-operator[The Coherence Operator - Run your clusters in Kubernetes]
9092

9193
[#connect]
@@ -186,7 +188,7 @@ There are tool tips for each of the preferences, but a summary is shown below.
186188
| Enable Zoom on Graphs | false | Enables additional zoom function for all graphs.
187189
| Enable Cluster Snapshot tab | false | Enables experimental Cluster Snapshot tab. This tab is useful for seeing all the relevant cluster information on one pae in a text format.
188190
| Enable Cluster Heap Dump | false | Enables the cluster heap dump button on the Cluster Overview tab.
189-
| Analyze Unavailable Time in LogFile| | Provides the ability to analyze log files where Partition Events Logging has been enabled for logs generated from Coherence versions 21.06 and above. See https://coherence.community/21.06/docs/#/docs/core/07_partition_events_logging[here] for more details. Note: You select a Coherence log file to analyze and don't need to be connected to a running cluster.
191+
| Analyze Unavailable Time in LogFile| | Provides the ability to analyze log files where Partition Events Logging has been enabled for logs generated from Coherence versions 21.06 and above. See https://docs.oracle.com/pls/topic/lookup?ctx=en/middleware/standalone/coherence/14.1.1.2206/release-notes&id=COHDG-GUID-41F5341C-0318-41B2-AEBF-B9DB7FBF25E7[here] for more details. Note: You select a Coherence log file to analyze and don't need to be connected to a running cluster.
190192
!===
191193

192194
[#capabilities]
@@ -213,26 +215,21 @@ Depending upon the edition and functionality you are using, the following option
213215
* **Elastic Data** - If your cluster is configured with Elastic Data, this tab displays graphs and information about RAM Journal and Flash Journal usage. You can click on each of the usage bars to show detailed node information
214216
* **JCache** - If your cluster is being used to store JCache caches, this tab displays JCache "Management" and "Statistics" MBean information regarding the configured caches.
215217
* **HotCache** - If your cluster contains HotCache node(s), then this tab lists the running HotCache instances. If you select an instance, on the next data refresh the console will display statistics and graphs for the operations performed. You may click on tabs and cache-ops to see further fine-grained information.
216-
* **gRPC Proxies** – If you cluster is configured with gRPC Proxies, this tab displays information about the requests sent and received as well as successful and failed requests. A Graph of message rates and durations is also displayed. This tab will only show when connected via JMX and is not supported for REST connections.
218+
* **gRPC Proxies** – If your cluster is configured with gRPC Proxies, this tab displays information about the requests sent and received as well as successful and failed requests. A Graph of message rates and durations is also displayed. This tab will only show when connected via JMX and is not supported for REST connections.
219+
* **Health** – If your cluster supports the Health Check API, this tab displays information regarding the status of all health endpoints.
217220

218221
[#build]
219222
== Building the Plugin
220223

221-
If you wish to build the Plugin from scratch you need to build the VisualVM dependencies first.
222-
To build the plugin is a two-step process:
223-
224-
1. Generate the VisualVM dependencies
225-
2. Build the Coherence VisualVM Plugin
224+
If you wish to build the Plugin from scratch please follow the instructions below.
226225

227226
=== Pre-requisites
228227

229228
You must have the following:
230229

231-
1. Java JDK 1.8 - To build VisualVM dependencies
232-
2. Java JDK 11+ - To build and test the plugin
233-
3. Ant version >= 1.9.9
234-
4. Maven 3.6.3+
235-
5. Git
230+
1. Java JDK 11+ - To build and test the plugin
231+
2. Maven 3.6.3+
232+
3. Git
236233

237234
=== Clone the Repository
238235

@@ -243,81 +240,6 @@ You must have the following:
243240
$ git clone https://github.com/oracle/coherence-visualvm.git
244241
----
245242

246-
=== Generate the VisualVM dependencies
247-
248-
NOTE: These instructions have been summarized from https://github.com/oracle/visualvm/blob/release204/README.md.
249-
250-
NOTE: A Script `install-artifacts.sh` is available in the `bin` directory to run this for a Linux/Mac environment.
251-
252-
1. Ensure you have JDK8 in you PATH.
253-
254-
2. Checkout the VisualVM repository
255-
+
256-
[source,shell]
257-
----
258-
$ git clone https://github.com/oracle/visualvm.git
259-
260-
Cloning into 'visualvm'...
261-
----
262-
263-
3. Checkout the `release204` branch
264-
+
265-
[source,shell]
266-
----
267-
$ cd visualvm
268-
269-
$ git checkout release204
270-
271-
Switched to a new branch 'release204'
272-
----
273-
274-
4. Unzip the NetBeans Platform 11.3
275-
+
276-
[source,shell]
277-
----
278-
$ cd visualvm
279-
280-
$ unzip nb113_platform_19062020.zip
281-
----
282-
283-
5. Build the Plugins
284-
+
285-
[source,shell]
286-
----
287-
$ ant build-zip
288-
----
289-
290-
6. Unzip the artefacts
291-
+
292-
[source,shell]
293-
----
294-
$ cd dist
295-
296-
$ unzip visualvm.zip
297-
298-
$ cd ..
299-
----
300-
301-
7. Generate the NBM's
302-
+
303-
[source,shell]
304-
----
305-
$ ant nbms
306-
----
307-
308-
8. Install into the local repository
309-
+
310-
[source,shell]
311-
----
312-
$ mvn -DnetbeansInstallDirectory=dist/visualvm \
313-
-DnetbeansNbmDirectory=build/updates \
314-
-DgroupIdPrefix=org.graalvm.visualvm \
315-
-DforcedVersion=RELEASE204 org.apache.netbeans.utilities:nb-repository-plugin:populate
316-
----
317-
318-
NOTE: See https://github.com/oracle/visualvm/blob/release204/README.md[here] for instructions on how to
319-
push the artefacts to a remote Maven repository.
320-
321243
==== Build the VisualVM Plugin
322244

323245
1. Ensure you have JDK11 or above in your PATH.
@@ -335,7 +257,7 @@ If you wish to run the Community Edition tests then leave out the `-DskipTests`.
335257

336258
3. Install the Plugin
337259
+
338-
The plugin will be available in the location `coherence-visualvm-plugin/target/coherence-visualvm-plugin-{version}`
260+
The plugin will be available in the location `coherence-visualvm-plugin/target/coherence-visualvm-plugin-{version}.nbm`
339261

340262
Follow the instructions https://docs.oracle.com/en/middleware/standalone/coherence/14.1.1.0/manage/using-jmx-manage-oracle-coherence.html[here]
341263
to install the plugin manually.
151 KB
Loading

coherence-visualvm-plugin/pom.xml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
<parent>
3434
<groupId>com.oracle.coherence.plugin.visualvm</groupId>
3535
<artifactId>coherence-visualvm-main</artifactId>
36-
<version>1.3.1-SNAPSHOT</version>
36+
<version>1.4.0-SNAPSHOT</version>
3737
<relativePath>../pom.xml</relativePath>
3838
</parent>
3939

@@ -55,7 +55,7 @@
5555
<artifactId>org-graalvm-visualvm-uisupport</artifactId>
5656
</dependency>
5757
<dependency>
58-
<groupId>org.graalvm.visualvm.api</groupId>
58+
<groupId>org.netbeans.api</groupId>
5959
<artifactId>org-openide-awt</artifactId>
6060
</dependency>
6161
<dependency>
@@ -79,23 +79,23 @@
7979
<artifactId>org-graalvm-visualvm-tools</artifactId>
8080
</dependency>
8181
<dependency>
82-
<groupId>org.graalvm.visualvm.api</groupId>
82+
<groupId>org.netbeans.api</groupId>
8383
<artifactId>org-openide-modules</artifactId>
8484
</dependency>
8585
<dependency>
86-
<groupId>org.graalvm.visualvm.api</groupId>
86+
<groupId>org.netbeans.api</groupId>
8787
<artifactId>org-openide-util</artifactId>
8888
</dependency>
8989
<dependency>
90-
<groupId>org.graalvm.visualvm.api</groupId>
90+
<groupId>org.netbeans.api</groupId>
9191
<artifactId>org-openide-dialogs</artifactId>
9292
</dependency>
9393
<dependency>
94-
<groupId>org.graalvm.visualvm.api</groupId>
94+
<groupId>org.netbeans.api</groupId>
9595
<artifactId>org-openide-windows</artifactId>
9696
</dependency>
9797
<dependency>
98-
<groupId>org.graalvm.visualvm.api</groupId>
98+
<groupId>org.netbeans.api</groupId>
9999
<artifactId>org-netbeans-modules-options-api</artifactId>
100100
</dependency>
101101
<dependency>

0 commit comments

Comments
 (0)