Skip to content

rax-maas/blueflood

Repository files navigation

Blueflood

Unit tests Coverage Status 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/rax-maas/blueflood.git
cd blueflood

Building

Blueflood builds and runs on Java 8. Ensure you're using an appropriate JDK before proceeding.

Blueflood builds with Maven. Use typical Maven lifecycle phases:

  • mvn clean removes build artifacts.
  • mvn test runs unit tests.
  • mvn verify runs all tests.
  • mvn package builds a Blueflood package for release.

Important build profiles to know about:

  • skip-unit-tests skips unit tests in all modules.
  • skip-integration-tests skips the integration tests.

Blueflood's main artifact is an 'uber jar', produced by the blueflood-all module.

After compiling, you can also build a Docker image with mvn docker:build. See blueflood-docker for the Docker-related files.

Running

You can easily build a ready-to-run Blueflood jar from source:

mvn package -P skip-unit-tests,skip-integration-tests

However, it requires Cassandra to start and Elasticsearch for all its features to work. The best place to start is the 10 minute guide.

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.

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.