A distributed system designed to ingest and process time series data
Clone or download
itzg Merge pull request #828 from goru97/goru97/entrypointFix
Adding exec to forward SIGTERM/SIGKILL for graceful shutdown
Latest commit 4722a34 Jun 4, 2018
Permalink
Failed to load latest commit information.
bin add check for blueflood-all/target directory Jan 22, 2016
blueflood-all integrating docker build into maven build Dec 15, 2016
blueflood-cloudfiles update versions to the next dev version Nov 29, 2016
blueflood-core Removed threadpool from ElasticsearchHelper as it became useless afte… Apr 24, 2018
blueflood-elasticsearch Removed threadpool from ElasticsearchHelper as it became useless afte… Apr 24, 2018
blueflood-http 10th Iteration: Feb 8, 2018
blueflood-rollupTools remove string and boolean metrics Jan 6, 2017
contrib Adding exec to forward SIGTERM/SIGKILL for graceful shutdown Jun 3, 2018
demo Added Elasticsearch threadpool to fix the issue on ingest nodes Apr 21, 2018
maven/repo/com/stuartwarren/logit Create a local repository to use for stuartwarren logit stuff. Sep 30, 2014
ops/rackspace-agent-plugins Updating bf-rollups-delay.py to support new blueflood installations w… Feb 5, 2016
src/cassandra/cli removing enum-related tables Jan 5, 2017
.gitignore add profile, add ignore Jan 18, 2016
.travis.yml update travis to not use cassandra2.0 profile anymore Feb 1, 2017
CHANGES.md add ENABLE_DTX_INGEST_BATCH option. If set to true, blueflood will us… Apr 7, 2017
Ideas.md Add idea about exploring Dropwizard. Feb 24, 2014
LICENSE Revert "Making all the copyrights current" Jun 24, 2015
NOTICE.txt Revert "Making all the copyrights current" Jun 24, 2015
README.md one more formatting changes Apr 13, 2017
pom.xml add ENABLE_DTX_INGEST_BATCH option. If set to true, blueflood will us… Apr 7, 2017
run-integration-test.sh Adding script and docker-compose for integration test during jenkins … Mar 8, 2018
run-test.sh 15th Iteration: Mar 7, 2018
versions.properties update versions to the next dev version Nov 29, 2016

README.md

Blueflood

Build Status Coveralls Releases License

Discuss - Code - Site

Introduction

Blueflood is a multi-tenant, distributed metric processing system. Blueflood is capable of ingesting, rolling up and serving metrics at a massive scale.

Getting Started

The latest code will always be here on Github.

git clone https://github.com/rackerlabs/blueflood.git
cd blueflood

You can run the entire suite of tests using Maven:

mvn test integration-test

Building

Build an 'uber jar' using maven:

mvn package -P all-modules

The uber jar will be found in ${BLUEFLOOD_DIR}/blueflood-all/target/blueflood-all-${VERSION}-jar-with-dependencies.jar. This jar contains all the dependencies necessary to run Blueflood with a very simple classpath.

Build a docker image:

mvn clean package  docker:build -Pall-modules

Running

The best place to start is the 10 minute guide. In a nutshell, you must do this:

java -cp /path/to/uber.jar \
-Dblueflood.config=file:///path/to/blueflood.conf \
-Dlog4j.configuration=file:///path/to/log4j.properties \
com.rackspacecloud.blueflood.service.BluefloodServiceStarter

Each configuration option can be found in Configuration.java. Each of those can be overridden on the command line by doing:

-DCONFIG_OPTION=NEW_VALUE

Additional Tools

The Blueflood team maintains a number of tools that are related to the project, but not essential components of it. These tools are kept in various other repos:

Contributing

First, we welcome bug reports and contributions. If you would like to contribute code, just fork this project and send us a pull request. If you would like to contribute documentation, you should get familiar with our wiki

Also, we have set up a Google Group to answer questions.

If you prefer IRC, most of the Blueflood developers are in #blueflood on Freenode.

License

Copyright 2013-2017 Rackspace

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

http://www.apache.org/licenses/LICENSE-2.0

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.