[PATCH] nodewatcher: Add support for layer 3 neighbors

Tim Niemeyer tim at tn-x.org
So Sep 8 16:53:56 CEST 2019


Moin

    BABELS=$(echo dump |nc ::1 33123 | awk '/^add neighbour/ {print "<neighbour>"$5"<outgoing_interface>babel</outgoing_interface></neighbour>"}')                                                                                                

    DATA=$DATA"<clients>$dataclient</clients>"                                                                                                                                                                                                
    DATA=$DATA"<babel_neighbours>$BABELS</babel_neighbours>"                                                                                                                                                                                  
    DATA=$DATA"$dataair" 

Grüße
Tim

Am Sonntag, den 08.09.2019, 13:49 +0200 schrieb Adrian Schmutzler:
> This adds layer 3 neighbors and their cost/penalty values
> to the values sent by alfred and thus makes them available
> in Monitoring.
> 
> Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
> ---
>  src/packages/fff/fff-nodewatcher/Makefile            |  2 +-
>  .../fff/fff-nodewatcher/files/usr/sbin/nodewatcher   | 12
> +++++++++++-
>  2 files changed, 12 insertions(+), 2 deletions(-)
> 
> diff --git a/src/packages/fff/fff-nodewatcher/Makefile
> b/src/packages/fff/fff-nodewatcher/Makefile
> index be5f267a..0ed6684d 100644
> --- a/src/packages/fff/fff-nodewatcher/Makefile
> +++ b/src/packages/fff/fff-nodewatcher/Makefile
> @@ -1,7 +1,7 @@
>  include $(TOPDIR)/rules.mk
>  
>  PKG_NAME:=fff-nodewatcher
> -PKG_RELEASE:=54
> +PKG_RELEASE:=55
>  
>  PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)
>  
> diff --git a/src/packages/fff/fff-
> nodewatcher/files/usr/sbin/nodewatcher b/src/packages/fff/fff-
> nodewatcher/files/usr/sbin/nodewatcher
> index 09f6843d..c9044fe8 100755
> --- a/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> +++ b/src/packages/fff/fff-nodewatcher/files/usr/sbin/nodewatcher
> @@ -12,7 +12,7 @@ if ! lock -n "$lockfile"; then
>  fi
>  trap "lock -u \"$lockfile\"" INT TERM EXIT
>  
> -SCRIPT_VERSION="54"
> +SCRIPT_VERSION="55"
>  
>  #Get the configuration from the uci configuration file
>  #If it does not exists, then get it from a normal bash file with
> variables.
> @@ -291,6 +291,16 @@ crawl() {
>      DATA=$DATA"<batman_adv_originators>$batman_adv_originators</batm
> an_adv_originators>"
>      DATA=$DATA"<batman_adv_gateway_mode>$batman_adv_gateway_mode</ba
> tman_adv_gateway_mode>"
>      DATA=$DATA"<batman_adv_gateway_list>$batman_adv_gateway_list</ba
> tman_adv_gateway_list>"
> +
> +    if [ -s /etc/config/babeld ]; then
> +        BABELS="$(echo dump | nc ::1 33123 | grep '^add neighbour' |
> +            awk -v RS='\n' \
> +                '{r = gensub(/.*add neighbour.*address ([0-9a-fA-
> F:]*) +if +([^ ]+).* cost +([0-9.]+).*/, \
> +                "<neighbour><ip>\\1</ip><outgoing_interface>\\2</out
> going_interface><link_cost>\\3</link_cost></neighbour>", "g"); print
> r;}')"
> +
> +        DATA=$DATA"<babel_neighbours>$BABELS</babel_neighbours>"
> +    fi
> +
>      DATA=$DATA"<client_count>$client_count</client_count>"
>      DATA=$DATA"<clients>$dataclient</clients>"
>      DATA=$DATA"$dataair"



Mehr Informationen über die Mailingliste franken-dev