Skip to content

Rework log analysis#728

Open
QazCetelic wants to merge 2 commits into
PrismLauncher:mainfrom
QazCetelic:revamp-log-analysis
Open

Rework log analysis#728
QazCetelic wants to merge 2 commits into
PrismLauncher:mainfrom
QazCetelic:revamp-log-analysis

Conversation

@QazCetelic

@QazCetelic QazCetelic commented Mar 14, 2026

Copy link
Copy Markdown

Reworked log analysis using log analysis crate as discussed in Discord channel.

  • Reworks 30 of the existing checks (the outdated launcher check is left as is)
  • Adds several new checks: ShaderCompileError, MixinApplyFailure, InstanceUpdateFailed, ErrorInitializationVM, ZipExtractFailure, ForgeSuspectedMod, EntrypointExecutionErrors, CriticalInjectionFailure, ModsFoundInStacktraceNamespace, ModsFoundInStacktraceInfo, FatalErrorJre, IncompatibleMods

All checks can be found here and include tests with example data.

This is a breakdown of how common these are detected in my test data. Overall, it detects something in about 53% of all logs.
image

Signed-off-by: QazCetelic <dev@malplena.net>
@QazCetelic

Copy link
Copy Markdown
Author

@TheKodeToad any more changes needed before this can be added?

@QazCetelic

Copy link
Copy Markdown
Author

@maskersss, sorry for pinging you, but could you perhaps take a look?

Comment thread src/handlers/event/analyze_logs/issues.rs
Comment thread src/handlers/event/analyze_logs/issues.rs

@TheKodeToad TheKodeToad left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not much of a Rust developer (got to admit, seeing this code after writing some C++ is making me tempted), but I'm not seeing any obvious major issues

We'll probably want to audit the code of polyhedron a bit more and test it more (if not in production) though...

Adds support for new log headers with commit 15660c0cba6babf2d6474af41ea939f48ff2077d

Signed-off-by: qaz <dev@malplena.net>
@QazCetelic

Copy link
Copy Markdown
Author

I've tested it again with the newest Prism version and noticed some changes in the way things are logged which prevented the extraction of the mod list. QazCetelic/polyhedron@15660c0 makes it also work with the new order. I've updated the Cargo.toml to use that commit.

Also, if you have any questions about how "polyhedron" works feel free to send a message on Discord. I also made a simple CLI that you could use if you want to more easily test some things locally.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants