A tool for recording and displaying statistics on memcached traffic written in golang.
Like its predecessors, memsniff listens to network traffic and identifies responses to
getrequests, and is usually run directly on a memcache server host.
You can see our announcement here.
Before building you'll need to have the libpcap library and headers installed.
On Redhat-based distributions:
# yum install libpcap-devel
Or on Debian-based distributions:
# apt-get update && apt-get install libpcap-dev
Memsniff uses the standard golang toolchain, which makes installation simple. Once you have the toolchain installed and
$GOPATHpointed to your working directory:
$ go get github.com/box/memsniff $ go build github.com/box/memsniff
You will find a compiled binary at
$GOPATH/bin/memsniff, ready to be transferred to your Memcache hosts or packaged in your distribution's preferred format.
On most operating systems
memsniffrequires superuser privileges to capture network traffic from an interface, which you specify with the
# memsniff -i eth0
-hfor more command-line options. Once running a few more keys are active:
p- Pause the updating of the display. Press
pagain to resume.
Want to contribute? First have a look at CONTRIBUTING.md.
memsniffuses the standard Go testing framework:
$ go test ./... ? github.com/box/memsniff [no test files] ... ok github.com/box/memsniff/vendor/github.com/spf13/pflag 0.067s
getrequests. The key and size of the value returned are extracted into a response summary.
Need to contact us directly? Email [email protected] and be sure to include the name of this project in the subject.
Copyright 2017 Box, Inc. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.