Skip to content

Conversation

@Megamouse
Copy link
Contributor

  • Add new option to the log frame context menu that enables printing to the log/TTY frame while the log frame is hidden
  • By default, we disable this option, so you have to manually enable it

Previously all messages were printed to the log frame unless filtered by log level, even if hidden.
Now we only print "always" or "fatal" messages while the log frame is hidden and the option is deactivated (default).

This means that you should get a tiny relieve on the CPU while you hide the log frame and the option is deactivated,
unless you already put the log level to always or fatal.

@Megamouse Megamouse added GUI Optimization Optimizes existing code labels Jan 13, 2026
@elad335
Copy link
Contributor

elad335 commented Jan 13, 2026

I think you should not take the log panel's visibility for account and and make it accessible fom the log panel context menu.

@Megamouse
Copy link
Contributor Author

Which visibility should then be used?

@elad335
Copy link
Contributor

elad335 commented Jan 13, 2026

None, the option should allow disabling log writeout while the panel is still visible as well. Depending on visibility is a bad idea imo. What you don't see -> you are inherently not aware of. If you see that the log panel is stagnant, you are very aware that UI logging disabled. And If you want to hide the log panel, it should not affect its functionality at all.

This matters if you keep the whole log history in UI and not just limit 1000 lines.

@Megamouse
Copy link
Contributor Author

Well then there's no need to add the option, because you can already select the log level to prevent writes

@Megamouse
Copy link
Contributor Author

The idea was to be able to stay on something like notice without having to change the log level before hiding the frame

@digant73
Copy link
Contributor

digant73 commented Jan 13, 2026

IMO the log panel is already offering all the choices to users. If the panel is hidden then possibly try to avoid any overhead on log handling (e.g. any log request on GUI is simply discarded (and lost) until the panel is set to visible. But possibly this is already done (I never put my eyes on that module)

@Megamouse
Copy link
Contributor Author

No it's not. That's what this PR is for

@digant73
Copy link
Contributor

understood. At the end this is what an FR was requesting more; just avoid some overhead due to log in favor of some performance boost if the system/running game is stable

@digant73
Copy link
Contributor

digant73 commented Jan 13, 2026

but isn't Silence All Logs on Advanced tab responsible for that (disable the Log module)? IMO it is perfectly clear and does not need to be changed. It can be also set individually for each game. Usually I set the global config, create a custom config (from global config) for each game and change the options I need to change. If a user wants to suppress logging as general setting he could disable logging on the global config so any custom config will inherit that default setting.
AFAIU elad prefers to avoid to provide another sort of log level as the one provided here, an option that at the end suppresses some levels but not others (e.g. fatal errors). IMO that solution is confusing and it is not what has been requested by the FR (it simply asked to avoid Log panel is displayed by default)

@Megamouse
Copy link
Contributor Author

I have no idea what you're talking about

@digant73
Copy link
Contributor

digant73 commented Jan 13, 2026

despite what is reported as a description for Silence All Logs (see screenshot below), when Silence All Log is disabled no log is displayed on the Log panel but logs are written on log file (when rpcs3 is closed).
Isn't it more logical (as I understand reading the description) that no log is written also on file because the entire Log module is disabled?
In that way user can control whatever they want, such as:

  • I want it all; Log panel open, log module active and logging based on selected log level: COMPLIANT
  • I want logging but not the Log panel open by default: COMPLIANT (simply disable Log panel from View menu)
  • I don't need log at all (ERGO I also don't need Log panel opened) because my HW and games are stable and I want max performance: PARTIALLY COMPLIANT. Logging on file is always present even if Silence All Log was enabled

IMO it is enough to simply fix the 3rd use case to satisfy any user preference without any confusion.



image

@Megamouse
Copy link
Contributor Author

Silence all logs disables logging in general.

That has nothing to do with the log frame, which is simply a textbox that displays what's written to file.
It's just a visualization of the log file if you want.
I'm just adding a setting that's disabling writing to that textbox while it's hidden.

In current master, you always write to that textbox, even if it's hidden.
So if a user doesn't want to disable logging in general, but thinks he can save on performance by hiding the log, he's mistaken, because the textbox is still being written to.

@digant73
Copy link
Contributor

digant73 commented Jan 13, 2026

Ok but isn't it enough to simply rename Silence All Log to something like Disable GUI Log providing a better description indicating that the logs are still written on file based on log level set on Log's context menu etc. but suppressed on GUI to possibly improve performance? IMO there is not even any need to provide other settings or in any case I would provide it just below Silence All Log

@Megamouse
Copy link
Contributor Author

Silence All Logs prevents logging in general while a game is running.
It will still write a log file while the game is being booted and stopped and while it's not running.

This has NOTHING to do with the log frame textbox.

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

Labels

GUI Optimization Optimizes existing code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants