zeebe-simple-monitor icon indicating copy to clipboard operation
zeebe-simple-monitor copied to clipboard

feature(ui): service/cluster information and status page

Open nitram509 opened this issue 3 years ago • 14 comments
trafficstars

Hi,

during development, I found it useful, to check cluster version and status. Knowing that this can be done per CLI, seeing this in Simple Monitor helps a lot as well.

~~⚠️ this PR enables Spring Boot Maven Plugin "build-info", in order to bake build information into the "JAR".~~ ~~This is a standard feature by Spring, which is just disabled by default.~~ ~~That said, technically this creates a META-INF/build-info.properties file, which needs to be present in the target ~~"JAR" file OR it should be copied via the Maven "JIB" plugin into the target docker image.~~ ~~Do you know out of your head, if your (image) build pipeline does that?~~ ~~PS: The code is built robust, so that missing file/information will not crash the application's boot process.~~ (see comments)

Next to the actual cluster information (see screenshot), there's a little switch, where anyone can update auto-refresh == automated page reload.

Screenshot 2022-02-15 at 10 55 50

As usual, any feedback is welcome.

nitram509 avatar Feb 15 '22 10:02 nitram509

Unfortunately, I have to flag this as "WiP". In my own Docker image build processes, the build number and time are not correctly autowired in Spring. Hence, the actual maven build information are not shown in the UI.

Will try to find the root cause and report my findings.

Please, keep in mind - I have no working JIB environment - as you have. You might want to give it a try - since my pipeline is a custom one. If you have other ideas, please let me know.

nitram509 avatar Feb 15 '22 13:02 nitram509

I did further testing and I'm glad to report that JIB correctly imports the build-info.properties file.

I did verify, by running

mvn -DskipTests package  jib:dockerBuild

and afterward, spin up a Docker Compose with the snapshot docker image. The application version is correctly shown.

One comment I did add in the CONTRIBUTION.md

nitram509 avatar Feb 15 '22 19:02 nitram509

Apologies for the inconvenience, but I oversaw a broken test. all fixed now.

nitram509 avatar Feb 15 '22 20:02 nitram509

@saig0 I did fix the merge issue already :) Feel free to give your review a new try :)

nitram509 avatar Feb 24 '22 11:02 nitram509

@saig0 thank you for your feedback - I'm glad you like it. I understand you're speaking about the intent of Zeebe Simple monitor to support developers.

Let me share some context of mine. The team I'm working with (can't say who), has Zeebe running in 3 environments (dev, stage, prod). We like the fact it's Open Source and fully operate it on our own in an AWS EKS (VPC). So on top of you mentioning it Simple Monitor supports developers, I would like to add DevOps. When we apply changes to either the cluster or simple monitor, we have no simple feedback via a UI. Yes, I know by using CLI tools one could fetch all facts, but since we have the cluster in a VPC, that's not trivial. We also have added an OAuth Proxy Sidecar to Simple Monitor, to make it public incl. protection.

I also requested a quote from Camunda and after some discussion with Sales, we concluded buying a license for Operate is not possible. Thus, the best alternative for us is to use Simple Monitor.

So overall, this status page is way more than just a gimmick to us ;)

nitram509 avatar Feb 25 '22 09:02 nitram509

@nitram509 please note that I'm on vacation :palm_tree: I'll give feedback as soon as possible.

saig0 avatar Feb 28 '22 12:02 saig0

@nitram509 please note that I'm on vacation 🌴 I'll give feedback as soon as possible.

enjoy the time :)

nitram509 avatar Feb 28 '22 20:02 nitram509

CLA assistant check
All committers have signed the CLA.

CLAassistant avatar Mar 18 '22 08:03 CLAassistant

@nitram509 any updates from your side? Are you still interested? Did you think about my previous comments?

saig0 avatar Mar 30 '22 11:03 saig0

Hi, your ideas are good and I'm still interested. Just need some days longer to find some time to implement ;)

nitram509 avatar Mar 31 '22 19:03 nitram509

@nitram509 thanks for your update! Take your time :+1:

saig0 avatar Apr 01 '22 03:04 saig0

Latest implementation is like see screenshots below (show healthy modal, detected change in orange, unhealthy modal)

Screenshot 2022-10-05 at 23 38 43 Screenshot 2022-10-05 at 23 38 34 Screenshot 2022-10-05 at 23 38 19

nitram509 avatar Oct 05 '22 21:10 nitram509

@saig0 may I ask for a review, please? I did implement almost all of your suggestions and the result looks pretty cool.

Just the version information was some pain in the a**. I landed with creating and manually loading a MANIFEST.

Any Feedback welcome.

nitram509 avatar Oct 05 '22 22:10 nitram509

@nitram509 awesome. :tada: I'll have a look at your PR in the next few days. :eyes:

saig0 avatar Oct 07 '22 04:10 saig0

@saig0 I've merged the latest changes from main and also fix two minor issues.

Since we talked about ... what's your point of view regarding this PR?

The UI looks like this: Screenshot 2022-12-11 at 16 57 32

nitram509 avatar Dec 11 '22 15:12 nitram509

@nitram509 I'll have a look at your PR next week.

saig0 avatar Dec 16 '22 09:12 saig0