I would like to add pppoe-out1 uptime to this script…
:local ifaceMac [/interface get [/interface find name=$locatorIface] mac-address]
:local cpuLoad [/system resource get cpu-load]
:local freeMemory [/system resource get free-memory]
:local usedMemory ([/system resource get total-memory] - $freeMemory)
:local rosVersion [/system package get value-name=version \
[/system package find where name ~ "^routeros"]]
:local model [/system routerboard get value-name=model]
:local serialNumber [/system routerboard get value-name=serial-number]
Best line of code I can find is…
:local up; interface pppoe-client monitor pppoe-out1 once do={:set up $uptime;};
Is this the best way to declare uptime and if so can someone please assist in getting the format similar to original code (as this doesn’t work):
:local up [/interface pppoe-client monitor pppoe-out1 once do={:set up $uptime;}]
…
{
:local locatorIface "ether1"
/interface
:local ifaceMac [get $locatorIface mac-address]
/system resource
:local cpuLoad [get cpu-load]
:local totalMemory [get total-memory]
:local freeMemory [get free-memory]
:local usedMemory ($totalMemory - $freeMemory)
:local boardName [get board]
:local rosVersionFull [get version]
:local rosVersion [:pick [get version] 0 [:find [get version] " "]]
/system routerboard
:local model [get model]
:local serialNumber [get serial-number]
/interface pppoe-client
:local pppoeUptime ([monitor pppoe-out1 once as-value]->"uptime")
:put "ifaceMac $ifaceMac"
:put "cpuLoad $cpuLoad%"
:put "totalMemory $totalMemory / usedMemory $usedMemory / freeMemory $freeMemory"
:put "board $boardName (model $model)"
:put "serialNumber $serialNumber"
:put "rosVersion $rosVersion (rosVersionFull $rosVersionFull)"
:put "pppoeUptime $pppoeUptime"
}
Thank you @rextended. That’s amazing.