Activate reporter by setting misc_reporter_serv to server name

This commit is contained in:
Raphael Dannecker 2025-04-03 09:57:01 +02:00
parent 7a0174838f
commit e02a1ef28d
3 changed files with 39 additions and 5 deletions

View file

@ -3,6 +3,6 @@ misc_avoid_suspend: true
misc_pwroff: true
misc_pwroff_idle: true
misc_pxe_first: false
misc_reporter: false
misc_reporter_serv: ""
misc_clonescreen: false
misc_clonescreen_mode: "1920x1080@60"

View file

@ -162,10 +162,11 @@
# Install reporter
- name: Copy reporter
ansible.builtin.copy:
src: reporter
ansible.builtin.template:
src: reporter.j2
dest: /usr/local/sbin/
mode: '0755'
when: misc_reporter_serv | length > 0
- name: Provide services and timers for reporter
ansible.builtin.copy:
@ -175,13 +176,13 @@
loop:
- reporter.service
- reporter.timer
when: misc_reporter
when: misc_reporter_serv | length > 0
- name: Enable reporter.timer
ansible.builtin.systemd:
name: reporter.timer
enabled: true
when: misc_reporter
when: misc_reporter_serv | length > 0
# Prepare CloneScreen on Presenter PCs

View file

@ -0,0 +1,33 @@
#!/usr/bin/bash
#
# Send stdout of some commands to monitoring server.
# Collect the reports with 'nc -u -k -l 1234' on 'sendto'.
# Use /bin/nc.openbsd, /bin/nc.traditional seems not to work.
#
set -eu
sendto="{{ misc_reporter_serv }} 1234"
n=0
cmds=(
'uname -a'
'tail -1 /var/local/ansible-stamps'
'ip route list default'
'ip link show | \
sed -nE -e "s/^[2-9]: (\S+): .+/\1/p" -e "s/.+ether ([0-9a-f:]+) .+/\1/p" | \
paste - -'
)
# 'w'
# 'uptime'
# 'ls -d --full-time /home/ansible/.ansible/tmp/'
# 'ip addr show'
# 'apt list --upgradeable -o Apt::Cmd::Disable-Script-Warning=true'
r="$HOSTNAME ------- $(date --rfc-3339=seconds) -------
$(for c in "${cmds[@]}" ; do
n=$(( n + 1 ))
echo -n "$n"
eval "$c" | sed 's/^/\t/'
done | sed "s/^/$HOSTNAME /")
## -------------------------------------------------"
echo "$r" | nc -w 1 -u $sendto