22

Is there any command line or php script which returns the memcached total memory usage?

Maximus
  • 335
  • 1
  • 3
  • 7

5 Answers5

41

As Mike said, you can look at the line including the "STAT bytes" to see memory usage:

$ echo "stats" | nc -w 1 <host> <port> | awk '$2 == "bytes" { print $2" "$3 }'
quanta
  • 50,327
  • 19
  • 152
  • 213
19

memcache's default port is 11211 so if memcache is local

telnet localhost 11211

Then run the stats command and that will spit out memory usage

stats
Mike
  • 21,910
  • 7
  • 55
  • 79
  • 1
    Thanks for the telnet tip, but what should I really read in there? I see STAT bytes 9857275 STAT curr_items 43599 STAT total_items 1048925 and I have the impression that my memcached is never filling up... – Stefano Dec 06 '11 at 22:13
  • 6
    STAT bytes is the line you are looking for total usage – Mike Dec 07 '11 at 02:19
4

I personally use PhpMemcacheAdmin

http://code.google.com/p/phpmemcacheadmin/

It creates an easy to use GUI. Of course you'll need to have PHP support.

jaredsten
  • 203
  • 1
  • 7
1

Another alternative to answer @mike,

echo "stats" | nc localhost 11211
#or
echo "stats settings" | nc localhost 11211
DarckBlezzer
  • 173
  • 1
  • 1
  • 7
0

If you are using php:

$m = new Memcached();
$m->addServer('localhost', 11211);
echo $m->getStats()['localhost:11211']['bytes'];
Eaten by a Grue
  • 282
  • 4
  • 22