I'm working on calculating transfer values and throughput values +95ths and I'm having a hell of a time figuring out how zabbix is storing the things. Anyone have a part in this? It seems like chaos in the Database, but I trust the front end got it correct with the graphs.
I'm gonna work it out till I figure it, but I thought it was worth asking.
___________________________
My initial assumption was that all interfaces were being recorded like the following.
CISCO ifInOctets "bits"
host: ciscortr1
hostid: 10313
in_Name/key_: ge-1/1/9 - ifInOctets
in_itemid: 82140
out_name/key_: ge-1/1/9 - ifOutOctets
out_itemid: 82175
unit: bits
I know that ifInOctets is not actually, bits. It is bytes.
octet = byte, so it is mislabeled in the database.
My math takes the difference of bytes between points, the value column in history, then divides them by the difference in clock from the last record, to get bytes per second.
CISCO ifInOctets "bps"
host: ciscosw1
hostid: 1230
in_Name/key_: ifInOctets.FastEthernet0/24
in_itemid: 46216
out_Name/key_: ifOutOctets.FastEthernet0/24
out_itemid: 46376
unit: bps
Is this really bps (bits per second)? or is it Bps (Bytes per second)?
I have to do a reverse of the last example to get bits for each datapoint.
BROCADE snSwIfStatsInFrames
host: brocadesw1
hostid: 10431
in_Name/key_: snSwIfStatsInFrames[GigabitEthernet7/9]
in_itemid: 112683
out_Name/key_: ifOutOctets.FastEthernet0/24
out_itemid: 112731
unit: bps
Do I trust that this is bits per second or bytes. Frames have don't have the same size, why the hell would they choose frames as the unit in their snmp name?
Is zabbix dealing with all these variations programmatically when showing the graphs on the front. I'm also concerned with the amount of data I'll be chunking through trying find, store, and convert one way to another.
I'm gonna work it out till I figure it, but I thought it was worth asking.
___________________________
My initial assumption was that all interfaces were being recorded like the following.
CISCO ifInOctets "bits"
host: ciscortr1
hostid: 10313
in_Name/key_: ge-1/1/9 - ifInOctets
in_itemid: 82140
out_name/key_: ge-1/1/9 - ifOutOctets
out_itemid: 82175
unit: bits
I know that ifInOctets is not actually, bits. It is bytes.
octet = byte, so it is mislabeled in the database.
My math takes the difference of bytes between points, the value column in history, then divides them by the difference in clock from the last record, to get bytes per second.
CISCO ifInOctets "bps"
host: ciscosw1
hostid: 1230
in_Name/key_: ifInOctets.FastEthernet0/24
in_itemid: 46216
out_Name/key_: ifOutOctets.FastEthernet0/24
out_itemid: 46376
unit: bps
Is this really bps (bits per second)? or is it Bps (Bytes per second)?
I have to do a reverse of the last example to get bits for each datapoint.
BROCADE snSwIfStatsInFrames
host: brocadesw1
hostid: 10431
in_Name/key_: snSwIfStatsInFrames[GigabitEthernet7/9]
in_itemid: 112683
out_Name/key_: ifOutOctets.FastEthernet0/24
out_itemid: 112731
unit: bps
Do I trust that this is bits per second or bytes. Frames have don't have the same size, why the hell would they choose frames as the unit in their snmp name?
Is zabbix dealing with all these variations programmatically when showing the graphs on the front. I'm also concerned with the amount of data I'll be chunking through trying find, store, and convert one way to another.
Comment