mirror of
https://github.com/eworm-de/routeros-scripts
synced 2024-05-14 08:04:19 +00:00
add script 'early-erros'
This commit is contained in:
parent
aedc314519
commit
c8770efd72
3 changed files with 65 additions and 0 deletions
|
@ -154,6 +154,7 @@ Available Scripts
|
|||
* [Use wireless network with daily psk](doc/daily-psk.md)
|
||||
* [Comment DHCP leases with info from access list](doc/dhcp-lease-comment.md)
|
||||
* [Create DNS records for DHCP leases](doc/dhcp-to-dns.md)
|
||||
* [Send notification with early errors](doc/early-errors.md)
|
||||
* [Send backup via e-mail](doc/email-backup.md)
|
||||
* [Wait for configuration und functions](doc/global-wait.md)
|
||||
* [Send GPS position to server](doc/gps-track.md)
|
||||
|
|
42
doc/early-errors.md
Normal file
42
doc/early-errors.md
Normal file
|
@ -0,0 +1,42 @@
|
|||
Send notification with early errors
|
||||
===================================
|
||||
|
||||
[◀ Go back to main README](../README.md)
|
||||
|
||||
Description
|
||||
-----------
|
||||
|
||||
RouterOS supports sending log messages via e-mail or to a syslog server.
|
||||
However this does not work early after boot if network connectivity is not
|
||||
yet established. For example log messages about reboot without proper
|
||||
shutdown may be missed:
|
||||
|
||||
> router rebooted without proper shutdown, probably power outage
|
||||
|
||||
The script collects log messages with severity `error` and sends a
|
||||
notification.
|
||||
|
||||
Requirements and installation
|
||||
-----------------------------
|
||||
|
||||
Just install the script:
|
||||
|
||||
$ScriptInstallUpdate early-errors;
|
||||
|
||||
... and add a scheduler:
|
||||
|
||||
/ system scheduler add name=early-erros on-event=":global WaitTimeSync; / system script { run global-wait; \$WaitTimeSync; run early-errors; }" start-time=startup;
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
The notifications just require notification settings for e-mail and telegram.
|
||||
|
||||
See also
|
||||
--------
|
||||
|
||||
* [Wait for configuration und functions](global-wait.md)
|
||||
|
||||
---
|
||||
[◀ Go back to main README](../README.md)
|
||||
[▲ Go back to top](#top)
|
22
early-errors
Normal file
22
early-errors
Normal file
|
@ -0,0 +1,22 @@
|
|||
#!rsc
|
||||
# RouterOS script: early-errors
|
||||
# Copyright (c) 2020 Christian Hesse <mail@eworm.de>
|
||||
#
|
||||
# send notification with early errors
|
||||
# https://git.eworm.de/cgit/routeros-scripts/about/doc/early-errors.md
|
||||
|
||||
:global Identity;
|
||||
|
||||
:global SendNotification;
|
||||
|
||||
:local ErrCount [ / log print count-only where topics~"error" ];
|
||||
:if ($ErrCount > 0) do={
|
||||
:local Message ("The log on " . $Identity . " contains " . $ErrCount . \
|
||||
" errors after " . [ / system resource get uptime ] . " uptime.\n");
|
||||
:foreach Log in=[ / log find where topics~"error" ] do={
|
||||
:local LogVal [ / log get $Log ];
|
||||
:set Message ($Message . "\n" . [ :tostr ($LogVal->"topics") ] . \
|
||||
" " . ($LogVal->"message"));
|
||||
}
|
||||
$SendNotification ("\E2\9A\A0 Early errors") ($Message);
|
||||
}
|
Loading…
Reference in a new issue