README.md
1 <!-- Copyright 2015 The Chromium Authors. All rights reserved.
2 Use of this source code is governed by a BSD-style license that can be
3 found in the LICENSE file.
4 -->
5
6 Firefighter
7 ===========
8
9 Firefighter is an App Engine dashboard that visualizes time series data.
10
11 The overall process is to:
12 1. Ingest multiple streams of data, either by polling data sources, or by bot uploads.
13 1. Convert everything to a trace event and tag it with metadata.
14 1. Filter the events on dozens of parameters with low cost and latency, using BigQuery.
15 1. Produce arbitrary visualizations for arbitrary data on-demand.
16
17 Prerequisites
18 -------------
19
20 Follow the instructions for setting up [Google App Engine Managed VMs](https://cloud.google.com/appengine/docs/managed-vms/getting-started).
21
22 1. Download and install the [Google Cloud SDK](https://cloud.google.com/sdk/#Quick_Start).
23
24 1. Ensure you are authorized to run gcloud commands.
25
26 $ gcloud auth login
27
28 1. Set the default project name.
29
30 $ gcloud config set project PROJECT
31
32 1. Install the gcloud app component.
33
34 $ gcloud components update app
35
36 Development Server
37 ------------------
38
39 You must have the [Google Cloud SDK](https://cloud.google.com/sdk/) installed. Run:
40
41 stats$ bin/run
42
43 Deployment
44 ----------
45
46 You must have the [Google Cloud SDK](https://cloud.google.com/sdk/) installed. Run:
47
48 stats$ bin/deploy
49
50 Code Organization
51 -----------------
52
53 The app is divided into two modules: `default` and `update`. The `update` module handles ingestion of data, through either polling or uploading from an external service. The `default` module handles user queries. `base/` contains code shared between both modules.
54