| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Docker: Grid endpoint /metrics for exporter or K8s ServiceMonitor (#3135) Signed-off-by: Viet Nguyen Duc <nguyenducviet4496@gmail.com> | 3 个月前 | |
Docker: Grid endpoint /metrics for exporter or K8s ServiceMonitor (#3135) Signed-off-by: Viet Nguyen Duc <nguyenducviet4496@gmail.com> | 3 个月前 | |
[build] Update Selenium Grid 4.49.0 (#3240) * [build] Update Selenium Grid 4.49.0 * [test] Make the exporter session fixture immune to the release-day sed The three session tests in the exporter have been failing on trunk since 55892978, and not because of anything in the exporter: --- FAIL: TestCollectFullSnapshot selenium_grid_session_start_seconds{s1} missing --- FAIL: TestSessionLifecycle start_seconds missing while session active --- FAIL: TestSessionDurationFallback fallback duration = 0, want > 0 The fixture's startTime literal was corrupt, so parseGridTime returned 0 and every metric derived from it disappeared. It was corrupted by update_tag_in_docs_and_files.sh. That script rewrites the whole tree with unescaped sed substitutions whose patterns are version strings, and KEDA_TAG_PREV_VERSION and KEDA_TAG_VERSION are both 2.20.1 (Makefile:33,35). So it runs what looks like a no-op: sed -i "s/2.20.1/2.20.1/g" In a regex `.` is any character, so that pattern matches a run of digits and separators inside a formatted timestamp and replaces it with the literal version string. The substitution is destructive even though the two sides are identical. This is the second time. #3202 repaired the same literal after the 4.47.0 release; the 4.48.0 release broke it straight back. Repairing the literal again would just queue up a third. So the fixture no longer contains a timestamp-shaped literal at all: the start time is built with time.Date and rendered through gridDateFormat, the same constant the parser uses, and the expected unix value is derived from it rather than hardcoded so the two cannot drift. A value that only exists at runtime cannot be corrupted by a sed over the source. The explanatory comment describes the vulnerable strings rather than quoting them, because quoting them made the comment itself get rewritten. Verified by replaying the script's substitutions over the file with the real previous tag: the file comes back byte-identical, and `go test -race` passes at 95.8% coverage. The underlying hazard is not fixed here and still applies tree-wide: the ffmpeg, LATEST_TAG and LATEST_DATE substitutions are unescaped too, and the KEDA and ffmpeg pairs are currently identical so both are pure no-ops that can only do damage. Guarding each substitution on PREV != VERSION and escaping the patterns belongs in its own change. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013CTYeQSAs9vEpdGevEcVQE --------- Co-authored-by: Selenium CI Bot <selenium-ci@users.noreply.github.com> Co-authored-by: Viet Nguyen Duc <nguyenducviet4496@gmail.com> Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 天前 | |
Docker: Grid endpoint /metrics for exporter or K8s ServiceMonitor (#3135) Signed-off-by: Viet Nguyen Duc <nguyenducviet4496@gmail.com> | 3 个月前 |
Selenium Grid Monitoring
Prometheus metrics and Grafana dashboards for Selenium Grid.
| Directory | Description |
|---|---|
exporter/ |
Custom Prometheus exporter — build, run, flags, metrics reference, PromQL examples |
dashboards/ |
Grafana dashboard JSON files — provisioning for Docker Compose and Kubernetes/Helm |