jhuckaby / performa

A multi-server monitoring system with a web based UI.
Other
437 stars 22 forks source link

Still in development? #31

Open dheise-rheinenergie-trading-com opened 1 month ago

dheise-rheinenergie-trading-com commented 1 month ago

Hi Joseph,

one short question before I create some new feature requests? Is performa still in developement or is it frozen because of orchestra? I recently stumbled across your lightweight but feature rich monitoring solution which I whould like to use in my private homelab.

Daniel

jhuckaby commented 1 month ago

Hey Daniel!

Thank you for discovering Performa, and your kind words. It is in "maintenance mode", similar to Cronicle. That idea is that Orchestra will completely replace Performa, when it comes out next year.

I may still be able to do small feature requests, but I would much rather spend my time on Orchestra, to get that thing out the door.

But low hanging fruit items, sure 😊

dheise-rheinenergie-trading-com commented 1 month ago

That's what I thought. How do you feel about pull requests? Otherwise I'm thinking about doing a fork and developing something myself again.

current points that struck me:

so far.... but otherwise I quite like Performa... a really cool product

Daniel

jhuckaby commented 1 month ago

Honestly, I would recommend you do a fork at this point. While I GREATLY appreciate the help, I am just way too busy to review pull requests on this project. I'm going to archive it as soon as Orchestra comes out in a few months. Orchestra completely replaces Performa with 100% feature parity (and a lot more).

But if you find bugs, though, I am happy to take a look, as they may affect Orchestra as well.

the login mask is not recognized as a login mask - password managers on iOS do not fill it automatically

I think that's because iOS only autofills passwords on HTTPS sites? And Performa is still plain HTTP? Just a guess. I've honestly never tried to load Performa on iOS.

the IDs for alerts, groups and monitors can be generated automatically (like the event and job IDs in Cronicle)

In Orchestra you are prompted for the title of things first, above the ID field, and then the ID is autogenerated from the title. I guess I could also add a "generate random" button for IDs... 🤔

I miss the copy/duplicate function especially for monitors and alerts - you create many that are very similar

Implemented in Orchestra! 😃

the JSON output of custom commands is not cleaned of unwanted characters, so that data does not run in cleanly and then cannot be monitored (e.g. the characters / or .)

Hmmm, not sure the best way to fix this one. Parsing "dirty" JSON is a very dirty job.

The view of groups sometimes throws the error “No matching monitors for group: XYZ. undefined”

How weird, I've never seen this bug. Maybe some kind of race condition on page load? I'll poke around when I have some time.

Commands that are bound to a special group are not executed. This only works if “all groups” is active

Okay this one seems totally bizarre. I've never encountered this, and I use Performa extensively at my day job. We have hundreds of servers across 20 groups, with tons of custom commands that only run on specific groups. It all works perfectly. I cannot fathom would would cause this on your setup 🤔

Anyway, thank you for the bug reports. I think forking is the best way forward if you want to improve Performa, because 99% of my time is on Orchestra, and this repo is going to be archived in a few short months.

Thanks for your help!

-- Joe

dheise-rheinenergie-trading-com commented 1 month ago

Hi Joe,

I think that's because iOS only autofills passwords on HTTPS sites? And Performa is still plain HTTP? Just a guess. I've honestly never tried to load Performa on iOS.

The password field is in "show" mode by default. So the type of the field is "text" instead of "password", which prevents autofill of the password manager. I fixed it in my fork.

In Orchestra you are prompted for the title of things first, above the ID field, and then the ID is autogenerated from the title. I guess I could also add a "generate random" button for IDs... 🤔

I created a function which generates the needed IDs im my fork.

Implemented in Orchestra! 😃

Next on my own roadmap. ;-)

Hmmm, not sure the best way to fix this one. Parsing "dirty" JSON is a very dirty job.

Ok for me. Not really urgent.

How weird, I've never seen this bug. Maybe some kind of race condition on page load? I'll poke around when I have some time.

Found the reason. There were really no monitors where assigned to a specific group. My fault... 😫

Okay this one seems totally bizarre. I've never encountered this, and I use Performa extensively at my day job. We have hundreds of servers across 20 groups, with tons of custom commands that only run on specific groups. It all works perfectly. I cannot fathom would would cause this on your setup 🤔

Still reproduceable. I have a command assigned to one group: image

The Group has the hostname pattern /.+/ and should catch all hosts image

If I run the satellite with the debug option, I can't see the command: image

Thanks for your help! I thank you!

Daniel

jhuckaby commented 1 month ago

Thank you for all the additional info. I am still unable to reproduce the command / group bug -- just tried it on a test server and it works great -- but I'll keep trying!