Fossil is a proxy for Graphite.
Why would I need a proxy?
Well if you're confortable with the idea of pushing data in clear over the wire without cipher them, ok then. But it's an issue for us :smile:.
Fossil is a drop-down replacement for your Graphite deployment. It will listen TCP connection on the port 2003 and translate them into sensision before flush them in a directory.
We use it in combination with Beamium. This combination allow us to send our data in a ciphered way.
Before install fossil you need some tools:
First, you have to clone it:
git clone [email protected]:ovh/fossil.git $GOPATH/src/github.com/ovh/fossil
Go into the fresh installation:
cd $GOPATH/src/github.com/ovh/fossil
Install project dependencies using glide:
glide install
Now, the best part compilation:
make release
$ fossil --help
Fossil fossil Graphite to beamium forwarder
Usage:
fossil [flags]
fossil [command]
Available Commands:
version Print the version number
Flags:
-b, --batch int batch count per file (default 10000)
--config string config file to use
-d, --directory string directory to write metrics file (default "./sources")
-l, --listen string listen address (default ":2003")
-t, --timeout int batch timeout for flushing datapoints (default 5)
-v, --verbose verbose output
Use "fossil [command] --help" for more information about a command.
fossil -d /opt/beamium/source
In this example fossil, will listen TCP connection on port 2003 and will translate all graphite datapoints into sensision and flush them into /opt/beamium/source directory.
The flush is realized all 5 seconds or all 10000 datapoints.
Content type
Image
Digest
Size
4.4 MB
Last updated
over 8 years ago
docker pull rzarouali/fossil