sherpaurgen
sherpaurgen

Reputation: 3274

How to create (upload/download) graph for devices connected to router/switch using Cacti?

I am trying to create the graph for the ONU (client end) devices connected to the Optical Line Terminal(OLT) . The graph for OLT(upstream) can be created but Im stuck on creating graphs for every devices connected to OLT.

Upvotes: 1

Views: 520

Answers (1)

sherpaurgen
sherpaurgen

Reputation: 3274

Got it working : The DataInputMethod should be script/command. Script to get OLT snmp data and output them to file [ I run this script using cron every 2 minutes ] The data is saved to respective OLT files in /tmp directory.

Later I use another script to extract the ONU (client side device connected to each OLT to extract download and upload data)

# get_olt_snmp.sh

#!/bin/bash
echo ` date`
# PTS-OLT1.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area1-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area1-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area1-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area1-olt1.example.com_upload_data 

#CBL-OLT1.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area2-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area2-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area2-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area2-olt1.example.com_upload_data

#area3-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area3-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area3-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area3-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area3-olt1.example.com_upload_data

#area4-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area4-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area4-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area4-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area4-olt1.example.com_upload_data

#area5-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area5-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area5-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area5-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area5-olt1.example.com_upload_data

#area6-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area6-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area6-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area6-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area6-olt1.example.com_upload_data

#area7-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area7-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area7-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area7-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area7-olt1.example.com_upload_data

#area8-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area8-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area8-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area8-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area8-olt1.example.com_upload_data

#area9-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area9-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area9-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area9-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area9-olt1.example.com_upload_data

#area10-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area10-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area10-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area10-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area10-olt1.example.com_upload_data

#area11-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area11-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area11-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area11-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area11-olt1.example.com_upload_data

#area12-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area12-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area12-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area12-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area12-olt1.example.com_upload_data

#area13-olt1.example.com.example.com
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area13-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.4 > /tmp/area13-olt1.example.com_download_data
/usr/bin/snmpwalk -v2c -c SnmpS3cretpass area13-olt1.example.com .1.3.6.1.4.1.2011.6.128.1.1.4.23.1.3 > /tmp/area13-olt1.example.com_upload_data

Read onu script to create graph for each client end device.Add this script in cacti datainputtype field

# read_onu_snmp.sh

#!/bin/sh
#
# Find a user's in/out traffic by username.
# Syntax:
# olt_snmp <olt> <ontid>

OLT=$1
ONTID=$2

UPLOAD=`/bin/grep ${ONTID} /tmp/${OLT}_upload_data | cut -d':' -f4 | sed 's/ *//g'`
DOWNLOAD=`/bin/grep ${ONTID} /tmp/${OLT}_download_data | cut -d':' -f4 | sed 's/ *//g'`

echo "in_traffic:${UPLOAD} out_traffic:${DOWNLOAD}"

Upvotes: 1

Related Questions