-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix trigger in Zabbix 4.0 LTS, add support to systemd 219 (CentOS 7) #37
Open
valerio-bozzolan
wants to merge
8
commits into
MogiePete:master
Choose a base branch
from
valerio-bozzolan:fix-4.0
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
8 commits
Select commit
Hold shift + click to select a range
2263deb
rename files to be shorter and visible from GitHub web
valerio-bozzolan 6bffc92
mention that systemd version 230 is needed
valerio-bozzolan 6bf98f4
set scripts as executables
valerio-bozzolan c8bc432
copy configs to create a legacy version
valerio-bozzolan bf0c09a
old restart check: minor refactor
valerio-bozzolan f6844c4
add support for systemd versions before 230
valerio-bozzolan 65ac4fa
fix trigger for Zabbix 4.0
valerio-bozzolan bd322bf
remove unuseful file, simplified legacy stuff
valerio-bozzolan File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
#!/bin/bash | ||
# | ||
# Version supporting old systemd versions (before 230) | ||
# For example it supports systemd 219 | ||
# | ||
|
||
service="$1" | ||
now=$(date +%s) | ||
|
||
uptime_value_raw=$(systemctl show -p ActiveEnterTimestamp sysinit.target) | ||
|
||
# parse the value that is something like "ActiveEnterTimestamp=SOMETHING" | ||
# https://unix.stackexchange.com/q/728424/85666 | ||
uptime_value=$(echo "$uptime_value_raw" | cut -d"=" -f2) | ||
|
||
# Don't alert if the server has just been restarted | ||
uptime=$(date +%s -d "$uptime_value") | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I've just extracted the variable |
||
if [[ $(( now - uptime)) -lt 180 ]]; then | ||
echo 0 | ||
else | ||
# avoid to use the "--value" since it was introduced only in systemd version 230 | ||
service_start_raw=$(systemctl show -p ActiveEnterTimestamp "$service") | ||
|
||
# parse the value that is something like "ActiveEnterTimestamp=SOMETHING" | ||
# https://unix.stackexchange.com/q/728424/85666 | ||
service_start=$(echo "$service_start_raw" | cut -d"=" -f2) | ||
|
||
service_start_as_epoch=$(date -d "$service_start" +%s) | ||
|
||
[[ $(( now - service_start_as_epoch )) -lt 180 ]] && echo 1 || echo 0 | ||
fi |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now Zabbix 4 checks the
last()=0
. Note that Zabbix 5 also checks that:zabbix-systemd-service-monitoring/Template_App_systemd_Services_v5.xml
Line 75 in d43de7c
I don't know why v4 was
last()<>0
. Probably the related v4 script had different return values than the current version. By the way now it's correct (1 = running, 0 = stopped).