• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.circleci/H05-Oct-2021-197184

.github/H05-Oct-2021-496404

cmd/H05-Oct-2021-46,62045,416

config/H05-Oct-2021-3,4142,775

console_libraries/H05-Oct-2021-

consoles/H03-May-2022-2923

discovery/H05-Oct-2021-30,08225,465

docs/H05-Oct-2021-6,8185,201

documentation/H05-Oct-2021-4,3713,531

notifier/H05-Oct-2021-1,3481,041

pkg/H05-Oct-2021-7,9736,302

prompb/H05-Oct-2021-4,9714,647

promql/H05-Oct-2021-20,99717,368

rules/H05-Oct-2021-3,7172,927

scrape/H05-Oct-2021-6,7594,788

scripts/H03-May-2022-322227

storage/H05-Oct-2021-11,0438,445

template/H05-Oct-2021-761639

tsdb/H05-Oct-2021-58,45849,183

util/H05-Oct-2021-2,1131,434

vendor/H03-May-2022-37,077,45227,186,407

web/H05-Oct-2021-120,040115,060

.dockerignoreH A D05-Oct-2021133 108

.gitignoreH A D05-Oct-2021442 2823

.gitpod.ymlH A D05-Oct-2021408 2019

.golangci.ymlH A D05-Oct-2021697 2824

.promu.ymlH A D05-Oct-20211.1 KiB3837

.yamllintH A D05-Oct-2021550 2725

CHANGELOG.mdH A D05-Oct-2021115.5 KiB2,0041,729

CODE_OF_CONDUCT.mdH A D05-Oct-2021155 42

CONTRIBUTING.mdH A D05-Oct-20214.3 KiB8151

DockerfileH A D05-Oct-20211.3 KiB3026

LICENSEH A D05-Oct-202111.1 KiB202169

MAINTAINERS.mdH A D05-Oct-20211.3 KiB2319

MakefileH A D05-Oct-20214.5 KiB11977

Makefile.commonH A D05-Oct-202110 KiB312233

NOTICEH A D05-Oct-20213.6 KiB10482

README.mdH A D05-Oct-20216.1 KiB13089

RELEASE.mdH A D05-Oct-202112.2 KiB169116

SECURITY.mdH A D05-Oct-2021170 74

VERSIONH A D05-Oct-20217 21

go.modH A D05-Oct-20214.4 KiB119112

go.sumH A D05-Oct-2021196.9 KiB2,0172,016

README.md

1# Prometheus
2
3[![CircleCI](https://circleci.com/gh/prometheus/prometheus/tree/main.svg?style=shield)][circleci]
4[![Docker Repository on Quay](https://quay.io/repository/prometheus/prometheus/status)][quay]
5[![Docker Pulls](https://img.shields.io/docker/pulls/prom/prometheus.svg?maxAge=604800)][hub]
6[![Go Report Card](https://goreportcard.com/badge/github.com/prometheus/prometheus)](https://goreportcard.com/report/github.com/prometheus/prometheus)
7[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/486/badge)](https://bestpractices.coreinfrastructure.org/projects/486)
8[![Gitpod ready-to-code](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/prometheus/prometheus)
9[![Fuzzing Status](https://oss-fuzz-build-logs.storage.googleapis.com/badges/prometheus.svg)](https://bugs.chromium.org/p/oss-fuzz/issues/list?sort=-opened&can=1&q=proj:prometheus)
10
11Visit [prometheus.io](https://prometheus.io) for the full documentation,
12examples and guides.
13
14Prometheus, a [Cloud Native Computing Foundation](https://cncf.io/) project, is a systems and service monitoring system. It collects metrics
15from configured targets at given intervals, evaluates rule expressions,
16displays the results, and can trigger alerts when specified conditions are observed.
17
18The features that distinguish Prometheus from other metrics and monitoring systems are:
19
20- A **multi-dimensional** data model (time series defined by metric name and set of key/value dimensions)
21- PromQL, a **powerful and flexible query language** to leverage this dimensionality
22- No dependency on distributed storage; **single server nodes are autonomous**
23- An HTTP **pull model** for time series collection
24- **Pushing time series** is supported via an intermediary gateway for batch jobs
25- Targets are discovered via **service discovery** or **static configuration**
26- Multiple modes of **graphing and dashboarding support**
27- Support for hierarchical and horizontal **federation**
28
29## Architecture overview
30
31![](https://cdn.jsdelivr.net/gh/prometheus/prometheus@c34257d069c630685da35bcef084632ffd5d6209/documentation/images/architecture.svg)
32
33## Install
34
35There are various ways of installing Prometheus.
36
37### Precompiled binaries
38
39Precompiled binaries for released versions are available in the
40[*download* section](https://prometheus.io/download/)
41on [prometheus.io](https://prometheus.io). Using the latest production release binary
42is the recommended way of installing Prometheus.
43See the [Installing](https://prometheus.io/docs/introduction/install/)
44chapter in the documentation for all the details.
45
46### Docker images
47
48Docker images are available on [Quay.io](https://quay.io/repository/prometheus/prometheus) or [Docker Hub](https://hub.docker.com/r/prom/prometheus/).
49
50You can launch a Prometheus container for trying it out with
51
52    $ docker run --name prometheus -d -p 127.0.0.1:9090:9090 prom/prometheus
53
54Prometheus will now be reachable at http://localhost:9090/.
55
56### Building from source
57
58To build Prometheus from source code, first ensure that have a working
59Go environment with [version 1.14 or greater installed](https://golang.org/doc/install).
60You also need [Node.js](https://nodejs.org/) and [npm](https://www.npmjs.com/)
61installed in order to build the frontend assets.
62
63You can directly use the `go` tool to download and install the `prometheus`
64and `promtool` binaries into your `GOPATH`:
65
66    $ GO111MODULE=on go install github.com/prometheus/prometheus/cmd/...
67    $ prometheus --config.file=your_config.yml
68
69*However*, when using `go install` to build Prometheus, Prometheus will expect to be able to
70read its web assets from local filesystem directories under `web/ui/static` and
71`web/ui/templates`. In order for these assets to be found, you will have to run Prometheus
72from the root of the cloned repository. Note also that these directories do not include the
73new experimental React UI unless it has been built explicitly using `make assets` or `make build`.
74
75An example of the above configuration file can be found [here.](https://github.com/prometheus/prometheus/blob/main/documentation/examples/prometheus.yml)
76
77You can also clone the repository yourself and build using `make build`, which will compile in
78the web assets so that Prometheus can be run from anywhere:
79
80    $ mkdir -p $GOPATH/src/github.com/prometheus
81    $ cd $GOPATH/src/github.com/prometheus
82    $ git clone https://github.com/prometheus/prometheus.git
83    $ cd prometheus
84    $ make build
85    $ ./prometheus --config.file=your_config.yml
86
87The Makefile provides several targets:
88
89  * *build*: build the `prometheus` and `promtool` binaries (includes building and compiling in web assets)
90  * *test*: run the tests
91  * *test-short*: run the short tests
92  * *format*: format the source code
93  * *vet*: check the source code for common errors
94  * *assets*: build the new experimental React UI
95
96### Building the Docker image
97
98The `make docker` target is designed for use in our CI system.
99You can build a docker image locally with the following commands:
100
101    $ make promu
102    $ promu crossbuild -p linux/amd64
103    $ make npm_licenses
104    $ make common-docker-amd64
105
106*NB* if you are on a Mac, you will need [gnu-tar](https://formulae.brew.sh/formula/gnu-tar).
107
108## React UI Development
109
110For more information on building, running, and developing on the new React-based UI, see the React app's [README.md](web/ui/react-app/README.md).
111
112## More information
113
114  * The source code is periodically indexed: [Prometheus Core](https://pkg.go.dev/github.com/prometheus/prometheus).
115  * You will find a CircleCI configuration in [`.circleci/config.yml`](.circleci/config.yml).
116  * See the [Community page](https://prometheus.io/community) for how to reach the Prometheus developers and users on various communication channels.
117
118## Contributing
119
120Refer to [CONTRIBUTING.md](https://github.com/prometheus/prometheus/blob/main/CONTRIBUTING.md)
121
122## License
123
124Apache License 2.0, see [LICENSE](https://github.com/prometheus/prometheus/blob/main/LICENSE).
125
126
127[hub]: https://hub.docker.com/r/prom/prometheus/
128[circleci]: https://circleci.com/gh/prometheus/prometheus
129[quay]: https://quay.io/repository/prometheus/prometheus
130