Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
docs
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
docs
Commits
5ea6bc02
Commit
5ea6bc02
authored
Jan 08, 2015
by
Julius Volz
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Improve wording and structure in overview doc.
parent
0d52004b
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
31 additions
and
18 deletions
+31
-18
overview.md
content/docs/introduction/overview.md
+31
-18
No files found.
content/docs/introduction/overview.md
View file @
5ea6bc02
...
...
@@ -10,49 +10,62 @@ sort_rank: 1
[
Prometheus
](
https://github.com/prometheus
)
is an open-source systems
monitoring and alerting toolkit built at
[
SoundCloud
](
http://soundcloud.com
)
.
Since its inception in 2012, it has become the standard for instrumenting new
services at SoundCloud and has seen growing external usage and contributions.
Prometheus's main distinguishing features are:
services at SoundCloud and is seeing growing external usage and contributions.
-
a
**multi-dimensional**
data model (time series identified by metric name and key/value pairs)
-
a
[
**flexible query language**
](
/docs/using/querying/basics/
)
### Features
Prometheus's main features are:
-
a multi-dimensional
[
data model
](
/docs/concepts/data_model/
)
(
time
series identified by metric name and key/value pairs)
-
a
[
flexible query language
](
/docs/using/querying/basics/
)
to leverage this dimensionality
-
no reliance on distributed storage;
**single server nodes are autonomous**
-
time series collection happens via a
**pull model**
over HTTP
-
**pushing time series**
is supported via an intermediary gateway
-
targets are discovered via
**service discovery**
or
**static configuration**
-
multiple modes of
**graphing and dashboarding support**
-
no reliance on distributed storage; single server nodes are autonomous
-
time series collection happens via a pull model over HTTP
-
[
pushing time series
](
/docs/instrumenting/pushing/
)
is supported via an intermediary gateway
-
targets are discovered via service discovery or static configuration
-
multiple modes of graphing and dashboarding support
### Components
The Prometheus ecosystem consists of multiple components, many of which are
optional:
-
the main
[
Prometheus server
](
https://github.com/prometheus/prometheus
)
which scrapes and stores time series data
-
client libraries
for instrumenting application code
-
[
client libraries
](
/docs/instrumenting/clientlibs/
)
for instrumenting application code
-
a
[
push gateway
](
https://github.com/prometheus/pushgateway
)
for supporting short-lived jobs
-
a
[
GUI-based dashboard builder
](
PromDash
)
based on Rails/SQL
-
special-purpose
exporters
(for HAProxy, StatsD, Ganglia, etc.)
-
a
[
GUI-based dashboard builder
](
/docs/visualization/promdash/
)
based on Rails/SQL
-
special-purpose
[
exporters
](
/docs/instrumenting/exporters/
)
(
for
HAProxy, StatsD, Ganglia, etc.)
-
an (experimental)
[
alert manager
](
https://github.com/prometheus/alertmanager
)
-
a
[
command-line querying tool
](
https://github.com/prometheus/prometheus_cli
)
-
various support tools
### Architecture
This diagram illustrates the overall architecture of Prometheus and some of
its ecosystem components:
![
Prometheus architecture
](
/assets/architecture.svg
)
Prometheus servers scrape metrics from instrumented jobs, either directly or
via an intermediary push gateway for short-lived jobs. They store all scraped
samples locally and run rules over this data to either record new timeseries
from existing data or generate alerts. PromDash or other API consumers can be
used to visualize the collected data.
## When does it fit?
Prometheus works well
both for machine-based monitoring as well as monitoring
of highly dynamic service-oriented architectures. In a world of microservices,
its support for multi-dimensional data collection and querying is a particula
r
strength.
Prometheus works well
for recording any purely numeric time series. It fits
both machine-centric monitoring as well as monitoring of highly dynamic
service-oriented architectures. In a world of microservices, its support fo
r
multi-dimensional data collection and querying is a particular
strength.
Prometheus is designed for reliability, to be the system you go to
during an outage to allow you to quickly diagnose problems. Each Prometheus
server is standalone, not depending on network storage or other remote services.
You can rely it when other parts of your infrastructure are broken, and
You can rely
on
it when other parts of your infrastructure are broken, and
you don't have to set up complex infrastructure to use it.
## When does
n't i
t fit?
## When does
it no
t fit?
Prometheus values reliability. You can always view what statistics are
available about your system, even under failure conditions. If you need 100%
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment