Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
Wiki Replica
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
The Tor Project
TPA
Wiki Replica
Commits
0e6fcdac
Unverified
Commit
0e6fcdac
authored
4 years ago
by
anarcat
Browse files
Options
Downloads
Patches
Plain Diff
document what monitoring we have in GitLab now
parent
3234fc40
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
service/ci.md
+25
-8
25 additions, 8 deletions
service/ci.md
with
25 additions
and
8 deletions
service/ci.md
+
25
−
8
View file @
0e6fcdac
...
...
@@ -162,17 +162,34 @@ thing about Jenkins.
## Monitoring and testing
T
ODO: @ahf how do we monitor the runners? maybe the prometheus
exporter has something? should we hook it inside nagios to get alerts
when runners get overwhelmed?
T
o test a runner, it can be registered only with a project, to run
non-critical jobs against it. See the
[
installation section
](
#Installation
)
for
details on the setup.
## Logs and metrics
Monitoring is otherwise done through Prometheus, on a need-to basis,
see the
[
log and metrics
](
#log-and-metrics
)
section below.
TODO: do runners keep logs? where? does it matter? any PII?
## Logs and metrics
TODO: how about performance metrics? how do we know when we'll run out
of capacity in the runner network since we don't host the f-droid
stuff?
GitLab runners send logs to syslog and systemd. They contain minimal
private information: the most I could find were Git repository and
Docker image URLs, which do contain usernames. Those end up in
`/var/log/daemon.log`
, which gets rotated daily, with a one-week
retention.
The GitLab instance exports a set of metrics to monitor CI. For
example,
`ci_pending_builds`
shows the size of the queue,
`ci_running_builds`
shows the number of currently running builds,
etc. Those are visible in the
[
GitLab grafana dashboard
](
https://grafana.torproject.org/d/QrDJktiMz/gitlab-omnibus
)
,
particularly in
[
this view
](
https://grafana.torproject.org/d/QrDJktiMz/gitlab-omnibus?orgId=1&refresh=1m&var-node=gitlab-02.torproject.org
)
.
Other metrics might become available in the future: for example,
runners can export their own Prometheus metrics, but currently do
not. They are, naturally, monitored through the
`node-exporter`
like
all other TPO servers, however.
TODO: monitor GitLab runners; they can be configured to expose metrics
through a Prometheus exporter, we could hook this in our setup.
## Backups
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment