Commit Graph

53 Commits

Author SHA1 Message Date
532f55d640 fix idle in transaction
It happend all the time, that connections were hanging in idle in
transaction state.
This was caused by a rollback stuck behind a sleep loop to wait for the
next bunch of checks to run.

This also replaces a Query() call with QueryRow, as we only expect a
single row and this cleans up the code a bit.
2019-04-09 09:51:52 +02:00
e5ac5a4e53 move monfront to separate repository
Monfront was forked into its own repository to make it easier to work
on.
2019-03-13 14:29:50 +01:00
361ca94ca3 monfront - fix group list
It was possible that a node was showing multiple times when it had more
than one check. That wasn't the purpose of that list.
Now each node only comes up once and its worst state is shown.
2019-03-08 16:45:28 +01:00
bef2cfa349 monfront - enable jumping from groups to checks
This allows to view all the important checks for a group much easier.
2019-03-08 15:18:12 +01:00
bb48d9387b monfront - add link to list checks from a group 2019-03-08 14:41:38 +01:00
c9a990513a monfront - final fix for select all
There was an issue with the select all in that clicking an input field
didn't trigger the marking as the event was not pushed through to the
underlying elements.
2019-01-24 18:09:20 +01:00
aff501bebc monfront - add select all
This commit adds a select all function to select all rows of a list to
mark them all.
This could be used to send a refresh to all these checks or acknowledge
them or whatever.

Also the referrer handling in checkAction() was moved to the start so
that even with an error the same thing happens.
2019-01-24 15:37:43 +01:00
b1746c6626 monfront - fix check id variable name
The field name was wrong and therefore actions weren't completed and the
redirect was wrong.
2019-01-24 13:30:05 +01:00
80b7d7cbe4 monfront - firefox has no event.path
Because Firefox has no attribute path for an event to represent the
element chain of the target, we need to iterate through the parents.
2019-01-24 12:01:21 +01:00
02e838e2fe monfront - add highlight to selected rows
The selected rows are now properly highlighted. See #7 for more
information.
2019-01-24 11:41:18 +01:00
18e4ba6ae4 monfront - add line select
As in #7 requested, it is now possible to select a row by clicking on
the row itself. This should make it much easier to select a larger
number of rows.
2019-01-24 11:26:26 +01:00
e8e67f091a monfront - link to node checks from check detail
This way it is possible to jump between a node and its checks.
2019-01-24 09:25:00 +01:00
a9634bbcaa monfront - fix referer
Somewhen in the last couple years, something called a referer policy was
introduced. This avoided the correct relocation after any action was
sent.
Now with the fix, the redirect properly works.
2019-01-24 09:18:46 +01:00
6a5c0b92bd monfront - add notifications to check details
This adds the first basic listing of notifications to the check details.
No idea how many of them should be listed here, but having the list at
all for a start should be okay.
2019-01-11 23:02:58 +01:00
aed518ea76 monfront - remove showNode and showGroup
There is just no information that could possibily be shown there, that
isn't already shown somewhere else.
2019-01-11 19:54:06 +01:00
203ca756e1 monfront - send an okay notification when check is acknowledged
When a check is acknowledged, no more further notifications should be
sent. But for the notified system, it should be made clean, that it is
taken care of and no further actions need to be done, therefore send an
okay, even when the check isn't okay.
2019-01-11 13:03:07 +01:00
7ed255d591 moncheck - add hostname to notifications
This can help with determining which exact check connection broke the
check.
2019-01-11 13:02:37 +01:00
f804446ad3 monfront - fix group order
The adding of the order by clause happend in the wrong position and
therefore made the resultset unuseable.
2019-01-10 09:50:18 +01:00
73c7353082 monfront - sort result list
The result list should be ordered for the state when unhandled entries
should be returned. Else it is getting weird to figure out, which issue
is the most important to fix.
2019-01-10 07:10:02 +01:00
ea658177ee monfront - add hover background color
With some monitors, the view may be too wide to make out, which line
belongs to what. For that purpose, add a background color when the mouse
is hovering over a line.
2019-01-10 05:50:02 +01:00
bfe455d936 monfront - add css to make check detail view nicer
Now all the fields are shown in a column like view, which makes viewing
them much nicer to the eye.
2019-01-10 05:48:25 +01:00
96d853fad6 monfront - add check detail view
This adds a detail view for a single check. The purpose is to view
notifications for this check alone and get the context information on
the node it belongs to, the command and settings.
2019-01-09 20:17:49 +01:00
3b222e06ed moncheck - make workers configurable
The default worker count was set to 25, which might be too much
depending on the amount of cores available. Now make the default 25 and
let people decide on how many they want to use.
2019-01-07 15:50:55 +01:00
7c541189fe monfront - fix actions on checks
This is related to #6. The muting, enable and disable were not working
properly, because the date was not set when the check was updated.

With this comes also the first icon to represent the muted status.
2019-01-03 19:48:17 +01:00
db3a7cdda9 monfront - add some cleanup and search
Monfront now has a basic search functionality for nodes. It also got
some nicer design to make it more useable.
2019-01-03 13:44:21 +01:00
c646179fa9 monfront - show groups
This is the first step to view the group status. The templates were
split into multipe parts, to make reuse easier.
2019-01-02 16:09:04 +01:00
887e8ea089 monfront - fix mute options
After the notifications were extracted the mute option didn't work
anymore. With this fix, they are back to working.
2018-12-14 19:52:21 +01:00
17457f0e53 monwork - add more tests to the fields function 2018-12-14 14:04:48 +01:00
10fb89a017 monwork - readd stringToShellFields
This function was needed as bytes.Fields had some problems with the
quoting.
Now there are test cases too so that errors can be found more easily.
2018-12-14 14:02:58 +01:00
ff79584084 monwork - bytes.Fields works well enough
This function existed to group fields together, but it had an issue and
grouped them wrongly. This caused issues later in the check stage.
2018-12-13 16:20:42 +01:00
82e582f022 monwork - add missing continues
This can lead to longer run times than necessary.
2018-12-13 15:37:03 +01:00
e151f056ad monfront - remove notify flag
This will be replaced with a different system in the long term.
2018-12-12 14:06:16 +01:00
affbe8c420 moncheck - log the state which wasn't found 2018-12-12 14:05:46 +01:00
6beb37eb96 monwork - ignore missing notify column
The notify column was removed when moving everything into the
notification tables.
2018-12-12 13:26:41 +01:00
af843d76e1 moncheck - move notifications to dedicated table
It would be nice to support multiple notification mechanisms with a way
to disable all or part of them. So for now, this is bound to the check
but may change again in the future.

Apart from that, all notifications get written to the notification
table, so that the notifiers can do their job and ACK their own
notifications.
2018-12-11 20:21:14 +01:00
feee448af6 monfront - add missing column to unhandled checks
The unhandled checks didn't contain the mapping id, which caused an
error at scan time.
2018-12-11 13:33:06 +01:00
564ec5c2a3 monfront - add a timeout with reload
This finally adds a reload to the frontend, so that one hasn't to reload
manually all the time.
2018-12-11 13:25:01 +01:00
02925bc335 moncheck - add alarm mapping to notification
This should enable the notifier to make a decent decision on what to do.
2018-12-11 13:24:13 +01:00
24456400eb moncheck - add mapping levels
This adds mapping levels to the check runner. When the exit code is
returned, the actual level is looked up using the configured mapping.
After that, the state is entered into the table and added the same way
to the notifications.
2018-12-11 13:02:23 +01:00
dece1ac2dc add level mappings
This allows to map the command exit codes to any other output level
which can then be reported by the notification plugin.
With the provided colors, the frontend will show them accordingly.
2018-12-11 12:37:30 +01:00
c62916c46e monwork - make updates for nodes and commands
This change triggers updates for checks when a node or command was
updated. This way everything gets adjusted without much work.
2018-12-11 09:25:45 +01:00
a6ac232392 monwork - fix an issue with configuration generation
New checks were not added to the active_checks, because they were never
touched before.
2018-12-10 09:35:49 +01:00
6c2bea5365 monfront - make fake groups in frontend
It would have been nice to use rowgrouping for the node name, but
somehow it wasn't easy to get the rowcount. So this should do for now.
2018-12-10 09:34:45 +01:00
40e744cd6a moncheck - add PATH environment
This adds the path environment configuration to control which programs
to call.
2018-12-10 09:34:00 +01:00
3400167c98 monfront - add initial work for unhandled links
This will return the unhandled groups/checks/whatever but is still work
in progress.
2018-11-29 10:56:20 +01:00
83a1b45b19 moncheck - add timeout option
Before the timeout for checks was static. With this change it is finally
an option to configure.
2018-11-29 10:45:33 +01:00
3b8e27706b monfront - add initial version
This version can already show the list of checks, their last state and
add ways to manipulate the check or active check.
2018-11-20 21:48:16 +01:00
ddc0053ce8 moncheck - add function to remove acknowledge
An acknowledge should be set to false when the alarm switches to an ok
state.
2018-11-20 21:47:35 +01:00
b7cacc928f remove debug output
This output was poluting the log and wasn't necessary.
2018-11-19 11:30:29 +01:00
4db00b00ed moncheck: fix error reporting of daedlines
The deadlines were wrong all over the place, so this commit finally
fixes that.
2018-11-18 21:38:04 +01:00