Aruba Apps

last person joined: 3 days ago 

The HPE Aruba Networking Apps board is designed to address questions, comments, and feature requests for all HPE Aruba Networking mobile Apps

ALE 1.X Client Location Debugging Tips and Hacks

This thread has been viewed 0 times
  • 1.  ALE 1.X Client Location Debugging Tips and Hacks

    Posted Dec 22, 2015 04:14 AM
      |   view attached

    Hello Everyone,

                              Please find the  below  Client Location Troubleshooting Steps. This can be used in

    ALE 1.0, 1.1,1.2 and  1,3 versions. 

     

     

    Debug Steps for ALE Client Location

     

    1. Healthy check of ALE server, make sure all services are up and running:

    [root@ale ~]# /etc/init.d/locationserver status

    Checking license_server...              Running with pid 23443.

    Checking ls.py...                                Running with pid 23460.

    Checking webconfig.fcgi...              Running with pid 23503.

    Checking ls_analytics.py...             Running with pid 23486.

    [root@ale ~]# /etc/init.d/ale-webapps status

    Checking Redis server:                  Running with pid 4288.

    Checking Redis server:                  Running with pid 4327.

    Checking Redis server:                  Running with pid 4366.

    Checking Redis server:                  Running with pid 4405.

    Checking Redis server:                  Running with pid 4444.

    Checking nbapi-0.0.1-SNAPSHOT.jar:      Running with pid 12900.

    [root@ale ~]# /etc/init.d/meridian-tunnel status

    Checking wstunnel-0.0.1-SNAPSHOT.jar:   Running with pid 15108

    15109.

    From ALE CLI, make sure configured controller is showing up as Enabled:

    [root@ale ~]# ls_cli.py

    lscli>

    lscli> getcontrollers

    ======================================================

    #  Controller IP         Enabled        AMON Thread Number 

    ======================================================

    0  10.11.0.10             Yes   0

    1  10.11.0.11             No    1

    2  10.73.16.50           No    2

    ======================================================

    Other useful CLI cmds to check maps/aps: campus_show, floor_show, ap_show

                        ALE configure file:  /opt/ale/etc/locationserver.conf

     

                            openssl s_client  - connect location.meridianapps.com:443

     

    1. Note the mac address of the client under test.

     

    1. Use ls_analytics.py/uicli.py to monitor the client location.

       

    1. From ALE home (/opt/ale/home) directory, start ls_analytics.py and run uiserver start

       

    [root@ale home]# ls_analytics.py -h 1000

    location-analytics>uiserver start

     

    1. In another ALE home window, start uicli.py

    [root@ale home]# uicli.py

    Launching UI CLI

     

    1. Static add the client mac address: (you can add as many as you want here)

    Syntax is : static_add device_name mac_address x y floor_id

    uicli> static_add ipod 60:a4:4c:e5:77:c0 190.94 166.07 floor_1.building_1344

    ipod is in static

    [u'60:a4:4c:e5:77:c0']

     

    note: the x y value is usually the ground truth of the client, but in case of testing moving client, you can give destination ground truth or if you don't know, just type some reasonable x y

     

    1. RUN feed_ploc start from uicli

    [root@ale home]# feed_ploc start

     

    1. Check ls_analytics.py window, if location is calculated, there should be continuously location calculated and printed to the terminal:

               

    location-analytics>

    Starting to process feed tcp://localhost:8989

    PLoc Worker started

    *** out of seq: exp 0 found 119454

    2014-04-01 14:01:00 mac=60:a4:4c:e5:77:c0 x=182.50 y=192.50 v1=45 r1=6c:f3:7f:ec:06:c0 v2=40 r2=6c:f3:7f:eb:e1:e0 v3=38 r3=6c:f3:7f:ec:04:60, n=4.00, k=48.00, ts=2014-04-01-14:01:36 latency=35.679225 max=35.679225

    [(5, '100.00')]

    2014-04-01 14:01:10 mac=60:a4:4c:e5:77:c0 x=187.50 y=192.50 v1=50 r1=6c:f3:7f:ec:06:c0 v2=41 r2=6c:f3:7f:eb:e1:e0 v3=41 r3=6c:f3:7f:eb:4a:60, n=4.00, k=48.00, ts=2014-04-01-14:01:46 latency=35.465411 max=-35.465411

    [(5, '100.00')]

    2014-04-01 14:01:21 mac=60:a4:4c:e5:77:c0 x=187.50 y=192.50 v1=51 r1=6c:f3:7f:ec:06:c0 v2=47 r2=6c:f3:7f:eb:4a:60 v3=43 r3=6c:f3:7f:eb:e1:e0, n=4.00, k=48.00, ts=2014-04-01-14:01:56 latency=34.898509 max=34.898509

    [(5, '100.00')]

    2014-04-01 14:01:31 mac=60:a4:4c:e5:77:c0 x=217.50 y=172.50 v1=47 r1=6c:f3:7f:eb:4a:60 v2=44 r2=6c:f3:7f:ec:06:c0 v3=39 r3=6c:f3:7f:eb:e1:e0, n=4.00, k=48.00, ts=2014-04-01-14:02:06 latency=34.270515 max=34.270515

    [(5, '100.00')]

    2014-04-01 14:01:42 mac=60:a4:4c:e5:77:c0 x=217.50 y=172.50 v1=47 r1=6c:f3:7f:eb:4a:60 v2=45 r2=6c:f3:7f:ec:06:c0 v3=43 r3=6c:f3:7f:eb:e1:e0, n=4.00, k=48.00, ts=2014-04-01-14:02:16 latency=33.759013 max=33.759013

    [(5, '100.00')]

     

    1. From uicli window, type location_show will give you nicer output, including RSSI/Radio, accuracy etc

    uicli> location_show

    *** Needed to change config on uiserver

     

    ipod (15,15):

            mac=60:a4:4c:e5:77:c0 x=217.50 y=172.50 loc=Floor_1.Building_1344.Sunnyvale_CA. err=209 ts=2014-04-01-14:03:56 v1=47 r1=6c:f3:7f:eb:4a:60 v2=45 r2=6c:f3:7f:ec:06:c0 v3=38 r3=6c:f3:7f:eb:e1:e0 n=4.00 k=48.00 actual=8.33

            mac=60:a4:4c:e5:77:c0 x=187.50 y=192.50 loc=Floor_1.Building_1344.Sunnyvale_CA. err=208 ts=2014-04-01-14:03:46 v1=48 r1=6c:f3:7f:ec:06:c0 v2=45 r2=6c:f3:7f:eb:4a:60 v3=40 r3=6c:f3:7f:ec:04:60 n=4.00 k=48.00 actual=8.12

            mac=60:a4:4c:e5:77:c0 x=192.50 y=197.50 loc=Floor_1.Building_1344.Sunnyvale_CA. err=208 ts=2014-04-01-14:03:36 v1=48 r1=6c:f3:7f:ec:06:c0 v2=45 r2=6c:f3:7f:eb:4a:60 v3=41 r3=6c:f3:7f:eb:e1:e0 n=4.00 k=48.00 actual=9.59

            mac=60:a4:4c:e5:77:c0 x=182.50 y=192.50 loc=Floor_1.Building_1344.Sunnyvale_CA. err=209 ts=2014-04-01-14:03:26 v1=47 r1=6c:f3:7f:eb:4a:60 v2=47 r2=6c:f3:7f:ec:06:c0 v3=39 r3=6c:f3:7f:ec:04:60 n=4.00 k=48.00 actual=8.46

            mac=60:a4:4c:e5:77:c0 x=187.50 y=192.50 loc=Floor_1.Building_1344.Sunnyvale_CA. err=207 ts=2014-04-01-14:03:16 v1=49 r1=6c:f3:7f:ec:06:c0 v2=47 r2=6c:f3:7f:eb:4a:60 v3=39 r3=6c:f3:7f:ec:04:60 n=4.00 k=48.00 actual=8.12

     

    1. If you don't get locations in step 3, there are several places to check.

     

    1. On controller, check if APs are receiving probes from the client

    (alpo) #show ap virtual-beacon-report client-mac 60:a4:4c:e5:77:c0

     

    Client not in known station table:60:a4:4c:e5:77:c0

     

    Client MAC:60:a4:4c:e5:77:c0

    Current association :None

    Steer attempts/Success:0/0

    Client Device Type:Unknown

    Current state :Steerable

    Current Time :Apr  1 13:09:25 2014

     

    STA Beacon Report

    -----------------

    AP                       IP address   Radio              ESSID             Signal (dBm)  Last update      Add time         Channel/Clients  Flag

    --                       ----------   -----              -----             ------------  -----------      --------         ---------------  ----

    1344-1-AP07              10.6.66.36   6c:f3:7f:ec:04:60  ethersphere-wpa2  -58           Mar  3 11:11:46  Mar  3 11:03:44  11/3              S

    1344-1-AP11              10.6.66.62   6c:f3:7f:ec:11:00  ethersphere-wpa2  -79           Mar  3 11:11:44  Mar  3 11:03:44  11/1              S

    1344-1-AP01              10.6.66.58   6c:f3:7f:ec:0f:c0  ethersphere-wpa2  -67           Mar  3 11:11:46  Mar  3 11:03:44  1/0               S

    1344-2-AP09              10.6.98.155  6c:f3:7f:e7:60:00  ethersphere-wpa2  -79           Mar  3 11:11:45  Mar  3 11:03:44  11/1              S

    1344-1-AP08              10.6.66.56   6c:f3:7f:ec:08:60  ethersphere-wpa2  -78           Mar  3 11:11:43  Mar  3 11:03:44  6/0               S

    1344-1-AP03              10.6.66.35   6c:f3:7f:eb:4a:60  ethersphere-wpa2  -51           Mar  3 11:11:41  Mar  3 11:03:45  11/3              S

    1344-1-AP04              10.6.66.61   6c:f3:7f:eb:e1:e0  ethersphere-wpa2  -60           Mar  3 11:11:43  Mar  3 11:03:45  1/2               S

    1344-2-AP07              10.6.98.154  6c:f3:7f:e7:47:40  ethersphere-wpa2  -74           Mar  3 11:11:43  Mar  3 11:03:45  1/1               S

     

                pick the AP from the above list and run the following cmd:

    (alpo) # show ap arm client-match probe-report ap-name 1344-1-AP07  | include 60:a4:4c:e5:77:c0

    60:a4:4c:e5:77:c0  36      0      8                     0                        Tue Apr  1 13:11:07 2014

      

    1. Check if ALE is receiving probes from the AMON feed. <Jyothi?>

    From controller side, check if amon feed is being sending out:

     (alpo) #show mgmt-server message-counters process stm

     

                you can enable location and amon log from ALE CLI:

                check the id for each compent using ls_log_get

    lscli> ls_log_get

    main                               id 0   log_level 3

    location                         id 1   log_level 3

    locplot                           id 2   log_level 3

    matrix                            id 3   log_level 3

    amon-decoder             id 4   log_level 3

    bootstrap                      id 5   log_level 3

    mon-parser                   id 6   log_level 3

    lcompr                           id 7   log_level 3

    iap-dec                          id 8   log_level 3

    proto-dec                     id 9   log_level 3

    ble-dec                          id 10  log_level 3

    rtls-decoder                 id 11  log_level 3

    lscli> setloglevel 1,4 4

     

    1. Check the contents of the matrix

    dump_sta will give you some information if the ALE has received any RSSI information for the client

    If you don't see any radio listed or there are less than 3 radios from 3 different APs, and the TRIG counter not increased, but NOT counter is increased,  it indicates there is not enough fresh RSSI for ALE to do triangulation.

    This will need more in-depth debug to check. Possible reasons include AP density not meeting ALE deployment requirement, less than 3 APs in the area, client did not probe etc.

     

    If it is caused by AP density, you can enable single-AP location recipe. Refer to ALE 1.2 User Guide on how to do it.

     

    lscli> dump_sta | grep -A 20 60:a4:4c:e5:77:c0

    S: 60:a4:4c:e5:77:c0 1396387206 1396387006 Floor 1 C: 103 0 STA LOCATED UNASSOC:NIL default:0 15/12 TRIG:35049 NOT:1/Not Enough RSSIs L:1 U:0

            <6c:f3:7f:ec:06:c0, 1344-1-AP05, 6c:f3:7f:c6:c0:6c,  48:2,   0, 1396387247

            <6c:f3:7f:eb:4a:60, 1344-1-AP03, 6c:f3:7f:c6:b4:a6,  47:2,   0, 1396387247

            <6c:f3:7f:eb:e1:e0, 1344-1-AP04, 6c:f3:7f:c6:be:1e,  42:2,   0, 1396387247

            <6c:f3:7f:ec:04:60, 1344-1-AP07, 6c:f3:7f:c6:c0:46,  37:2,   0, 1396387247

            <9c:1c:12:8c:70:20, 1344-2-AP06, 9c:1c:12:c0:c7:02,  35:2,   0, 1396387247

            <6c:f3:7f:ea:39:e0, 1344-1-AP02, 6c:f3:7f:c6:a3:9e,  32:2,   0, 1396387247

            <6c:f3:7f:eb:d2:a0, 1344-1-AP06, 6c:f3:7f:c6:bd:2a,  30:2,   0, 1396387247

            <6c:f3:7f:ec:0f:c0, 1344-1-AP01, 6c:f3:7f:c6:c0:fc,  29:2,   0, 1396387247

            <6c:f3:7f:e7:62:20, 1344-2-AP05, 6c:f3:7f:c6:76:22,  29:2,   0, 1396387247

            <6c:f3:7f:ec:15:a0, 1344-1-AP10, 6c:f3:7f:c6:c1:5a,  25:2,   0, 1396387247

            <6c:f3:7f:eb:e5:20, 1344-2-AP03, 6c:f3:7f:c6:be:52,  23:2,   0, 1396387247

            <6c:f3:7f:e7:47:40, 1344-2-AP07, 6c:f3:7f:c6:74:74,  23:2,   0, 1396387247

            <6c:f3:7f:e7:4d:c0, 1344-2-AP08, 6c:f3:7f:c6:74:dc,  21:2,   0, 1396387247

            <6c:f3:7f:eb:c9:e0, 1344-2-AP02, 6c:f3:7f:c6:bc:9e,  20:2,   0, 1396387247

            <6c:f3:7f:ec:11:00, 1344-1-AP11, 6c:f3:7f:c6:c1:10,  19:2,   0, 1396387247

            <6c:f3:7f:e7:5d:a0, 1344-2-AP01, 6c:f3:7f:c6:75:da,  16:2,   0, 1396387237

            <6c:f3:7f:ec:01:60, 1344-1-AP12, 6c:f3:7f:c6:c0:16,  16:2,   0, 1396387247

            <18:64:72:d7:6c:20, 1344-1-AP09, 18:64:72:c5:76:c2,  13:2,   0, 1396387217

            <6c:f3:7f:ec:08:60, 1344-1-AP08, 6c:f3:7f:c6:c0:86,  13:2,   0, 1396387247

     

    1. Check the logs to see if any clue

    logs can be found at /opt/ale/var/log directory, important one is ls.py/current

                    /opt/ale/var/log/wstunnel-0.0.1-SNAPSHOT.jar/current

     

     

     


    #LocationServices
    #Meridian
    #ALE

    Attachment(s)