Nagiostv React Versions Save

Monitor your Nagios server on a wall mounted TV (or a phone or desktop). Installation instructions are below in the README.md

v0.8.7

1 year ago

Improve scale for larger datasets.

NagiosTV would fetch the full list of hosts and services on the polling interval, and filter for only items that are "not UP" or "not OK" to display the items on the page. On larger Nagios installs with thousands or tens of thousands of items, this created much more data transfer, and more CPU on the server than necessary. Refactored the routines to:

  • Only fetch "not UP" or "not OK" items from the API
  • Make an additional API call to determine "how many hosts" and "how many services" there are in total.

Add a new option automaticScrollWaitSeconds to help control the delay on the automatic scroll feature.

Fix a bug where service comments were showing up on the parent host item.

v0.8.6

1 year ago
  • Add "MiniMap" option to more easily see items that are off the screen. See https://nagiostv.com/ for demo
  • Add Service Group Filters
  • Convert the project to TypeScript. This should help with catching bugs earlier, going forward.

Due to the TypeScript conversion, this is a pretty big update touching a lot of files. If you run into issues, as always, reach out on the Issues tab here.

v0.8.5

1 year ago

At least we can find some peace and happiness in keeping our hosts and services UP and OK

  • TopPanel saveCookie when toggling settings so they persist.
  • Fix Progress bar CSS so its rounded not square.
  • Disable click on items in Demo Mode. The click will try to pop open window to Nagios web ui which does not exist.
  • Show "Connection Refused" error message instantly (instead of only after 3 retries) when there are no items on the page. User is probably doing initial setup, and quicker feedback of the error message would be better.
  • Update deps react-scripts and react 18
  • Trying to fix HistoryChart spacing bugs, episode 10
  • Reduce the top margin on the comment
  • Change the "soft" icon from a spinning circle to a cloud rain icon
  • Disable "Save settings to server" button in Demo mode
  • Highcharts tooltip look better on dark background
  • Highcharts tooltip show hour on hourly chart

v0.8.4

2 years ago
  • Individual toggles for 24 hour chart, and "long" chart. Users may want to see only one of them.
  • Add a new layout option to put Hosts and Services side-by-side or stacked (default)

v0.8.3

2 years ago

If you are updating from 0.7.5 there are some significant updates that you will need to review on 0.8.0, 0.8.1, 0.8.2 and this update.

  • Bump Highcharts to 9.3.2 and highcharts-react-official to 3.1.0
  • Another fix for 24 hour chart padding issue
  • Flynn should smile for 2s when clicked
  • Fix the HistoryChart fake data when demo=true and fakeData is being used. It gets more and more stale by the day. So we need to compensate for that.

v0.8.2

2 years ago

New stuff in this release:

  • Include the IE11 polyfill in the project so it does not need to be fetched from a CDN
  • Progress bars should be linear animation, not ease
  • Increase the number of progress bars which are on the screen at a given time. GPU accelerated progress bars are looking good.
  • A fix for the 24 hour history chart to try and fix the left and right padding we still see from time to time

The new section on top (that did not exist in the previous release 0.7.5) is what is referred to as "Summary" in the settings. You can turn it off in settings if you do not like it. I was thinking it would be good to have a summary section at the top that lets you know, at a glance, what is down. This is especially useful if you have more down items than what will fit on the screen. I'm not in love with the current design of the summary section and this will evolve over time. It should be simple clear and compact.

v0.8.1

2 years ago
  • Refactored the Next Check In progress bars to use scaleX() instead of width to get the work on the GPU as opposed to CPU.
  • Only hide the progress bar if there are more than 20 hosts/services down, up from previous limit of 10. We'll see how the GPU fix does and update this safety net further.
  • Set the document.title from the title set in settings. This will cause the browser page name to match the title name you set. Supports Emoji also.
  • Add some more text on the settings page which options affect client / server CPU.
  • Added back in the version check which was somehow removed during the Recoil refactor.

v0.8.0

2 years ago

The React framework which this project is written on top of, has moved to a new component style known as "functional components" with "react hooks". This release is a pretty large refactor of this project from React class components to this new style. Also, with this version this project is moving to using the Recoil state management library for managing state across the application.

New features in this build:

  • A new "summary" section up top. This section can show a summary of everything that is down that will always be visible no matter how many items are down. You can disable this in settings if you do not like it and want the old look back.
  • Added the ability to quickly choose "how many minutes between checks" on the Dashboard page. You can choose a different polling interval for Hosts, Services, and History/Alerts.
  • Automatic scroll feature. Enabling this will cause the page to scroll top to bottom so that all items can be seen even if they are off the screen. This can be enabled via settings or via a new icon in the top menu bar. I would like to expand the feature set for this feature to have options such as "only scroll when there are more than x items" so the page will be still when there are no items down, but start scrolling when a bunch of things are down. A work in progress and I'd like to hear your feedback.
  • Animated, smoother page transitions when switching from Dashboard, to Settings, to Update, and Info pages.
  • Cleaned up and refined the Settings page
  • Cleaned up and refined the Updates page
  • Previously Flynn (Doom Guy) would get mad only from Service issues. Now he has access to both Host and Service data so will get mad from either.
  • Scroll to Top button - Optimized the scroll detection routine with a debounce. Previously it was running on each pixel moved when scrolling. Now it only fires after a delay when scrolling stops.
  • "Stop notifying me about this version" button on the update page. If NagiosTV is advertising that a new version is available, you can choose to "Skip this version".
  • Link to Hosts and Services by clicking on Alert History items. Clicking on the host name will take you to the Nagios web UI for the host, clicking on the service name will take you to the service page on the Nagios web UI.

Due to the large amount of change in this version, it is a higher risk upgrade. So please try it out, and monitor the page for reliability. If you encounter any issues with this build such as browser crashing, memory leak, or anything else, please reach out to me and I'd like to get any of these issues nailed down. You can always roll back to the previous stable build via the Update page if you run into issues.

v0.7.5

2 years ago

Not sure how this one happened but I'm glad I found it today. The Clock component was updating every 15/1000 seconds. Way too much. Update the timer to only run every 1s, and refactor it to directly write the Clock HTML to the DOM, bypassing React useState(). This should decrease CPU on the NagiosTV page significantly. Sorry for the wasted CPU cycles.

v0.7.4

3 years ago
  • Fix a bug with sort order oldest on service items. Make sort order take effect immediately after its changed.
  • Bump HighCharts for security fix
  • Modify NEMS speaking text to lowercase so it pronounces it better
  • Graphical fixes for all-ok-item some-down-items when in large font mode
  • Add current_attempt / max_attempts inside the soft badge
  • add max_attempts to livestatus.php