Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide logjuicer anomalies for failed build #3174

Open
TomasTomecek opened this issue Mar 4, 2024 · 5 comments
Open

Provide logjuicer anomalies for failed build #3174

TomasTomecek opened this issue Mar 4, 2024 · 5 comments
Labels
RFE Enhancement, feature requests

Comments

@TomasTomecek
Copy link
Contributor

Logjuicer is a tool that detects anomalies in logs. If a build in Copr fails, we can find a previous one that succeeded for the same chroot & package and run logjuicer on both logs and see snippets of logs that appeared only in the failed one. This is super-useful to quickly find the root cause.

This is merely a tracking issue since we've already discussed doing this on a call.

One blocking problem is the fact that logjuicer is not packaged in Fedora. @TristanCacqueray, do you see any concerns with packaging logjuicer in Fedora so Copr team can install the latest stable build of the tool from standard Fedora repos?

Related: packit/packit-service-zuul#93
Related: packit/packit-service#2345

@praiskup
Copy link
Member

praiskup commented Mar 4, 2024

This should be relatively easy to implement as the copr-rpmbuild plugin.

We already have e.g. one for Fedora Review. Integrated here.

@praiskup
Copy link
Member

praiskup commented Mar 4, 2024

As I understood it from @TomasTomecek report, we need to obtain a logs from previously succeeding log.
results. That could be done via something like:

$ copr list-packages @copr/copr-dev --with-latest-succeeded-build | jq '.[] | select(.name == "copr-frontend")' | jq '.latest_succeeded_build.id'
$ copr download-build 6981797 --chroot fedora-rawhide-x86_64 --logs

These ^^^ commands have some Python API variant, and shouldn't require us to do any authentication.

@praiskup praiskup added the RFE Enhancement, feature requests label Mar 4, 2024
@TristanCacqueray
Copy link

One blocking problem is the fact that logjuicer is not packaged in Fedora.

I can try rust2rpm and propose a package-review for the command line interface, then I'm not sure how to bundle the web interface (which needs the wasm32 toolchain).

@TomasTomecek
Copy link
Contributor Author

One blocking problem is the fact that logjuicer is not packaged in Fedora.

I can try rust2rpm and propose a package-review for the command line interface, then I'm not sure how to bundle the web interface (which needs the wasm32 toolchain).

oh, would it be possible to only package the CLI and basically rm -rf the webinterface code in %prep? I have no idea how rust wasm32 apps are packaged in Fedora

@TristanCacqueray
Copy link

The CLI doesn't include the web interface yet, but I was thinking about adding a --open argument to serve the report directly through xdg-open. Alternatively, we can also use the published bits on npm here: https://www.npmjs.com/package/logjuicer-web.

In any case, that shouldn't matter for this tracking issue, if I understand correctly copr would use the json/text export directly.

@xsuchy xsuchy moved this from Needs triage to Someday in future in CPT Kanban Mar 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
RFE Enhancement, feature requests
Projects
Status: Someday in future
Development

No branches or pull requests

3 participants