AS400 OS400 iSeries SNMP strings MRTG Graphs

AS400 performance graphing with MRTG can be a tricky thing. Once you have a public read only SNMP string defined and you have enabled SNMP on the iSeries you can test using snmpwalk from the linux server you plan on generating the MRTG graphs from.

 

This is an example snmpwalk command for an as400

snmpwalk -v 2c -c YOURSNMPSTRING 10.0.0.10

Once the snmpwalk returns the SNMP information we are ready to poll it with MRTG and make some graphs.  The as400 will OFTEN time out and not complete a full SNMP return. I don’t know why this is. This is with very large systems as small alike. This is not the post to teach MRTG, but this is the spot to find the strings and the math I used to generate the graphs for our AS400s. Below are the keys to generating the MRTG graphs for your AS400. CPU, Users, RAM, ASP and others..

 

For real MRTG code and examples,

 

Total TCP connections ||
tcpCurrEstab.0&tcpCurrEstab.0:SNMPSTRING@10.0.0.10

Target[server.estabcons]: tcpCurrEstab.0&tcpCurrEstab.0:SNMPSTRING@10.0.0.10
Title[server.estabcons]: Currently Established TCP Connections
PageTop[server.estabcons]:

Established TCP Connections

MaxBytes[server.estabcons]: 10000000000 ShortLegend[server.estabcons]: YLegend[server.estabcons]: Connections LegendI[server.estabcons]: In LegendO[server.estabcons]: Legend1[server.estabcons]: Established connections Legend2[server.estabcons]: Options[server.estabcons]: growright,nopercent,gauge

Total Processes ||

hrSystemProcesses.0&hrSystemProcesses.0:SNMPSTRING@10.0.0.10

Target[server.proc]: hrSystemProcesses.0&hrSystemProcesses.0:SNMPSTRING@10.0.0.10
Title[server.proc]: Number Of Processes
PageTop[server.proc]:

Number of Processes

MaxBytes[server.proc]: 50000 ShortLegend[server.proc]: YLegend[server.proc]: Number of Processes LegendI[server.proc]: In LegendO[server.proc]: Legend1[server.proc]: Number of Processes Legend2[server.proc]: Options[server.proc]: growright,nopercent,gauge

Total ASP used ||

(hrStorageUsed.1&hrStorageSize.1:SNMPSTRING@10.0.0.10) * 4096

Target[server.asp]: (hrStorageUsed.1&hrStorageSize.1:SNMPSTRING@10.0.0.10) * 4096
Title[server.asp]: System ASP
PageTop[server.asp]:

System ASP

MaxBytes[server.asp]: 50000000000 ShortLegend[server.asp]: YLegend[server.asp]: System ASP LegendI[server.asp]: Used LegendO[server.asp]: Total Legend1[server.asp]: System ASP Legend2[server.asp]: Total ASP Options[server.asp]: growright,nopercent,gauge

Percentage of ASP used ||

( hrStorageUsed.1&hrStorageUsed.1:SNMPSTRING@10.0.0.10 )*100/ ( hrStorageSize.1&hrStorageSize.1:SNMPSTRING@10.0.0.10 )

Target[server.aspp]: ( hrStorageUsed.1&hrStorageUsed.1:SNMPSTRING@10.0.0.10 ) * 100 / ( hrStorageSize.1&hrStorageSize.1:SNMPSTRING@10.0.0.10 )
Title[server.aspp]: System ASP % Used
PageTop[server.aspp]:

System ASP % Used

MaxBytes[server.aspp]: 100 ShortLegend[server.aspp]: % YLegend[server.aspp]: System ASP Used LegendI[server.aspp]: Used LegendO[server.aspp]: Total Legend1[server.aspp]: Used Legend2[server.aspp]: Total Options[server.aspp]: growright,nopercent,gauge

CPU load ||

(.1.3.6.1.4.1.2.6.4.5.1.0&.1.3.6.1.4.1.2.6.4.5.1.0:SNMPSTRING@10.0.0.10) / 100

Target[server.load]: (.1.3.6.1.4.1.2.6.4.5.1.0&.1.3.6.1.4.1.2.6.4.5.1.0:SNMPSTRING@10.0.0.10) / 100
Title[server.load]: CPU LOAD
PageTop[server.load]:

CPU LOAD

MaxBytes[server.load]: 100 ShortLegend[server.load]: YLegend[server.load]: CPU LOAD LegendI[server.load]: % Load LegendO[server.load]: Legend1[server.load]: CPU Load Legend2[server.load]: Options[server.load]: growright,nopercent,gauge

RAM for Interactive, Spool Base and Pool Machine ||

(hrStorageSize.4&hrStorageSize.4:SNMPSTRING@10.0.0.10) * 4096
(hrStorageSize.3&hrStorageSize.3:SNMPSTRING@10.0.0.10) * 4096
(hrStorageSize.2&hrStorageSize.2:SNMPSTRING@10.0.0.10) * 4096

Target[server.rami]: (hrStorageSize.4&hrStorageSize.4:SNMPSTRING@10.0.0.10) * 4096
Title[server.rami]: RAM Assigned to Pool Interactive and Spool
PageTop[server.rami]:

RAM Pool for Interactive and Spool

MaxBytes[server.rami]: 100000000000 ShortLegend[server.rami]: YLegend[server.rami]: Interactive Pool RAM LegendI[server.rami]: Interactive Pool RAM LegendO[server.rami]: Legend1[server.rami]: Interactive Pool RAM Legend2[server.rami]: Interactive Pool RAM Options[server.rami]: growright,gauge,nopercent Target[server.ramb]: (hrStorageSize.3&hrStorageSize.3:SNMPSTRING@10.0.0.10) * 4096 Title[server.ramb]: RAM Assigned to Pool Base PageTop[server.ramb]:

RAM Pool for Base

MaxBytes[server.ramb]: 100000000000 ShortLegend[server.ramb]: YLegend[server.ramb]: Base Pool RAM LegendI[server.ramb]: Base Pool RAM LegendO[server.ramb]: Legend1[server.ramb]: Base Pool RAM Legend2[server.ramb]: Base Pool RAM Options[server.ramb]: growright,gauge,nopercent Target[server.ramm]: (hrStorageSize.2&hrStorageSize.2:SNMPSTRING@10.0.0.10) * 4096 Title[server.ramm]: RAM Assigned to Pool Machine PageTop[server.ramm]:

RAM Pool for Machine

MaxBytes[server.ramm]: 100000000000 ShortLegend[server.ramm]: YLegend[server.ramm]: Machine Pool RAM LegendI[server.ramm]: Machine Pool RAM LegendO[server.ramm]: Legend1[server.ramm]: Machine Pool RAM Legend2[server.ramm]: Machine Pool RAM Options[server.ramm]: growright,gauge,nopercent

Numbers of users ||
hrSystemNumUsers.0&hrSystemNumUsers.0:SNMPSTRING@10.0.0.10

Target[server.users]: hrSystemNumUsers.0&hrSystemNumUsers.0:SNMPSTRING@10.0.0.10
Title[server.users]: Number of Users
PageTop[server.users]: 

Number of Users

MaxBytes[server.users]: 2000 ShortLegend[server.users]: YLegend[server.users]: Users LegendI[server.users]: Users 1 LegendO[server.users]: Legend1[server.users]: Users 2 Legend2[server.users]: Options[server.users]: growright,nopercent,gauge