| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
We have Prometheus::PidProvider which sets correct worker id for a
process, so such implementation of `worker_label` in the sampler is
obsolete.
|
|
|
|
|
|
| |
* Remove `controller` and `action` labels from duration histogram.
* Create a new simple counter for `controller` and `action`.
* Adjust histogram buckets to observe smaller response times.
|
| |
|
|
|
|
|
|
| |
Suggests to use a JSON structured log instead
Related to https://gitlab.com/gitlab-org/gitlab-ce/issues/54102
|
|
|
|
|
|
|
|
|
|
|
| |
Adds GFM Pipline filters to insert a placeholder in the generated
HTML from GFM based on the presence of a metrics dashboard link.
The front end should look for the class 'js-render-metrics' to
determine if it should replace the element with metrics charts.
The data element 'data-dashboard-url' should be the endpoint
the front end should hit in order to obtain a dashboard layout
in order to appropriately render the charts.
|
| |
|
|
|
|
|
| |
Previously we were recording process start time as seconds from boot.
This makes it so we record as epoch time.
|
|
|
|
|
| |
To measure ruby cpu time, we should use PROCESS_CPUTIME_ID instead of
THREAD_CPUTIME_ID in our environments.
|
|
|
|
|
|
| |
Adds permission checks to the metrics_dashboard endpoint. Users
with role of Reporter or above should have access to view the
metrics for a given project.
|
|
|
|
|
|
|
|
|
|
|
| |
This commits adds support for metrics dashboards
for embedding. If the flag 'embedded' is provided
to the environments/id/metrics_dashboard endpoint,
the response will be suitable for embedding in
issues or other content.
This is a precursor for support for embedding
metrics in GFM.
|
| |
|
|
|
|
|
|
|
|
| |
Opts to cache a full list of cached dashboards
to better manage removing items from the cache.
This also allows dashboards to be stored in the
cache that don't necessarily correspond to a
single dashboard yml.
|
|\
| |
| |
| |
| | |
Update server API to enable switch prometheus endpoint
See merge request gitlab-org/gitlab-ce!29186
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Error classes associated with individual stages of
dashboard processing tend to have very long names.
As dashboard post-processing includes more steps,
we will likely need to handle more error cases.
Refactoring to have all errors inherit from a specific
base class will help accommodate this and keep the code
more readable.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Adds a new stage to dashboard processesing step for the
EnvironmentsController::metrics_dashboard endpoint.
Allows the front end to avoid generating the endpoint
unitutive string mutations.
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
Adds ruby and unicorn instrumentation
Closes #61964
See merge request gitlab-org/gitlab-ce!28499
|
| | |
|
| | |
|
| |\ |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This adds ruby and unicorn instrumentation. This was originally
intended in 11.11 but due to performance concerns it was reverted. This
new commit foregoes the sys-proctable gem was causing performance issues
previously.
|
| |/
|/|
| |
| |
| |
| |
| | |
In some cases (during worker start) it's possible that
Puma.stats returns an empty hash for worker's last status. In
that case we just skip sampling of the worker until these
stats are available.
|
|/
|
|
|
| |
This sampler gathers Puma-specific metrics which can be used by
Prometheus then.
|
|
|
| |
This reverts merge request !27474
|
|\
| |
| |
| |
| |
| |
| | |
Resolve "Add new Unicorn metrics"
Closes #56850
See merge request gitlab-org/gitlab-ce!27474
|
| |
| |
| |
| |
| |
| | |
This adds back ruby_memory_bytes for backwards compatibility, limits
code duplication, cleans up unused methods, and limits the unicorn
worker sampling scope.
|
| | |
|
| |
| |
| |
| |
| |
| | |
This updates monitor docs to reflect the new ruby and unicorn metrics as
well as making it so we fetch process start time via the proc table
instead of via CLOCK_BOOTTIME
|
| |
| |
| |
| |
| | |
These metrics are not unicorn specific and can be used across ruby
processes
|
| |
| |
| |
| |
| |
| | |
This adds new metrics for monitoring unicorn. These metrics include
process_cpu_seconds_total, process_start_time_seconds, process_max_fds,
and unicorn_workers.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Updates the EnvironmentController#metrics_dashboard endpoint
to support a "dashboard" param, which can be used to specify
the filepath of a dashboard configuration from a project
repository. Dashboard configurations are expected to be
stored in .gitlab/dashboards/.
Updates dashboard post-processing steps to exclude custom
metrics, which should only display on the system dashboard.
|
| | |
|
| | |
|
|/ |
|
| |
|
| |
|
|
|
|
|
|
|
| |
On reload, references to Metrics within classes in the Gitlab::Metrics
module fail. Update all references to ::Gitlab::Metrics so that
constant lookup finds the right module in development. This fix should
not impact production.
|
|
|
|
|
| |
Change `type` and `address` labels to be less generic to avoid conflicts
with other systems.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Enables frozen string for the following:
* lib/gitlab/hook_data/**/*.rb
* lib/gitlab/i18n/**/*.rb
* lib/gitlab/import/**/*.rb
* lib/gitlab/import_export/**/*.rb
* lib/gitlab/kubernetes/**/*.rb
* lib/gitlab/legacy_github_import/**/*.rb
* lib/gitlab/manifest_import/**/*.rb
* lib/gitlab/metrics/**/*.rb
* lib/gitlab/middleware/**/*.rb
Partially addresses gitlab-org/gitlab-ce#47424.
|
| |
|
|
|
|
| |
Fix #51005
|
|
|
|
|
| |
This allows us to calculate quantiles of SQL timings more accurately,
instead of a lot of timings being assigned to the 50 ms bucket.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
* Use a simple counter for sampler duration instead of a histogram.
* Use a counter to collect GC time.
* Remove unused objects metric.
* Cleanup metric names to match Prometheus conventions.
* Prefix generic GC stats with `gc_stat`.
* Include worker label on memory and file descriptor metrics.
|
|\
| |
| |
| |
| | |
Limit the action suffixes in transaction metrics
See merge request gitlab-org/gitlab-ce!20032
|