get_mesh_info = [] ?
Closed this issue · 11 comments
hello,
dunno if it is to warm at my place or am stupid.
which kind of host i write down there? got 3 avm devices, 2 routers/one in mesh as a "repeater" and one fritzbox 1200 repeater.
Hello @h1ght
the get_mesh_info
parameter expects the host names of the mesh masters to query, as they are given in the devices
list.
Example:
[[inputs.fritzbox]]
devices = [["http://fritz.box:49000", "login", "password"],["http://fritz.repeater:49000", "login", "password"]]
...
get_mesh_info = ["fritz.box"]
...
looks like it created "fritzbox_mesh" once for my repeater this morning. non debug doenst print any mesh measurement yet.
2023/06/12 10:05:35 I! Considering service type: urn:dslforum-org:service:Hosts:1
2023/06/12 10:05:35 I! Invoking SOAP action urn:dslforum-org:service:Hosts:1#X_AVM-DE_GetMeshListPath on endpoint http://fritz.box:49000/upnp/control/hosts ...
2023/06/12 10:05:35 I! Status code: 401
2023/06/12 10:05:35 I! Invoking SOAP action urn:dslforum-org:service:Hosts:1#X_AVM-DE_GetMeshListPath on endpoint http://fritz.box:49000/upnp/control/hosts ...
2023/06/12 10:05:35 I! Status code: 200
2023/06/12 10:05:35 I! Response:<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<s:Body>
<u:X_AVM-DE_GetMeshListPathResponse xmlns:u="urn:dslforum-org:service:Hosts:1">
<NewX_AVM-DE_MeshListPath>/meshlist.lua?sid=aba3acad32390340</NewX_AVM-DE_MeshListPath>
</u:X_AVM-DE_GetMeshListPathResponse>
</s:Body>
</s:Envelope>
2023/06/12 10:05:35 I! Fetching JSON from: http://fritz.box:49000/meshlist.lua?sid=aba3acad32390340
2023/06/12 10:05:38 I! Considering service type: urn:dslforum-org:service:LANEthernetInterfaceConfig:1
2023/06/12 10:05:38 I! Considering service type: urn:dslforum-org:service:LANHostConfigManagement:1
2023/06/12 10:05:38 I! Considering device: WANDevice - FRITZ!Box 7590
2023/06/12 10:05:38 I! Considering service type: urn:dslforum-org:service:WANCommonInterfaceConfig:1
2023/06/12 10:05:38 I! Invoking SOAP action urn:dslforum-org:service:WANCommonInterfaceConfig:1#GetCommonLinkProperties on endpoint http://fritz.box:49000/upnp/control/wancommonifconfig1 ...
2023/06/12 10:05:38 I! Status code: 401
2023/06/12 10:05:38 I! Invoking SOAP action urn:dslforum-org:service:WANCommonInterfaceConfig:1#GetCommonLinkProperties on endpoint http://fritz.box:49000/upnp/control/wancommonifconfig1 ...
2023/06/12 10:05:38 I! Status code: 200
2023/06/12 10:05:38 I! Response:<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<s:Body>
<u:GetCommonLinkPropertiesResponse xmlns:u="urn:dslforum-org:service:WANCommonInterfaceConfig:1">
Ethernet
500000
1000000
Up
<NewX_AVM-DE_DownstreamCurrentUtilization>1819,1141,1791,6919,435,20094410,46245,849,4810,4341,8741,16935,4514,2311,5090,428,617,2477,3999,3435</NewX_AVM-DE_DownstreamCurrentUtilization>
<NewX_AVM-DE_UpstreamCurrentUtilization>813,966,1770,2307,361,203321,14272,744,2161,1670,2539,4283,2105,830,3215,543,374,1357,2444,1899</NewX_AVM-DE_UpstreamCurrentUtilization>
<NewX_AVM-DE_DownstreamCurrentMaxSpeed>20094410</NewX_AVM-DE_DownstreamCurrentMaxSpeed>
<NewX_AVM-DE_UpstreamCurrentMaxSpeed>203321</NewX_AVM-DE_UpstreamCurrentMaxSpeed>
</u:GetCommonLinkPropertiesResponse>
</s:Body>
</s:Envelope>
2023/06/12 10:05:38 I! Invoking SOAP action urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1#GetAddonInfos on endpoint http://fritz.box:49000/igdupnp/control/WANCommonIFC1 ...
got deutsche glasfaser branded fritzbox, i can curl the url, and get some json
The screenshot looks generally good. Only question, why there is only one recording.
What is your exact mesh setup? I mean how are your three fritz devices connected and which ones form a mesh?
The actual mesh info is fetched during this step:
2023/06/12 10:05:35 I! Fetching JSON from: http://fritz.box:49000/meshlist.lua?sid=aba3acad32390340
If you could provide the json delivered via this URL, this might help to debug the actual issue.
I also from time to time noticed for my mesh, that this service stops delivering data. Only after a repeater restart, it worked again.
i had in mind that the switch inbetween may be a problem? its a zyxel XGS1210-12, so far its running the default configuration with now vlans etc. for testing i just had used the mesh master in fritzbox.conf, used the static ip's of the other devices once cause i was to lazy to find the dns for it. i renamed them in the mesh master and it looks like valid dns.
had to grab the mesh via new meshlist.lua=sid=
i'll attach them as txt file.
loggin2.txt
mesh.txt
when ive restarted the mesh master, i briefly glimpsed in the menu that my user doenst have the right permissions, i can try to restart all my devices and use the hardcoded fritzbox user. for my repeater, i cannot setup a user, just using password so ["http://repeat:49000", "", "password"] should be valid?
Yes,
["http://repeat:49000", "", "password"]
is valid. I have to use a similar config for querying my repeater.
Regarding the missing mesh metrics, it is indeed the switch in between. Code currently assumes, there is exactly one hop between mesh master and mesh slave.
While it may be possible to traverse multiple hops in the mesh json, I am not sure you will get any benefit from it.
I use this metric to measure the wifi link quality between my master router and slave repeater (both are linked via wifi). In your setup the master and slaves are connected via cable. The latter results in a stable link anyway (1 Gbit/s). Furthermore while traversing the nodes, the minimum bandwidth between two adjacent nodes defines the overall master slave bandwidth. There is no bandwidth reported for the link between slave repeater/router and switch, requiring some special handling. I am not sure, whether the gained information (1 Gbit/s) is worth the additional complexity.
Ahhhhh it just records the fritz mesh, not the clients. wanted to use this to determine why client x suffers from bad downlink. this would have been awesome.
Let me consider this as a feature request.
yes. if this isnt that much work, may i should learn some stuff.
whats the most interesting part is, why my repeater was written once into influx.
Latest head now contains a new option get_mesh_clients
. If set to true
the data rates of all WLAN clients inside the mesh are recorded.
Furthermore the node link evaluation algorithm has been re-worked and should now also detect and record setup like the one depicted above.
I will test and evaluate the metric over the next days to see whether it is fine as is or any adaption is needed.
i tested it and it works! thank you