elastic / elastic/beats

[newbie-contributor] New contributor docs review — stale Metricbeat make targets

Open
#51,789 1 comment 0 reactions 0 assignees View on GitHub
needs_team
Dominant language
Go
Stars
12.7k
Forks
5k
Avg merge
2d 1h
Merged PRs (30d)
370

Description

## Summary
Metricbeat contributor docs tell new module authors to run make targets that are not present in the current checkout. This blocks a new external contributor following the documented Metricbeat module workflow because the commands fail before they can update generated config/docs or run the documented module test path.

## Findings

### 1. Metricbeat docs reference removed or renamed make targets

**Where:** `docs/extend/creating-metricsets.md:21-25`, `docs/extend/creating-metricsets.md:324-326`, and `docs/extend/creating-metricbeat-module.md:171-187`

**Problem:** The docs instruct contributors to run `make create-metricset`, `make collect`, `MODULE=apache PORT=80 make run-module`, and `MODULE=apache make test-module`. In the current checkout, `metricbeat/Makefile:5-8` only defines `create-metricset`, and the other documented targets are absent. The documented commands fail from `metricbeat/` with:

```text
$ make -n collect
make: *** No rule to make target 'collect'. Stop.

$ make -n run-module MODULE=apache PORT=80
make: *** No rule to make target 'run-module'. Stop.

$ make -n test-module MODULE=apache
make: *** No rule to make target 'test-module'. Stop.
```

I also checked `mage -l` from `metricbeat/`; relevant current targets include `createMetricset`, `collectAll`, `fields`, `goIntegTest`, `integTest`, `pythonIntegTest`, `pythonVirtualEnv`, and `update`, but no `collect`, `run-module`, or `test-module` target.

**Impact:** A new contributor adding a Metricbeat module/metricset is sent into a dead-end after creating or editing files. They cannot follow the guide to apply generated config/docs (`make collect`) or run the manual module environment/test workflow (`run-module` / `test-module`) without guessing replacement commands.

**Suggested fix:** Update these Metricbeat developer docs to use the current Mage targets/workflow, or restore documented make aliases if those commands are still intended to be supported. For each removed target, document the exact replacement command and any required environment variables.

## Suggested Actions

- [ ] Replace or restore `make collect` in Metricbeat contributor docs.
- [ ] Replace or restore `make run-module` and `make test-module` in the manual module testing docs.
- [ ] Add a quick validation step for contributor-doc commands so stale make/mage targets are caught before publishing.

---
[What is this?](https://ela.st/github-ai-tools) | [From workflow: Docs New Contributor Review](https://github.com/elastic/beats/actions/runs/28876416900)

Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not.
> - [x] expires on Jul 14, 2026, 3:10 PM UTC

Contributor guide

Open the contributing guide

Research direction

Start with docs/extend/creating-metricsets.md and docs/extend/creating-metricbeat-module.md, then compare their commands with metricbeat/Makefile:5-8 and the output of mage -l. Update the documented workflow to use exact current targets or documented aliases, including required environment variables, and validate each contributor command from metricbeat/.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
documentation
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.