Add a summary with a key
Reading the log from [email protected] in https://github.com/check-spelling-sandbox/opentelemetry-collector-contrib/actions/runs/12681692584/job/35345929645 is frustrating. There's no output at the top indicating what to look for for errors and no output at the bottom.
Errors appear to be output like this, but it's really not easy to find:
[✖] https://library.humio.com/humio-server/api-ingest.html → Status: 403
Adding a small key would be immensely helpful to the average drive-by contributor who trips on this product's output while trying to do something totally unrelated.
That could be something like:
count files checked count errors (indicated by [✖]) count working links (indicated by [✓])
This issue has been marked as stale because it has been open 60 days with no activity. It will be closed in 30 days unless the stale label is removed or someone adds a comment.
@tcort @WillGibson ?
I agree that a summary of the actual errors would make the output more useable.
Have you tried the --quiet flag?
See Usage.
I'm not a direct consumer. I run across other repositories that use this module. Thus, I need the thing itself to change behavior and for those repositories to upgrade.
https://github.com/check-spelling-sandbox/opentelemetry-collector-contrib/actions/runs/14335898530/job/40182799158 is a run with --quiet ...
It does technically give information I need, and it's definitely less noisy. I wouldn't say it's particularly great.
Fwiw, I think this is a competing product: https://github.com/check-spelling-sandbox/opentelemetry-collector-contrib/actions/runs/12701467283/job/35406098424
I'm not a huge fan of its output either, but all in all, I think it's a bit better (I think the open-telemetry org is in the process of migrating to that component which is why I have a run for it).
Taking this as an example output...
ERROR: 3 dead links found in ./CHANGELOG.md !
[✖] https://dev.mysql.com/doc/refman/8.3/en/information-schema-tables-table.html → Status: 403
[✖] https://dev.mysql.com/doc/refman/8.0/en/server-status-variables.html → Status: 403
[✖] https://library.humio.com/humio-server/api-ingest.html → Status: 403
[✖] https://docs.datadoghq.com/opentelemetry/collector_exporter/configuration/ → Status: 404
ERROR: 1 dead links found in ./exporter/datadogexporter/README.md !
[✖] https://github.com/SumoLogic/sumologic-otel-collector/tree/main/pkg/exporter/sumologicexporter#sumo-logic-exporter → Status: 404
ERROR: 1 dead links found in ./exporter/sumologicexporter/README.md !
[✖] https://github.com/open-telemetry/opentelemetry-collector/blob/main/exporter/exporterbatcher/config.go → Status: 404
ERROR: 1 dead links found in ./exporter/elasticsearchexporter/README.md !
ERROR: 1 dead links found in ./receiver/mysqlreceiver/documentation.md !
[✖] https://dev.mysql.com/doc/refman/8.0/en/document-store.html → Status: 403
Check that anchor links are lowercase
Error: Process completed with exit code 1.
What would you like to see?
I would also be interested in know what's in /exporter/elasticsearchexporter/README.md that would make it say there's a dead link, then output nothing. Is there a hyperlink with nothing in it like [Mr. Nobody]() or something?
https://github.com/check-spelling-sandbox/opentelemetry-collector-contrib/blob/9c49c9725b7b139733360ac7b73de9ce7b1dc33a/exporter/elasticsearchexporter/README.md?plain=1#L210
My guess is it's this:
- `retry_on_status` (default=[429]): Status codes that trigger request or document level retries. Request level retry and document level retry status codes are shared and cannot be configured separately. To avoid duplicates, it defaults to `[429]`.
Specifically the [429] part
But that's a fairly uneducated guess.
To your earlier question, I'd probably prefer this:
[403] https://dev.mysql.com/doc/refman/8.0/en/document-store.html
[403] https://dev.mysql.com/doc/refman/8.0/en/server-status-variables.html
[403] https://dev.mysql.com/doc/refman/8.3/en/information-schema-tables-table.html
[403] https://library.humio.com/humio-server/api-ingest.html
[404] https://docs.datadoghq.com/opentelemetry/collector_exporter/configuration/
[404] https://github.com/SumoLogic/sumologic-otel-collector/tree/main/pkg/exporter/sumologicexporter#sumo-logic-exporter
[404] https://github.com/open-telemetry/opentelemetry-collector/blob/main/exporter/exporterbatcher/config.go
Assuming this is using raw files which means I can do a search-and-replace in my codebase, I don't really care where you found a string, I can replace it without caring where you found it.
I don't think I need summaries, if I care, I can trivially get counts on my own.
@jsoref Please ping the people when you are talking directly to one specific person please.
@WillGibson I guess above answer is for you to check @WillGibson
Many thanks
@jsoref I suspect other people like having the context of where the dead link was found, but I prefer your suggestions for the dead link output.
I think this might be a fairly easy rework of the existing output and easier to read as a human or parse programatically...
./CHANGELOG.md
[403] https://dev.mysql.com/doc/refman/8.3/en/information-schema-tables-table.html
[403] https://dev.mysql.com/doc/refman/8.0/en/server-status-variables.html
[403] https://library.humio.com/humio-server/api-ingest.htmlhttps://docs.datadoghq.com/opentelemetry/collector_exporter/configuration/
./exporter/datadogexporter/README.md
[404] https://github.com/SumoLogic/sumologic-otel-collector/tree/main/pkg/exporter/sumologicexporter#sumo-logic-exporter
./exporter/sumologicexporter/README.md
[404] https://github.com/open-telemetry/opentelemetry-collector/blob/main/exporter/exporterbatcher/config.go
./receiver/mysqlreceiver/documentation.md
[403] https://dev.mysql.com/doc/refman/8.0/en/document-store.html
@WillGibson note that this doesn't actually address my original complaint of not having a key. I think I might still want one. The problem is that the more I understand the output the less I'm able to reason about the program as a drive-by user.
This issue has been marked as stale because it has been open 60 days with no activity. It will be closed in 30 days unless the stale label is removed or someone adds a comment.
...
This issue has been marked as stale because it has been open 60 days with no activity. It will be closed in 90 days unless the stale label is removed or someone adds a comment.
This issue was closed because it has been marked as stale for 90 days with no activity.