4

I have two servers running Mac OS X 10.8.3 Server (Build 12D78) with SNMP reporting enabled. I have a cacti server set up collecting data from these hosts. My Load Average, CPU Usage, Disk Space Usage and network graphs all look great! But memory usage is all -nan across the board.

I saw this related question but it's so old I believe it is not valid for OS X Server 10.8.

When I run snmpwalk -v2c -c communityname 10.100.10.10 .1.3.6.1.4.1.2021.4 against the Mac OS X server, I get:

UCD-SNMP-MIB::memIndex.0 = INTEGER: 0 UCD-SNMP-MIB::memErrorName.0 = STRING: swap UCD-SNMP-MIB::memMinimumSwap.0 = INTEGER: 16000 kB 

Compare that to a FreeBSD server on my network:

kyle:~ dfjosh$ snmpwalk -v2c -c communityname 10.100.1.1 .1.3.6.1.4.1.2021.4 UCD-SNMP-MIB::memIndex.0 = INTEGER: 0 UCD-SNMP-MIB::memErrorName.0 = STRING: swap UCD-SNMP-MIB::memTotalSwap.0 = INTEGER: 2097024 kB UCD-SNMP-MIB::memAvailSwap.0 = INTEGER: 2097024 kB UCD-SNMP-MIB::memTotalReal.0 = INTEGER: 504028 kB UCD-SNMP-MIB::memAvailReal.0 = INTEGER: 27336 kB UCD-SNMP-MIB::memTotalFree.0 = INTEGER: 34092 kB UCD-SNMP-MIB::memMinimumSwap.0 = INTEGER: 16000 kB UCD-SNMP-MIB::memShared.0 = INTEGER: 124432 kB UCD-SNMP-MIB::memBuffer.0 = INTEGER: 60320 kB UCD-SNMP-MIB::memCached.0 = INTEGER: 6756 kB UCD-SNMP-MIB::memSwapError.0 = INTEGER: noError(0) UCD-SNMP-MIB::memSwapErrorMsg.0 = STRING: kyle:~ dfjosh$ snmpwalk -v2c -c farcry 10.100.10.10 .1.3.6.1.4.1.2021.4 UCD-SNMP-MIB::memIndex.0 = INTEGER: 0 UCD-SNMP-MIB::memErrorName.0 = STRING: swap UCD-SNMP-MIB::memMinimumSwap.0 = INTEGER: 16000 kB 

I tried compiling and installing net-SNMP from scratch, biut it didn't change the data returned.

How can I get Mac OS X Server to report memory usage (and, ideally, swap or page in/ous) via SNMP?

1
  • 3
    (And please don't downvote me just because you dislike Mac OS X. This really is a server question! It's on topic, I swear!) Commented Apr 3, 2013 at 17:18

1 Answer 1

1

Probably silly question, but have you compared the config files between the BSD and the OS X Server?

Additionally have you compared the compile time configuration options between the machines?

'--build=x86_64-linux-gnu' '--includedir=/usr/include' '--mandir=/usr/share/man' '-- infodir=/usr/share/info' '--localstatedir=/var' '--libexecdir=/usr/lib/net-snmp' '--disable- maintainer-mode' '--disable-dependency-tracking' '--prefix=/usr' '--sysconfdir=/etc' '-- mandir=/usr/share/man' '--with-persistent-directory=/var/lib/snmp' '--enable-ucd-snmp-compatibility' '--enable-shared' 'CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format- security' 'CPPFLAGS=-D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security' 'FFLAGS=-g -O2' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro' '-- with-perl-modules=INSTALLDIRS=vendor' '--enable-as-needed' '--enable-ipv6' '--with-logfile=none' '-- without-rpm' '--with-libwrap' '--with-openssl' '--without-dmalloc' '--without-efence' '--without- rsaref' '--with-sys-contact=root' '--with-sys-location=Unknown' '--with-mib-modules=smux ucd- snmp/dlmod ucd-snmp/diskio ucd-snmp/lmSensors host' '--with-out-mib-modules=' '--enable-mfd-rewrites' ' 

This is what I have on my Linux machine with the Sensors for memory included.

3
  • Good thought! I believe the configs were the same, I will confirm that. How did you get the above list? Just cat config.nice or is there a way to get it from a compiled snmpd binary? Commented Apr 30, 2013 at 21:56
  • net-snmp-config --configure-options will show the parameters Commented Apr 30, 2013 at 21:57
  • Thanks! Sure enough, that reports --without-kmem-usage as an option. I'll play around with ./configure and see if I can't find a way to fix that. Commented May 1, 2013 at 0:08

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.