1

My environment is 4 Ubuntu 14.04 servers running Nginx sitting behind an F5 Load Balancer. They are sending metrics to Datadog and also pulling metrics from the F5 via SNMP to send to Datadog as well.

The Dev team has a requirement to be able to monitor HTTP codes. I cannot pull them from Nginx on the server side, as that is only possible with Nginx Plus. I had thought about building out some in house solution with reading the access logs and what not, but don't really want to go down that road. So next I looked to the F5, but have been unable to grab them their either.

This OID returns a value of 0: sysStatHttpRequests::1.3.6.1.4.1.3375.2.1.1.2.1.56

Which I know is incorrect as I was sending about 1000 HTTP requests at the VIP a second. The following also returns values of 0:

sysFastHttpStatResp2xxCnt   1.3.6.1.4.1.3375.2.1.1.2.14.16
sysFastHttpStatResp3xxCnt   1.3.6.1.4.1.3375.2.1.1.2.14.17
sysFastHttpStatResp4xxCnt   1.3.6.1.4.1.3375.2.1.1.2.14.18
sysFastHttpStatResp5xxCnt   1.3.6.1.4.1.3375.2.1.1.2.14.19

SNMP is working as I am able to pull other metrics, such as throughput, connections, etc... Anybody have any ideas on how to pull HTTP code metrics in this environment? Or maybe I am completely missing something I need to setup on the F5 in order to do this.

  • F5 Big-IP 3900
  • Version: 12.1.1

EDIT: Solved my own problem. Had to provision AVR on the F5 then apply an HTTP profile to the virtual servers.

2 Answers2

4

If you don't have the fastHTTP profile applied you won't see stats on that oid. Normal HTTP profiles use these oids:

[root@ltm3:Active:Standalone] mibs # snmptranslate -On F5-BIGIP-SYSTEM-MIB::sysHttpStatResp2xxCnt
.1.3.6.1.4.1.3375.2.1.1.2.4.3
[root@ltm3:Active:Standalone] mibs # snmptranslate -On F5-BIGIP-SYSTEM-MIB::sysHttpStatResp3xxCnt
.1.3.6.1.4.1.3375.2.1.1.2.4.4
[root@ltm3:Active:Standalone] mibs # snmptranslate -On F5-BIGIP-SYSTEM-MIB::sysHttpStatResp4xxCnt
.1.3.6.1.4.1.3375.2.1.1.2.4.5

And if I run ab 10k times against a local vip after resetting the stats and check the 2xx oid, I see:

[root@ltm3:Active:Standalone] mibs # snmpget -v 2c -c public localhost .1.3.6.1.4.1.3375.2.1.1.2.4.3.0
F5-BIGIP-SYSTEM-MIB::sysHttpStatResp2xxCnt.0 = Counter64: 10000
Jason Rahm
  • 396
  • 1
  • 6
1

In order for the F5 to start gathering metrics in regards to HTTP response codes I had to provision the AVR module on the F5. Then I just need to simply apply the default HTTP profile to my pool of virtual servers. Statistics regarding HTTP codes we're then being tracked and I could pull those stats via SNMP and send them to Datadog.