Skip to content

cyriltovena/cortex

 
 

Repository files navigation

Weave Cortex Logo

Open source, horizontally scalable, multi-tenant Prometheus as a service

Circle CI GoDoc Slack Status

Cortex is a Weaveworks project that forms the monitoring backend of Weave Cloud.

It provides horizontally scalable, multi-tenant, long term storage for Prometheus metrics when used as a remote write destination, and a horizontally scalable, Prometheus-compatible query API.

Multi-tenant means it handles metrics from multiple independent Prometheus sources, keeping them separate.

To use Cortex, sign up for Weave Cloud and follow the instructions there.

Additional help can also be found in the Weave Cloud documentation:

Developing

To build:

make

(By default the build runs in a Docker container, using an image built with all the tools required. The source code is mounted from where you run make into the build container as a Docker volume.)

To run the test suite:

make test

To checkout Cortex in minikube:

kubectl create -f ./k8s

(these manifests use latest tags, i.e. this will work if you have just built the images and they are available on the node(s) in your Kubernetes cluster)

Cortex will sit behind an nginx instance exposed on port 30080. A job is deployed to scrape it itself. Try it:

http://192.168.99.100:30080/api/prom/api/v1/query?query=up

Vendoring

We use dep to vendor dependencies. To fetch a new dependency, run:

dep ensure

To update dependencies, run

dep ensure --update

Further reading

To learn more about Cortex, consult the following documents / talks:

Getting Help

If you have any questions regarding Cortex, or on using Prometheus with Weave Cloud:

Your feedback is always welcome.

About

A multitenant, horizontally scalable Prometheus as a Service

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 99.0%
  • Makefile 0.3%
  • Shell 0.3%
  • HTML 0.2%
  • Dockerfile 0.1%
  • SCSS 0.1%