Commit Graph

1764 Commits

Author SHA1 Message Date
Matt Harbison a5e134014f
process_collector: fill in most statistics on macOS (#1600)
* process_collector: fill in most statistics on macOS

Unfortunately, the virtual memory, resident memory, and network stats will
require access to undocumented C functions.  I was warned off of cgo in IRC
because it would then have to be enabled in a bunch of different projects that
use this module, but I already was against it because that would break the
ability to cross-compile.  There is no interface to `dlopen` built into golang.
The `github.com/ebitengine/purego` module looks promising (I can cross-compile
and call these methods), but I'm currently getting unexpected results.  I'll
follow up with that separately if I can get it working, but hopefully this stuff
is pretty uncontroversial.

Tested on macOS 10.14.6 (amd64), macOS 14.6.1 (amd64), and macOS 15.0 (arm64)
by spawning `/usr/bin/ulimit -a -S` and `/usr/sbin/lsof -c $my_process` from
the test exporter process, and `ps -o lstart,vsize,rss,utime,stime,command` from
the shell, and comparing results with the exported metrics.

I can't find documentation for `RLIMIT_AS` on macOS (specifically if it's in
bytes or pages).  It's currently being reported back as `RLIM_INFINITY`, which
seems reasonable, because I've come across reports that the value is ignored
anyway[1].  The bash 3.2 code for the built-in `ulimit` divides the value
reported by `getrusage(2)` by 1024 when printing, as it does for `RLIMIT_DATA`,
which is documented as being bytes in `getrusage(2)`.  The help for `ulimit`
indicates it prints both in kbytes, so it's reasonable to assume this is already
in bytes.

[1] https://issues.chromium.org/issues/40581251#comment3

Signed-off-by: Matt Harbison <mharbison72@gmail.com>

* Update prometheus/process_collector_darwin.go

Co-authored-by: Ben Kochie <superq@gmail.com>
Signed-off-by: Matt Harbison <57785103+mharbison72@users.noreply.github.com>

---------

Signed-off-by: Matt Harbison <mharbison72@gmail.com>
Signed-off-by: Matt Harbison <57785103+mharbison72@users.noreply.github.com>
Co-authored-by: Ben Kochie <superq@gmail.com>
Co-authored-by: Bartlomiej Plotka <bwplotka@gmail.com>
2024-09-04 15:56:01 +01:00
PrometheusBot 97aa0493eb
Update common Prometheus files (#1615)
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2024-09-03 10:00:24 +01:00
Bartlomiej Plotka fa4f164b6d
examples: Improved GoCollector example. (#1589)
Signed-off-by: bwplotka <bwplotka@gmail.com>
2024-09-02 16:43:16 +02:00
github-actions[bot] 30da80dfe1
Merge pull request #1614 from prometheus/dependabot/github_actions/github-actions-aadb7c6e64
build(deps): bump github/codeql-action from 3.25.15 to 3.26.6 in the github-actions group across 1 directory
2024-09-02 11:48:22 +00:00
dependabot[bot] fd3057a6e0
build(deps): bump github/codeql-action
Bumps the github-actions group with 1 update in the / directory: [github/codeql-action](https://github.com/github/codeql-action).


Updates `github/codeql-action` from 3.25.15 to 3.26.6
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](afb54ba388...4dd16135b6)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-02 11:41:39 +00:00
Ben Kochie 2cc3a2f5e8
Update Dagger and build. (#1610)
* Update Dagger and build

* Update dagger actions to use pinnning.
* Add /dagger to dependabot to keep the Dagger modules up-to-date.
* Update dagger default Go version.
* Update tutorials/whatsup Go version.
* Update actions to use pinning.

Signed-off-by: SuperQ <superq@gmail.com>

---------

Signed-off-by: SuperQ <superq@gmail.com>
Signed-off-by: Arthur Silva Sens <arthursens2005@gmail.com>
Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>
2024-09-02 11:40:53 +00:00
Parth Lawania 850b6c0898
changed the name of all variables with min/max name (#1606)
* changed the name of all variables with min/max name

Signed-off-by: Parth Lawania <parthlawania@gmail.com>

* removed predeclared ignore condition for min and max identifiers

Signed-off-by: Parth Lawania <parthlawania@gmail.com>

---------

Signed-off-by: Parth Lawania <parthlawania@gmail.com>
Co-authored-by: Parth Lawania <parth.lawania@super.money>
2024-09-02 07:41:40 -03:00
github-actions[bot] 67683fd07e
Merge pull request #1612 from prometheus/dependabot/go_modules/github.com/prometheus/common-0.57.0
build(deps): bump github.com/prometheus/common from 0.55.0 to 0.57.0
2024-09-01 09:09:58 +00:00
github-actions[bot] 0ac5bf38af
Merge pull request #1611 from prometheus/dependabot/go_modules/golang.org/x/sys-0.24.0
build(deps): bump golang.org/x/sys from 0.22.0 to 0.24.0
2024-09-01 09:09:45 +00:00
dependabot[bot] 25ed766abc
build(deps): bump github.com/prometheus/common from 0.55.0 to 0.57.0
Bumps [github.com/prometheus/common](https://github.com/prometheus/common) from 0.55.0 to 0.57.0.
- [Release notes](https://github.com/prometheus/common/releases)
- [Changelog](https://github.com/prometheus/common/blob/main/RELEASE.md)
- [Commits](https://github.com/prometheus/common/compare/v0.55.0...v0.57.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/common
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-01 09:02:44 +00:00
dependabot[bot] 4c369166c3
build(deps): bump golang.org/x/sys from 0.22.0 to 0.24.0
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.22.0 to 0.24.0.
- [Commits](https://github.com/golang/sys/compare/v0.22.0...v0.24.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-09-01 09:02:39 +00:00
Arthur Silva Sens 0a90db7327
Merge pull request #1602 from prometheus/superq/update_go
Update supported Go versions
2024-08-31 18:13:14 -03:00
SuperQ c85ae6b1fe
Update supported Go versions
Now that 1.23 is out, update the supported version matrix to Go 1.21
through 1.23. This allows us to start using `log/slog`.
* Update generated tests.

Signed-off-by: SuperQ <superq@gmail.com>
2024-08-31 22:47:31 +02:00
Arthur Silva Sens ffc4cc6470
Merge pull request #1603 from prometheus/superq/cleanup_lint
Update linting
2024-08-31 12:19:12 -03:00
SuperQ e080e48d5b
Update linting
* Update golangci-lint from upstream prometheus repo.
* Ignore min/max in predeclared.
* Fix `Errorf()` use.

Signed-off-by: SuperQ <superq@gmail.com>
2024-08-30 18:09:51 +02:00
Arthur Silva Sens dbf72fc1a2
Merge pull request #1593 from prometheus/release-1.20
Merge release-1.20 back to main
2024-08-25 14:50:40 -03:00
Arthur Silva Sens 67121dc55a
Merge pull request #1596 from mrueg/fix-uncompressed-content-header
fix: Unset Content-Encoding header when uncompressed
2024-08-23 16:09:01 -03:00
Manuel Rüger 187acd4ca1 Cut 1.20.2
Signed-off-by: Manuel Rüger <manuel@rueg.eu>
2024-08-23 18:55:43 +02:00
Manuel Rüger f7f8f3a1e2 fix: Unset Content-Encoding header when uncompressed
Fixes: #1595
Signed-off-by: Manuel Rüger <manuel@rueg.eu>
2024-08-23 18:53:42 +02:00
Arthur Silva Sens 2254d6c308
Merge pull request #1587 from prometheus/fix-processcollector
Fix processcollector
2024-08-20 08:43:51 -03:00
bwplotka 4a15d05846 Cut 1.20.1
Signed-off-by: bwplotka <bwplotka@gmail.com>
2024-08-20 11:46:16 +01:00
bwplotka f2dd7b35fd Use pedantic registry in other places too, to double check.
Signed-off-by: bwplotka <bwplotka@gmail.com>
2024-08-20 11:44:35 +01:00
Arthur Silva Sens 261fe84cd4 bugfix: Pass network metrics to processCollector's Describe() function
Signed-off-by: Arthur Silva Sens <arthursens2005@gmail.com>
2024-08-20 11:44:35 +01:00
Arthur Silva Sens 5bf3341b66 Use NewPedanticRegistry in Process' Collector tests
Signed-off-by: Arthur Silva Sens <arthursens2005@gmail.com>
2024-08-20 11:44:35 +01:00
Marcos Nils b5361fed21
ci: bump dagger to the latest version (#1588)
this commit also adds an `includes` field to the dagger.json so the
initial SDK code generation runs faster as only the Dagger module source
is included

Signed-off-by: Marcos Lilljedahl <marcosnils@gmail.com>
2024-08-20 09:48:50 +01:00
Arthur Silva Sens 989a6d0a1a
Merge pull request #1583 from prometheus/fix
gocollector: Tiny fix for help message with runtime/metrics source.
2024-08-16 08:54:51 -03:00
bwplotka 8514bd7695 gocollector: Tiny fix for help message with runtime/metrics source.
Signed-off-by: bwplotka <bwplotka@gmail.com>
2024-08-16 09:58:24 +01:00
Arthur Silva Sens 05936e8837
Merge pull request #1582 from prometheus/main-1.20
Merge release-1.20 to main
2024-08-14 14:31:42 -03:00
Bartlomiej Plotka 73b811c54a
Cut 1.20.0 release. (#1580)
* Cut 1.20.0.

Signed-off-by: bwplotka <bwplotka@gmail.com>

* Update CHANGELOG.md

Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>
Signed-off-by: Bartlomiej Plotka <bwplotka@gmail.com>

---------

Signed-off-by: bwplotka <bwplotka@gmail.com>
Signed-off-by: Bartlomiej Plotka <bwplotka@gmail.com>
Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>
2024-08-14 15:14:14 +01:00
Bartlomiej Plotka 7ce508988a
gocollector: Attach original runtime/metrics metric name to help. (#1578)
This helps in filtering capabilities and generally in discovery/knowledge sharing.

Signed-off-by: bwplotka <bwplotka@gmail.com>
2024-08-14 12:25:55 +00:00
Bartlomiej Plotka 062300ede9
Remove go_memstat_lookups_total; added runtime/metrics calculation to memstat metric's help. (#1577)
* Removeed go_memstat_lookups_total which was always set to 0; added runtime/metrics info to memstat metric helps.

I know we ideally should not remove any metric from default list, but
this one is always zero, so let's save everyone's money.

Signed-off-by: bwplotka <bwplotka@gmail.com>

* Update prometheus/go_collector.go

Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>
Signed-off-by: Bartlomiej Plotka <bwplotka@gmail.com>

---------

Signed-off-by: bwplotka <bwplotka@gmail.com>
Signed-off-by: Bartlomiej Plotka <bwplotka@gmail.com>
Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>
2024-08-14 12:11:51 +00:00
PrometheusBot aa3c00d2ee
Update common Prometheus files (#1576)
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2024-08-11 18:16:49 +01:00
Arianna Vespri 3ad272204b
Add default Go runtime metrics for /gc/gogc:percent, /gc/gomemlimit:bytes, /sched/gomaxprocs:threads (#1559)
* Add go_gomaxprocs, go_gogc_percent and go_gomemlimit to the default Go runtime metrics

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>

* Move newly added metrics out of base metrics and into goCollector

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>

* Rethink struct for newly added metrics, adapt and add tests

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>

* Simplify new metrics reading

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>

* Correct loop, add debugging lines

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>

* Make goRuntimeEnvVarsMetrics function Go version dependent

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>

* Fix go mod

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>

* Remove debuggin line

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>

* Move default runtime metrics into the runtime metrics flow, change tests accordingly

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>

* Go version expected default runtime metrics map for tests

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>

* 1.21 update.

Signed-off-by: bwplotka <bwplotka@gmail.com>

* Addressed comments on Arianna's PR.

Signed-off-by: bwplotka <bwplotka@gmail.com>

* Use default GoCollector func in test

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>

---------

Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>
Signed-off-by: bwplotka <bwplotka@gmail.com>
Co-authored-by: bwplotka <bwplotka@gmail.com>
2024-08-09 20:27:25 +01:00
PrometheusBot 071572721c
Update common Prometheus files (#1573)
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2024-08-09 11:29:19 +01:00
Marcos Nils 3634bd9bda
ci: daggerize test and lint pipelines (#1534)
* ci: daggerize go.yml pipeline

Signed-off-by: Marcos Lilljedahl <marcosnils@gmail.com>

* ci: upgrade dagger to v0.12 and apply comment fixes

Signed-off-by: Marcos Lilljedahl <marcosnils@gmail.com>

* rename dagger function to make it more descriptive

Signed-off-by: Marcos Lilljedahl <marcosnils@gmail.com>

---------

Signed-off-by: Marcos Lilljedahl <marcosnils@gmail.com>
Co-authored-by: Kemal Akkoyun <kakkoyun@users.noreply.github.com>
2024-08-07 14:49:16 +02:00
Arthur Silva Sens 28b5e6e136
Merge pull request #1572 from prometheus/repo_sync
Synchronize common files from prometheus/prometheus
2024-08-06 15:34:54 -03:00
prombot 8e18075c9e Update common Prometheus files
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2024-08-01 17:47:58 +00:00
github-actions[bot] 46f77a97fa
Merge pull request #1571 from prometheus/dependabot/github_actions/github-actions-1edf403647
build(deps): bump the github-actions group with 3 updates
2024-08-01 09:57:16 +00:00
github-actions[bot] f751d1363b
Merge pull request #1570 from prometheus/dependabot/go_modules/golang.org/x/sys-0.22.0
build(deps): bump golang.org/x/sys from 0.21.0 to 0.22.0
2024-08-01 09:56:23 +00:00
dependabot[bot] 7983708ebd
build(deps): bump the github-actions group with 3 updates
Bumps the github-actions group with 3 updates: [github/codeql-action](https://github.com/github/codeql-action), [actions/setup-go](https://github.com/actions/setup-go) and [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action).


Updates `github/codeql-action` from 3.25.13 to 3.25.15
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](2d790406f5...afb54ba388)

Updates `actions/setup-go` from 5.0.1 to 5.0.2
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v5.0.1...v5.0.2)

Updates `golangci/golangci-lint-action` from 6.0.1 to 6.1.0
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](a4f60bb28d...aaa42aa062)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-01 09:53:37 +00:00
dependabot[bot] 2e98f83366
build(deps): bump golang.org/x/sys from 0.21.0 to 0.22.0
Bumps [golang.org/x/sys](https://github.com/golang/sys) from 0.21.0 to 0.22.0.
- [Commits](https://github.com/golang/sys/compare/v0.21.0...v0.22.0)

---
updated-dependencies:
- dependency-name: golang.org/x/sys
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-01 09:52:29 +00:00
Bartlomiej Plotka 0ce6d719bc
go collector: add default metrics acceptance tests; adding more context to HELP (#1568)
* go collector: add default metrics acceptance tests; adding more context to HELP

The context and details for help were possible thanks to @vesari research, thanks for that!

Signed-off-by: bwplotka <bwplotka@gmail.com>

* Update prometheus/go_collector.go

Co-authored-by: Arianna Vespri <36129782+vesari@users.noreply.github.com>
Signed-off-by: Bartlomiej Plotka <bwplotka@gmail.com>

---------

Signed-off-by: bwplotka <bwplotka@gmail.com>
Signed-off-by: Bartlomiej Plotka <bwplotka@gmail.com>
Co-authored-by: Arianna Vespri <36129782+vesari@users.noreply.github.com>
2024-08-01 09:24:31 +01:00
Bartlomiej Plotka 697372d81e
tutorials: Renamed for consistency + fixed tutorial code. (#1569) 2024-07-31 14:06:25 +02:00
PrometheusBot 0581180d24
Update common Prometheus files (#1567)
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2024-07-30 07:49:57 +01:00
Bartlomiej Plotka d7f83d1629
deps: Updated to prometheus/common to 0.55 (#1566)
Signed-off-by: bwplotka <bwplotka@gmail.com>
2024-07-29 15:05:07 +01:00
github-actions[bot] cbfe44a2f2
Merge pull request #1551 from prometheus/dependabot/go_modules/google.golang.org/protobuf-1.34.2
build(deps): bump google.golang.org/protobuf from 1.34.1 to 1.34.2
2024-07-29 10:31:27 +00:00
Bartlomiej Plotka f8718b0c47
Merge branch 'main' into dependabot/go_modules/google.golang.org/protobuf-1.34.2 2024-07-29 12:27:38 +02:00
PrometheusBot 6f511c3f23
Update common Prometheus files (#1563)
Signed-off-by: prombot <prometheus-team@googlegroups.com>
2024-07-29 11:27:25 +01:00
github-actions[bot] 9f203a098e
Merge pull request #1565 from prometheus/dependabot/github_actions/github-actions-fde7c240f8
build(deps): bump the github-actions group across 1 directory with 3 updates
2024-07-19 16:17:11 +00:00
dependabot[bot] 3d81bddb0f
build(deps): bump the github-actions group across 1 directory with 3 updates
Bumps the github-actions group with 3 updates in the / directory: [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata), [github/codeql-action](https://github.com/github/codeql-action) and [actions/setup-go](https://github.com/actions/setup-go).


Updates `dependabot/fetch-metadata` from 2.1.0 to 2.2.0
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](5e5f99653a...dbb049abf0)

Updates `github/codeql-action` from 3.25.3 to 3.25.13
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](d39d31e687...2d790406f5)

Updates `actions/setup-go` from 5.0.0 to 5.0.2
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](https://github.com/actions/setup-go/compare/v5...v5.0.2)

---
updated-dependencies:
- dependency-name: dependabot/fetch-metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: github-actions
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
- dependency-name: actions/setup-go
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: github-actions
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-19 16:13:47 +00:00