SERVER-82192 Remove mongo-tooling-metrics (#35332)

GitOrigin-RevId: 289c8047fe9a9e8ff4ba6c3d48bea79fb379ee98
This commit is contained in:
Zack Winter 2025-04-23 12:51:09 -07:00 committed by MongoDB Bot
parent a25760ec93
commit 558f69287c
6 changed files with 23 additions and 134 deletions

View File

@ -40,14 +40,14 @@ py_library(
"psutil",
group = "build-metrics",
),
dependency(
"mongo-tooling-metrics",
group = "tooling-metrics",
),
dependency(
"pyyaml",
group = "core",
),
dependency(
"gitpython",
group = "evergreen",
),
dependency(
"opentelemetry-api",
group = "testing",

View File

@ -2,10 +2,8 @@
import os
import time
from datetime import datetime
import psutil
from mongo_tooling_metrics.lib.top_level_metrics import ResmokeToolingMetrics
from buildscripts.resmokelib import parser
@ -28,8 +26,4 @@ def main(argv):
"For example: resmoke.py run -h\n"
"Note: bisect, setup-multiversion and symbolize subcommands have been moved to db-contrib-tool (https://github.com/10gen/db-contrib-tool#readme).\n",
)
ResmokeToolingMetrics.register_metrics(
utc_starttime=datetime.utcfromtimestamp(__start_time),
parser=parser.get_parser(),
)
subcommand.execute()

View File

@ -37,8 +37,6 @@ pass `--installDir` to resmoke.py
### Resmoke test telemetry
We capture telemetry from resmoke using two systems: mongo-tooling-metrics and open telemetry.
Using mongo-tooling-metrics we capture the invocation, results, and timing data from internal developers. This data is used to see what developers are doing. We can study what people are running to make it work better or faster.
We capture telemetry from resmoke using open telemetry.
Using open telemetry (OTel) we capture more specific information about the internals of resmoke. This data is used for improvements specifically when running in evergreen. This data is captured on every resmoke invocation but only sent to honeycomb when running in evergreen. More info about how we use OTel in resmoke can be found [here](otel_resmoke.md).

View File

@ -1,6 +1,6 @@
# Open telemetry (OTel) in resmoke
OTel is one of two systems we use to capture metrics from resmoke. For mongo-tooling-metrics please see the documentation [here](README.md).
OTel is what we use to capture metrics from resmoke.
## What Do We Capture

128
poetry.lock generated
View File

@ -102,7 +102,7 @@ version = "1.36.18"
description = "The AWS SDK for Python"
optional = false
python-versions = ">=3.8"
groups = ["aws", "platform", "tooling-metrics"]
groups = ["aws"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "boto3-1.36.18-py3-none-any.whl", hash = "sha256:084ff25af2d7bda3102d6367f5453e2e83f8cde1da73079ea144595b03cb9400"},
@ -123,7 +123,7 @@ version = "1.36.18"
description = "Low-level, data-driven core of boto 3."
optional = false
python-versions = ">=3.8"
groups = ["aws", "platform", "tooling-metrics"]
groups = ["aws"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "botocore-1.36.18-py3-none-any.whl", hash = "sha256:7898d109affd9231c555e71fda88308c1da2db8d39e83d33eb8cb40ebf1ba82f"},
@ -714,7 +714,7 @@ version = "1.9.0"
description = "Distro - an OS platform information API"
optional = false
python-versions = ">=3.6"
groups = ["platform", "testing", "tooling-metrics"]
groups = ["testing"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "distro-1.9.0-py3-none-any.whl", hash = "sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2"},
@ -727,7 +727,7 @@ version = "2.7.0"
description = "DNS toolkit"
optional = false
python-versions = ">=3.9"
groups = ["main", "core", "platform", "testing", "tooling-metrics"]
groups = ["main", "core", "testing"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "dnspython-2.7.0-py3-none-any.whl", hash = "sha256:b4c34b7d10b51bcc3a5071e7b8dee77939f1e878477eeecc965e9835f63c6c86"},
@ -1126,7 +1126,7 @@ version = "4.0.12"
description = "Git Object Database"
optional = false
python-versions = ">=3.7"
groups = ["evergreen", "lint", "platform", "tooling-metrics"]
groups = ["evergreen", "lint"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "gitdb-4.0.12-py3-none-any.whl", hash = "sha256:67073e15955400952c6565cc3e707c554a4eea2e428946f7a4c162fab9bd9bcf"},
@ -1142,7 +1142,7 @@ version = "3.1.44"
description = "GitPython is a Python library used to interact with Git repositories"
optional = false
python-versions = ">=3.7"
groups = ["evergreen", "lint", "platform", "tooling-metrics"]
groups = ["evergreen", "lint"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "GitPython-3.1.44-py3-none-any.whl", hash = "sha256:9e0e10cda9bed1ee64bc9a6de50e7e38a9c9943241cd7f585f6df3ed28011110"},
@ -1588,7 +1588,7 @@ version = "1.0.1"
description = "JSON Matching Expressions"
optional = false
python-versions = ">=3.7"
groups = ["aws", "platform", "tooling-metrics"]
groups = ["aws"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "jmespath-1.0.1-py3-none-any.whl", hash = "sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980"},
@ -2032,48 +2032,6 @@ build = ["blurb", "twine", "wheel"]
docs = ["sphinx"]
test = ["pytest", "pytest-cov"]
[[package]]
name = "mongo-ninja-python"
version = "1.11.1.7"
description = ""
optional = false
python-versions = "*"
groups = ["platform"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\""
files = [
{file = "mongo_ninja_python-1.11.1.7-py2.py3-none-macosx_11_0_arm64.whl", hash = "sha256:0a9999cb54d1898bbfd228fe479e288abf39a2cca275759122db44d4d5bcdd53"},
{file = "mongo_ninja_python-1.11.1.7-py2.py3-none-macosx_11_0_x86_64.whl", hash = "sha256:3626cd92b68e1690d250255d337997b17f379750b368af22bf5b3effb5b68d8b"},
{file = "mongo_ninja_python-1.11.1.7-py2.py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:094683a0eb2d0572b2d844ca8448c87466dc06adbf530184b9747ead6339df14"},
{file = "mongo_ninja_python-1.11.1.7-py2.py3-none-manylinux_2_24_aarch64.whl", hash = "sha256:d10dbee1cc42f081f9f0e01d615e2720784604fe7be5d80f2b6a99345178ef24"},
{file = "mongo_ninja_python-1.11.1.7-py2.py3-none-win_amd64.whl", hash = "sha256:afd8de282d86903353a7412855da59b8cb3df9af6bb23d6a924b7a546e17bc76"},
]
[package.dependencies]
mongo-tooling-metrics = "1.0.8"
[package.extras]
test = ["codecov (>=2.0.5)", "coverage (>=4.2)", "flake8 (>=3.0.4)", "pytest (>=4.5.0)", "pytest-cov (>=2.7.1)", "pytest-runner (>=5.1)", "pytest-virtualenv (>=1.7.0)", "virtualenv (>=15.0.3)"]
[[package]]
name = "mongo-tooling-metrics"
version = "1.0.8"
description = "A slim library which leverages Pydantic to reliably collect type enforced metrics and store them to MongoDB."
optional = false
python-versions = ">=3.7,<4.0"
groups = ["platform", "tooling-metrics"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "mongo_tooling_metrics-1.0.8-py3-none-any.whl", hash = "sha256:6f022c07e55bedd06c9fbb19daf4118b38ac1bc290c9a645b5c1ef39cf905003"},
{file = "mongo_tooling_metrics-1.0.8.tar.gz", hash = "sha256:1f10712b237a8c99551a4b63ce4e62db42aca05ef6d054af728b55081dd477d4"},
]
[package.dependencies]
distro = ">=1.5.0,<2.0.0"
gitpython = ">=3.1.29,<4.0.0"
pydantic = ">=1.8.2,<2.0.0"
pymongo = {version = ">=4.3.3,<5.0.0", extras = ["aws"]}
setuptools = ">=58.1.0,<59.0.0"
[[package]]
name = "mongomock"
version = "4.3.0"
@ -2273,37 +2231,6 @@ example = ["cairocffi (>=1.7)", "contextily (>=1.6)", "igraph (>=0.11)", "momepy
extra = ["lxml (>=4.6)", "pydot (>=3.0.1)", "pygraphviz (>=1.14)", "sympy (>=1.10)"]
test = ["pytest (>=7.2)", "pytest-cov (>=4.0)"]
[[package]]
name = "ninja"
version = "1.11.1.3"
description = "Ninja is a small build system with a focus on speed"
optional = false
python-versions = ">=3.7"
groups = ["platform"]
markers = "platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "ninja-1.11.1.3-py3-none-macosx_10_9_universal2.whl", hash = "sha256:2b4879ea3f1169f3d855182c57dcc84d1b5048628c8b7be0d702b81882a37237"},
{file = "ninja-1.11.1.3-py3-none-manylinux_2_12_i686.manylinux2010_i686.whl", hash = "sha256:bc3ebc8b2e47716149f3541742b5cd8e0b08f51013b825c05baca3e34854370d"},
{file = "ninja-1.11.1.3-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:a27e78ca71316c8654965ee94b286a98c83877bfebe2607db96897bbfe458af0"},
{file = "ninja-1.11.1.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2883ea46b3c5079074f56820f9989c6261fcc6fd873d914ee49010ecf283c3b2"},
{file = "ninja-1.11.1.3-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8c4bdb9fd2d0c06501ae15abfd23407660e95659e384acd36e013b6dd7d8a8e4"},
{file = "ninja-1.11.1.3-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:114ed5c61c8474df6a69ab89097a20749b769e2c219a452cb2fadc49b0d581b0"},
{file = "ninja-1.11.1.3-py3-none-manylinux_2_28_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:7fa2247fce98f683bc712562d82b22b8a0a5c000738a13147ca2d1b68c122298"},
{file = "ninja-1.11.1.3-py3-none-musllinux_1_1_aarch64.whl", hash = "sha256:a38c6c6c8032bed68b70c3b065d944c35e9f903342875d3a3218c1607987077c"},
{file = "ninja-1.11.1.3-py3-none-musllinux_1_1_i686.whl", hash = "sha256:56ada5d33b8741d298836644042faddebc83ee669782d661e21563034beb5aba"},
{file = "ninja-1.11.1.3-py3-none-musllinux_1_1_ppc64le.whl", hash = "sha256:53409151da081f3c198bb0bfc220a7f4e821e022c5b7d29719adda892ddb31bb"},
{file = "ninja-1.11.1.3-py3-none-musllinux_1_1_s390x.whl", hash = "sha256:1ad2112c2b0159ed7c4ae3731595191b1546ba62316fc40808edecd0306fefa3"},
{file = "ninja-1.11.1.3-py3-none-musllinux_1_1_x86_64.whl", hash = "sha256:28aea3c1c280cba95b8608d50797169f3a34280e3e9a6379b6e340f0c9eaeeb0"},
{file = "ninja-1.11.1.3-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:b6966f83064a88a51693073eea3decd47e08c3965241e09578ef7aa3a7738329"},
{file = "ninja-1.11.1.3-py3-none-win32.whl", hash = "sha256:a4a3b71490557e18c010cbb26bd1ea9a0c32ee67e8f105e9731515b6e0af792e"},
{file = "ninja-1.11.1.3-py3-none-win_amd64.whl", hash = "sha256:04d48d14ea7ba11951c156599ab526bdda575450797ff57c6fdf99b2554d09c7"},
{file = "ninja-1.11.1.3-py3-none-win_arm64.whl", hash = "sha256:17978ad611d8ead578d83637f5ae80c2261b033db0b493a7ce94f88623f29e1b"},
{file = "ninja-1.11.1.3.tar.gz", hash = "sha256:edfa0d2e9d7ead1635b03e40a32ad56cc8f56798b6e2e9848d8300b174897076"},
]
[package.extras]
test = ["coverage (>=4.2)", "importlib_metadata (>=2.0)", "pytest (>=6.0)", "pytest-cov (>=3)"]
[[package]]
name = "nodeenv"
version = "1.9.1"
@ -2840,7 +2767,7 @@ version = "1.10.21"
description = "Data validation and settings management using python type hints"
optional = false
python-versions = ">=3.7"
groups = ["evergreen", "platform", "testing", "tooling-metrics"]
groups = ["evergreen", "testing"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "pydantic-1.10.21-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:245e486e0fec53ec2366df9cf1cba36e0bbf066af7cd9c974bbbd9ba10e1e586"},
@ -2984,7 +2911,7 @@ version = "4.3.3"
description = "Python driver for MongoDB <http://www.mongodb.org>"
optional = false
python-versions = ">=3.7"
groups = ["core", "platform", "tooling-metrics"]
groups = ["core"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "pymongo-4.3.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:74731c9e423c93cbe791f60c27030b6af6a948cef67deca079da6cd1bb583a8e"},
@ -3065,7 +2992,6 @@ files = [
[package.dependencies]
dnspython = ">=1.16.0,<3.0.0"
pymongo-auth-aws = {version = "<2.0.0", optional = true, markers = "extra == \"aws\""}
[package.extras]
aws = ["pymongo-auth-aws (<2.0.0)"]
@ -3075,26 +3001,6 @@ ocsp = ["certifi", "pyopenssl (>=17.2.0)", "requests (<3.0.0)", "service-identit
snappy = ["python-snappy"]
zstd = ["zstandard"]
[[package]]
name = "pymongo-auth-aws"
version = "1.3.0"
description = "MONGODB-AWS authentication support for PyMongo"
optional = false
python-versions = ">=3.8"
groups = ["platform", "tooling-metrics"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "pymongo_auth_aws-1.3.0-py3-none-any.whl", hash = "sha256:367f6d853da428a02e9e450422756133715d40f8141f47ae5d98f139a88c0ce5"},
{file = "pymongo_auth_aws-1.3.0.tar.gz", hash = "sha256:d0fa893958dc525ca29f601c34f2ca73c860f66bc6511ec0a7da6eb7ea44e94f"},
]
[package.dependencies]
boto3 = "*"
botocore = "*"
[package.extras]
test = ["dnspython (>=2.6.1)", "pymongo", "pytest"]
[[package]]
name = "pympler"
version = "1.1"
@ -3244,7 +3150,7 @@ version = "2.9.0.post0"
description = "Extensions to the standard Python datetime module"
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7"
groups = ["aws", "platform", "testing", "tooling-metrics"]
groups = ["aws", "testing"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3"},
@ -3954,7 +3860,7 @@ version = "0.11.2"
description = "An Amazon S3 Transfer Manager"
optional = false
python-versions = ">=3.8"
groups = ["aws", "platform", "tooling-metrics"]
groups = ["aws"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "s3transfer-0.11.2-py3-none-any.whl", hash = "sha256:be6ecb39fadd986ef1701097771f87e4d2f821f27f6071c872143884d2950fbc"},
@ -4048,7 +3954,7 @@ version = "58.5.3"
description = "Easily download, build, install, upgrade, and uninstall Python packages"
optional = false
python-versions = ">=3.6"
groups = ["main", "compile", "external-auth", "jira-client", "platform", "tooling-metrics"]
groups = ["main", "compile", "external-auth", "jira-client"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "setuptools-58.5.3-py3-none-any.whl", hash = "sha256:a481fbc56b33f5d8f6b33dce41482e64c68b668be44ff42922903b03872590bf"},
@ -4097,7 +4003,7 @@ version = "1.17.0"
description = "Python 2 and 3 compatibility utilities"
optional = false
python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7"
groups = ["aws", "external-auth", "platform", "testing", "tooling-metrics"]
groups = ["aws", "external-auth", "testing"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274"},
@ -4110,7 +4016,7 @@ version = "5.0.2"
description = "A pure Python implementation of a sliding window memory map manager"
optional = false
python-versions = ">=3.7"
groups = ["evergreen", "lint", "platform", "tooling-metrics"]
groups = ["evergreen", "lint"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "smmap-5.0.2-py3-none-any.whl", hash = "sha256:b30115f0def7d7531d22a0fb6502488d879e75b260a9db4d0819cfb25403af5e"},
@ -5007,7 +4913,7 @@ version = "4.12.2"
description = "Backported and Experimental Type Hints for Python 3.8+"
optional = false
python-versions = ">=3.8"
groups = ["main", "build-metrics", "core", "evergreen", "external-auth", "lint", "modules_poc", "platform", "testing", "tooling-metrics"]
groups = ["main", "build-metrics", "core", "evergreen", "external-auth", "lint", "modules_poc", "testing"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "typing_extensions-4.12.2-py3-none-any.whl", hash = "sha256:04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d"},
@ -5049,7 +4955,7 @@ version = "2.3.0"
description = "HTTP library with thread-safe connection pooling, file post, and more."
optional = false
python-versions = ">=3.9"
groups = ["aws", "core", "export", "jira-client", "lint", "platform", "testing", "tooling-metrics"]
groups = ["aws", "core", "export", "jira-client", "lint", "testing"]
markers = "platform_machine != \"s390x\" and platform_machine != \"ppc64le\" or platform_machine == \"s390x\" or platform_machine == \"ppc64le\""
files = [
{file = "urllib3-2.3.0-py3-none-any.whl", hash = "sha256:1cee9ad369867bfdbbb48b7dd50374c0967a0bb7710050facf0dd6911440e3df"},
@ -5471,4 +5377,4 @@ libdeps = ["cxxfilt", "eventlet", "flask", "flask-cors", "gevent", "lxml", "prog
[metadata]
lock-version = "2.1"
python-versions = ">=3.10,<4.0"
content-hash = "c4c9369fa7827678936179233006a36ee9c0c5df412f2eb3c2b5617069976440"
content-hash = "50b707c58dd8e0ba2895852418ccf797905c5600618df6a2b673b926f2340d11"

View File

@ -130,12 +130,6 @@ pyzstd = { version = "^0.16.2", markers = "platform_machine != 's390x' and plat
pypiwin32 = { version = ">=223", markers = "sys_platform == 'win32'" }
pywin32 = { version = ">=225", markers = "sys_platform == 'win32'" }
cryptography = "^44.0.2"
mongo-ninja-python = [
{ version = "1.11.1.7", markers = "platform_machine != 's390x' and platform_machine != 'ppc64le'" },
]
ninja = [
{ version = ">=1.10.0", markers = "platform_machine == 's390x' or platform_machine == 'ppc64le'" },
]
[tool.poetry.group.testing.dependencies]
curatorbin = "^1.2.4"
@ -176,9 +170,6 @@ opentelemetry-sdk = "*"
opentelemetry-exporter-otlp-proto-common = "*"
opentelemetry-exporter-otlp-proto-grpc = { version = "*", markers = "platform_machine != 's390x' and platform_machine != 'ppc64le'" }
[tool.poetry.group.tooling-metrics.dependencies]
mongo-tooling-metrics = "1.0.8"
# This can be installed with "poetry install -E libdeps"
[project.optional-dependencies]
libdeps = [