DD-WRT v24
Moderators: Developers, Moderators
DD-WRT v24
Bellow there are templates for DD-WRT v24 (and v23 sp2). The graphs can be seen here http://www.odmon.com/ddwrtv24.php
The graphs created are:
*CPU
*Memory
*Load avg
*Number of associated wireless clients
*SNR of given wireless client
*Interfaces traffic
The template can be run for v23 also, but starting from v23 sp2 you are able to monitor wireless clients.
Unfortunatelly there are some problems with wireless clients info oid implementation, so sometimes you can have some problems. The possible solution and tips can found here http://www.odmon.com/fasttrackdetails.php?id=1
This template is used at http://www.odmon.com for online monitoring of dd-wrt boxes (good solution for those who do not have or cannot run thier own cacti) and were tested by some cacti+dd-wrt users
The php script goes to scripts/ and xml query to resource/snmp_queries/
The graphs created are:
*CPU
*Memory
*Load avg
*Number of associated wireless clients
*SNR of given wireless client
*Interfaces traffic
The template can be run for v23 also, but starting from v23 sp2 you are able to monitor wireless clients.
Unfortunatelly there are some problems with wireless clients info oid implementation, so sometimes you can have some problems. The possible solution and tips can found here http://www.odmon.com/fasttrackdetails.php?id=1
This template is used at http://www.odmon.com for online monitoring of dd-wrt boxes (good solution for those who do not have or cannot run thier own cacti) and were tested by some cacti+dd-wrt users
The php script goes to scripts/ and xml query to resource/snmp_queries/
- Attachments
-
- Example SNR graph, see the link above for all examples
- snr_128.png (31.3 KiB) Viewed 21146 times
-
- DDWRT_v24_template_by_odmon.com.zip
- Templates
- (30 KiB) Downloaded 2773 times
I suspect that it has something to do with shared memory being 0 MB (maybe this isn't normal?). I didn't check the function you use to calculate used memory, I'll have a look at it.
This is what the log shows
This is what the log shows
Code: Select all
01/09/2009 10:35:19 PM - CMDPHP: Poller[0] Host[3] DS[32] SNMP: v1: soprano, dsname: ucd_memTotalReal, oid: .1.3.6.1.4.1.2021.4.5.0, output: 13132
01/09/2009 10:35:19 PM - CMDPHP: Poller[0] Host[3] DS[31] SNMP: v1: soprano, dsname: ucd_memShared, oid: .1.3.6.1.4.1.2021.4.13.0, output: 0
01/09/2009 10:35:19 PM - CMDPHP: Poller[0] Host[3] DS[30] SNMP: v1: soprano, dsname: ucd_memCached, oid: .1.3.6.1.4.1.2021.4.15.0, output: 4928
01/09/2009 10:35:19 PM - CMDPHP: Poller[0] Host[3] DS[29] SNMP: v1: soprano, dsname: ucd_memBuffer, oid: .1.3.6.1.4.1.2021.4.14.0, output: 1524
01/09/2009 10:35:19 PM - CMDPHP: Poller[0] Host[3] DS[28] SNMP: v1: soprano, dsname: ucd_memAvailReal, oid: .1.3.6.1.4.1.2021.4.6.0, output: 732
- Attachments
-
- soprano_mem.png (22.6 KiB) Viewed 21097 times
There are some tricky CDEFs created for this graph in order to allow it be presented like this. I could not find any other mem graph that would show all used add up and total as a background. Please check the graph debug
it should look as attached.
it should look as attached.
- Attachments
-
- Memory detailed. Very nice odmon style :)
- odmon_mem.png (24.89 KiB) Viewed 21075 times
I am seeing the same thing (both v24-sp1 and v24-pre-sp2 (svn11482)) and suspect it has something to do with the CDEFs (see graph below).Devroush wrote:I suspect that it has something to do with shared memory being 0 MB (maybe this isn't normal?). I didn't check the function you use to calculate used memory, I'll have a look at it.
This is what the log showsCode: Select all
01/09/2009 10:35:19 PM - CMDPHP: Poller[0] Host[3] DS[32] SNMP: v1: soprano, dsname: ucd_memTotalReal, oid: .1.3.6.1.4.1.2021.4.5.0, output: 13132 01/09/2009 10:35:19 PM - CMDPHP: Poller[0] Host[3] DS[31] SNMP: v1: soprano, dsname: ucd_memShared, oid: .1.3.6.1.4.1.2021.4.13.0, output: 0 01/09/2009 10:35:19 PM - CMDPHP: Poller[0] Host[3] DS[30] SNMP: v1: soprano, dsname: ucd_memCached, oid: .1.3.6.1.4.1.2021.4.15.0, output: 4928 01/09/2009 10:35:19 PM - CMDPHP: Poller[0] Host[3] DS[29] SNMP: v1: soprano, dsname: ucd_memBuffer, oid: .1.3.6.1.4.1.2021.4.14.0, output: 1524 01/09/2009 10:35:19 PM - CMDPHP: Poller[0] Host[3] DS[28] SNMP: v1: soprano, dsname: ucd_memAvailReal, oid: .1.3.6.1.4.1.2021.4.6.0, output: 732
I am also having problems with the PHP script used by the number of wireless clients. The template as imported has the script running outside of the script server, but includes some script server support bits. I can't get it to work either way with cacti 0.8.7b:
stand-alone
Code: Select all
[set@setsbox cacti]$ php /var/www/html/cacti-0.8.7b/scripts/ddwrt_nmb_wireless_clients.php 192.168.1.1 public 2 161 500
PHP Notice: Undefined variable: config in /var/www/html/cacti-0.8.7b/lib/snmp.php on line 33
Content-type: text/html
X-Powered-By: PHP/4.3.9
2
Code: Select all
[set@setsbox cacti]$ php script_server.php
PHP Script Server has Started - Parent is cmd
/var/www/html/cacti-0.8.7b/scripts/ddwrt_nmb_wireless_clients.php 192.168.1.1 public 2 161 500
WARNING: Function does not exist
- Attachments
-
- DD-WRT memory usage graph
- setswap-memoryusage-graph-problem.png (41.3 KiB) Viewed 20630 times
Here is my version of ddwrt_nmb_wireless_clients re-written in Perl. To install, just replace Data Input Methods->DDWRT Numer of Wireless Clients->Input String
Original
New
Original
Code: Select all
php <path_cacti>/scripts/ddwrt_nmb_wireless_clients.php <hostname> <snmp_community> <snmp_version> <snmp_port> <snmp_timeout>
Code: Select all
perl <path_cacti>/scripts/ddwrt_nmb_wireless_clients.pl <hostname> <snmp_community> <snmp_version> <snmp_port> <snmp_timeout>
- Attachments
-
- ddwrt_nmb_wireless_clients.pl
- ddwrt_nmb_wireless_clients re-written in Perl
- (1.58 KiB) Downloaded 796 times
Hi All
I am busy playing with Cacti and DD-wrt which all seems to be working ok except "the number of wireless clients" i seem to only get a max number of clients of 3 on cacti but when i check the access point there can be 15 - 16 users working through the point, i am also getting drop out on the client numbers ie the graph just drops to 0 and stays there for a while which seems to be the same time the load average peaks
any ideas why
thanks
Paul
I am busy playing with Cacti and DD-wrt which all seems to be working ok except "the number of wireless clients" i seem to only get a max number of clients of 3 on cacti but when i check the access point there can be 15 - 16 users working through the point, i am also getting drop out on the client numbers ie the graph just drops to 0 and stays there for a while which seems to be the same time the load average peaks
any ideas why
thanks
Paul
The snmp implementation for wireless clients is rather poor. I have raised this issue to dd-wrt developers but I don't know if they fixed that.
For temporary solution you can do this:
http://odmon.com/fasttrackdetails.php?id=1
"If at any time graphs will start to show wrong values e.g.that there is one host associated, when there will be none, it means that wl_snmpd.sh (run by snmpd) is working bad. I do not know why is happens, but solution is to restart wl_snmpd.sh from time to time. You can do this by going to Administration - Management and enable such Cron entry:
*/15 * * * * root /usr/bin/killall wl_snmpd.sh
This will kill the wl_snmpd.sh, which then will be run by snmp whenever odmon.com poller ask for snmp value "
Not a nice solution but it works!
For temporary solution you can do this:
http://odmon.com/fasttrackdetails.php?id=1
"If at any time graphs will start to show wrong values e.g.that there is one host associated, when there will be none, it means that wl_snmpd.sh (run by snmpd) is working bad. I do not know why is happens, but solution is to restart wl_snmpd.sh from time to time. You can do this by going to Administration - Management and enable such Cron entry:
*/15 * * * * root /usr/bin/killall wl_snmpd.sh
This will kill the wl_snmpd.sh, which then will be run by snmp whenever odmon.com poller ask for snmp value "
Not a nice solution but it works!
www.odmon.com
Re: DD-WRT v24
Hello, all
I have problem with DDWRT - SNR Data query.
The "ddwrt_assoc_clients.xml" is to "/var/www/cacti/resource/snmp_queries/"
The "ddwrt_nmb_wireless_clients.php " is to "/var/www/cacti/scripts"
I imported the "ddv24 by odmon.com" file from Cacti console.
Any ideas for this issue "+ Error parsing XML file into an array"?
Thanks in advance
I have problem with DDWRT - SNR Data query.
The "ddwrt_assoc_clients.xml" is to "/var/www/cacti/resource/snmp_queries/"
The "ddwrt_nmb_wireless_clients.php " is to "/var/www/cacti/scripts"
I imported the "ddv24 by odmon.com" file from Cacti console.
Any ideas for this issue "+ Error parsing XML file into an array"?
Thanks in advance
Code: Select all
+ Running data query [10].
+ Found type = '3' [SNMP Query].
+ Found data query XML file at '/var/www/cacti/resource/snmp_queries/ddwrt_assoc_clients.xml'
+ Error parsing XML file into an array.
+ Found data query XML file at '/var/www/cacti/resource/snmp_queries/ddwrt_assoc_clients.xml'
+ Found data query XML file at '/var/www/cacti/resource/snmp_queries/ddwrt_assoc_clients.xml'
+ Found data query XML file at '/var/www/cacti/resource/snmp_queries/ddwrt_assoc_clients.xml'
-
- Posts: 1
- Joined: Sat Mar 12, 2016 4:32 am
Re: DD-WRT v24
Hi All,
I'm just reopening an old topic here.
I have a fresh Cacti install , on which I tested few DDWRT54 template which were not providing good results.
Testing this one, I was able to have at some point some graph for the interfaces ...
I tried other templates after but definitly , this one is the best one.
I deleted all data sources, templates, devices ref ...
Reinstalled the different templates but I can't get working the interfaces anymore ...
Few points I double checked :
As it is SNMP, using the SNMP Interface query is working ( I'm able to get some graph from my switch )
I'm able to connect to the DDWRT and get some stats as I have CPU, Load... without any problem
In debug/verbose mode, I can see some results :
SNMP - Interface Statistics (Verbose Query) Uptime Goes Backwards Success [50 Items, 8 Rows]
and verbose result :
+ Running data query [1].
+ Found type = '3' [SNMP Query].
+ Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml'
+ XML file parsed ok.
+ Executing SNMP get for num of indexes @ '.1.3.6.1.2.1.2.1.0' Index Count: 8
+ Executing SNMP walk for list of indexes @ '.1.3.6.1.2.1.2.2.1.1' Index Count: 8
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.1' value: '1'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.2' value: '2'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.3' value: '3'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.4' value: '4'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.5' value: '5'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.6' value: '6'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.7' value: '7'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.8' value: '8'
+ Located input field 'ifIndex' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.1'
+ Found item [ifIndex='1'] index: 1 [from value]
+ Found item [ifIndex='2'] index: 2 [from value]
+ Found item [ifIndex='3'] index: 3 [from value]
+ Found item [ifIndex='4'] index: 4 [from value]
+ Found item [ifIndex='5'] index: 5 [from value]
+ Found item [ifIndex='6'] index: 6 [from value]
+ Found item [ifIndex='7'] index: 7 [from value]
+ Found item [ifIndex='8'] index: 8 [from value]
+ Located input field 'ifOperStatus' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.8'
+ Found item [ifOperStatus='Up'] index: 1 [from value]
+ Found item [ifOperStatus='Down'] index: 2 [from value]
+ Found item [ifOperStatus='Up'] index: 3 [from value]
+ Found item [ifOperStatus='Up'] index: 4 [from value]
+ Found item [ifOperStatus='Up'] index: 5 [from value]
+ Found item [ifOperStatus='Up'] index: 6 [from value]
+ Found item [ifOperStatus='Up'] index: 7 [from value]
+ Found item [ifOperStatus='Down'] index: 8 [from value]
+ Located input field 'ifDescr' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.2'
+ Found item [ifDescr='lo'] index: 1 [from value]
+ Found item [ifDescr='teql0'] index: 2 [from value]
+ Found item [ifDescr='eth0'] index: 3 [from value]
+ Found item [ifDescr='eth1'] index: 4 [from value]
+ Found item [ifDescr='vlan0'] index: 5 [from value]
+ Found item [ifDescr='vlan1'] index: 6 [from value]
+ Found item [ifDescr='br0'] index: 7 [from value]
+ Found item [ifDescr='etherip0'] index: 8 [from value]
+ Located input field 'ifName' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.31.1.1.1.1'
+ Located input field 'ifAlias' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.31.1.1.1.18'
+ Located input field 'ifType' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.3'
+ Found item [ifType='24'] index: 1 [from value]
+ Found item [ifType='1'] index: 2 [from value]
+ Found item [ifType='6'] index: 3 [from value]
+ Found item [ifType='6'] index: 4 [from value]
+ Found item [ifType='6'] index: 5 [from value]
+ Found item [ifType='6'] index: 6 [from value]
+ Found item [ifType='6'] index: 7 [from value]
+ Found item [ifType='6'] index: 8 [from value]
+ Located input field 'ifSpeed' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.5'
+ Found item [ifSpeed='10000000'] index: 1 [from value]
+ Found item [ifSpeed='0'] index: 2 [from value]
+ Found item [ifSpeed='10000000'] index: 3 [from value]
+ Found item [ifSpeed='10000000'] index: 4 [from value]
+ Found item [ifSpeed='10000000'] index: 5 [from value]
+ Found item [ifSpeed='10000000'] index: 6 [from value]
+ Found item [ifSpeed='10000000'] index: 7 [from value]
+ Found item [ifSpeed='10000000'] index: 8 [from value]
+ Located input field 'ifHighSpeed' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.31.1.1.1.15'
+ Located input field 'ifHwAddr' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.6'
+ Found item [ifHwAddr=''] index: 1 [from value]
+ Found item [ifHwAddr=''] index: 2 [from value]
+ Found item [ifHwAddr='00:1D:7E:E3:4E:9B'] index: 3 [from value]
+ Found item [ifHwAddr='00:1D:7E:E3:4E:9D'] index: 4 [from value]
+ Found item [ifHwAddr='00:1D:7E:E3:4E:9B'] index: 5 [from value]
+ Found item [ifHwAddr='00:1D:7E:E3:4E:9B'] index: 6 [from value]
+ Found item [ifHwAddr='00:1D:7E:E3:4E:9B'] index: 7 [from value]
+ Found item [ifHwAddr='AE:2F:C2:C4:5F:3F'] index: 8 [from value]
+ Located input field 'ifIP' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.4.20.1.2'
+ Found item [ifIP='127.0.0.1'] index: 1 [from regexp oid parse]
+ Found item [ifIP='169.254.255.1'] index: 7 [from regexp oid parse]
+ Found item [ifIP='172.16.25.206'] index: 7 [from regexp oid parse]
What am I missing ? is there somehting which was changed because of my test with other templates ??
Thx in advance !
I'm just reopening an old topic here.
I have a fresh Cacti install , on which I tested few DDWRT54 template which were not providing good results.
Testing this one, I was able to have at some point some graph for the interfaces ...
I tried other templates after but definitly , this one is the best one.
I deleted all data sources, templates, devices ref ...
Reinstalled the different templates but I can't get working the interfaces anymore ...
Few points I double checked :
As it is SNMP, using the SNMP Interface query is working ( I'm able to get some graph from my switch )
I'm able to connect to the DDWRT and get some stats as I have CPU, Load... without any problem
In debug/verbose mode, I can see some results :
SNMP - Interface Statistics (Verbose Query) Uptime Goes Backwards Success [50 Items, 8 Rows]
and verbose result :
+ Running data query [1].
+ Found type = '3' [SNMP Query].
+ Found data query XML file at '/var/www/cacti/resource/snmp_queries/interface.xml'
+ XML file parsed ok.
+ Executing SNMP get for num of indexes @ '.1.3.6.1.2.1.2.1.0' Index Count: 8
+ Executing SNMP walk for list of indexes @ '.1.3.6.1.2.1.2.2.1.1' Index Count: 8
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.1' value: '1'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.2' value: '2'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.3' value: '3'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.4' value: '4'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.5' value: '5'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.6' value: '6'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.7' value: '7'
+ Index found at OID: '.1.3.6.1.2.1.2.2.1.1.8' value: '8'
+ Located input field 'ifIndex' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.1'
+ Found item [ifIndex='1'] index: 1 [from value]
+ Found item [ifIndex='2'] index: 2 [from value]
+ Found item [ifIndex='3'] index: 3 [from value]
+ Found item [ifIndex='4'] index: 4 [from value]
+ Found item [ifIndex='5'] index: 5 [from value]
+ Found item [ifIndex='6'] index: 6 [from value]
+ Found item [ifIndex='7'] index: 7 [from value]
+ Found item [ifIndex='8'] index: 8 [from value]
+ Located input field 'ifOperStatus' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.8'
+ Found item [ifOperStatus='Up'] index: 1 [from value]
+ Found item [ifOperStatus='Down'] index: 2 [from value]
+ Found item [ifOperStatus='Up'] index: 3 [from value]
+ Found item [ifOperStatus='Up'] index: 4 [from value]
+ Found item [ifOperStatus='Up'] index: 5 [from value]
+ Found item [ifOperStatus='Up'] index: 6 [from value]
+ Found item [ifOperStatus='Up'] index: 7 [from value]
+ Found item [ifOperStatus='Down'] index: 8 [from value]
+ Located input field 'ifDescr' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.2'
+ Found item [ifDescr='lo'] index: 1 [from value]
+ Found item [ifDescr='teql0'] index: 2 [from value]
+ Found item [ifDescr='eth0'] index: 3 [from value]
+ Found item [ifDescr='eth1'] index: 4 [from value]
+ Found item [ifDescr='vlan0'] index: 5 [from value]
+ Found item [ifDescr='vlan1'] index: 6 [from value]
+ Found item [ifDescr='br0'] index: 7 [from value]
+ Found item [ifDescr='etherip0'] index: 8 [from value]
+ Located input field 'ifName' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.31.1.1.1.1'
+ Located input field 'ifAlias' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.31.1.1.1.18'
+ Located input field 'ifType' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.3'
+ Found item [ifType='24'] index: 1 [from value]
+ Found item [ifType='1'] index: 2 [from value]
+ Found item [ifType='6'] index: 3 [from value]
+ Found item [ifType='6'] index: 4 [from value]
+ Found item [ifType='6'] index: 5 [from value]
+ Found item [ifType='6'] index: 6 [from value]
+ Found item [ifType='6'] index: 7 [from value]
+ Found item [ifType='6'] index: 8 [from value]
+ Located input field 'ifSpeed' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.5'
+ Found item [ifSpeed='10000000'] index: 1 [from value]
+ Found item [ifSpeed='0'] index: 2 [from value]
+ Found item [ifSpeed='10000000'] index: 3 [from value]
+ Found item [ifSpeed='10000000'] index: 4 [from value]
+ Found item [ifSpeed='10000000'] index: 5 [from value]
+ Found item [ifSpeed='10000000'] index: 6 [from value]
+ Found item [ifSpeed='10000000'] index: 7 [from value]
+ Found item [ifSpeed='10000000'] index: 8 [from value]
+ Located input field 'ifHighSpeed' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.31.1.1.1.15'
+ Located input field 'ifHwAddr' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.2.2.1.6'
+ Found item [ifHwAddr=''] index: 1 [from value]
+ Found item [ifHwAddr=''] index: 2 [from value]
+ Found item [ifHwAddr='00:1D:7E:E3:4E:9B'] index: 3 [from value]
+ Found item [ifHwAddr='00:1D:7E:E3:4E:9D'] index: 4 [from value]
+ Found item [ifHwAddr='00:1D:7E:E3:4E:9B'] index: 5 [from value]
+ Found item [ifHwAddr='00:1D:7E:E3:4E:9B'] index: 6 [from value]
+ Found item [ifHwAddr='00:1D:7E:E3:4E:9B'] index: 7 [from value]
+ Found item [ifHwAddr='AE:2F:C2:C4:5F:3F'] index: 8 [from value]
+ Located input field 'ifIP' [walk]
+ Executing SNMP walk for data @ '.1.3.6.1.2.1.4.20.1.2'
+ Found item [ifIP='127.0.0.1'] index: 1 [from regexp oid parse]
+ Found item [ifIP='169.254.255.1'] index: 7 [from regexp oid parse]
+ Found item [ifIP='172.16.25.206'] index: 7 [from regexp oid parse]
What am I missing ? is there somehting which was changed because of my test with other templates ??
Thx in advance !
Who is online
Users browsing this forum: No registered users and 7 guests