diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/common/logging/backend.cpp | 14 | ||||
| -rw-r--r-- | src/core/settings.h | 1 | ||||
| -rw-r--r-- | src/yuzu/configuration/config.cpp | 2 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_debug.cpp | 2 | ||||
| -rw-r--r-- | src/yuzu/configuration/configure_debug.ui | 46 |
5 files changed, 54 insertions, 11 deletions
diff --git a/src/common/logging/backend.cpp b/src/common/logging/backend.cpp index 62cfde397..fdb2e52fa 100644 --- a/src/common/logging/backend.cpp +++ b/src/common/logging/backend.cpp | |||
| @@ -23,6 +23,7 @@ | |||
| 23 | #include "common/logging/text_formatter.h" | 23 | #include "common/logging/text_formatter.h" |
| 24 | #include "common/string_util.h" | 24 | #include "common/string_util.h" |
| 25 | #include "common/threadsafe_queue.h" | 25 | #include "common/threadsafe_queue.h" |
| 26 | #include "core/settings.h" | ||
| 26 | 27 | ||
| 27 | namespace Log { | 28 | namespace Log { |
| 28 | 29 | ||
| @@ -152,10 +153,19 @@ FileBackend::FileBackend(const std::string& filename) | |||
| 152 | void FileBackend::Write(const Entry& entry) { | 153 | void FileBackend::Write(const Entry& entry) { |
| 153 | // prevent logs from going over the maximum size (in case its spamming and the user doesn't | 154 | // prevent logs from going over the maximum size (in case its spamming and the user doesn't |
| 154 | // know) | 155 | // know) |
| 155 | constexpr std::size_t MAX_BYTES_WRITTEN = 50 * 1024L * 1024L; | 156 | constexpr std::size_t MAX_BYTES_WRITTEN = 100 * 1024 * 1024; |
| 156 | if (!file.IsOpen() || bytes_written > MAX_BYTES_WRITTEN) { | 157 | constexpr std::size_t MAX_BYTES_WRITTEN_EXTENDED = 1024 * 1024 * 1024; |
| 158 | |||
| 159 | if (!file.IsOpen()) { | ||
| 160 | return; | ||
| 161 | } | ||
| 162 | |||
| 163 | if (Settings::values.extended_logging && bytes_written > MAX_BYTES_WRITTEN_EXTENDED) { | ||
| 164 | return; | ||
| 165 | } else if (!Settings::values.extended_logging && bytes_written > MAX_BYTES_WRITTEN) { | ||
| 157 | return; | 166 | return; |
| 158 | } | 167 | } |
| 168 | |||
| 159 | bytes_written += file.WriteString(FormatLogMessage(entry).append(1, '\n')); | 169 | bytes_written += file.WriteString(FormatLogMessage(entry).append(1, '\n')); |
| 160 | if (entry.log_level >= Level::Error) { | 170 | if (entry.log_level >= Level::Error) { |
| 161 | file.Flush(); | 171 | file.Flush(); |
diff --git a/src/core/settings.h b/src/core/settings.h index 3681b5e9d..5a2f852fd 100644 --- a/src/core/settings.h +++ b/src/core/settings.h | |||
| @@ -498,6 +498,7 @@ struct Values { | |||
| 498 | bool reporting_services; | 498 | bool reporting_services; |
| 499 | bool quest_flag; | 499 | bool quest_flag; |
| 500 | bool disable_macro_jit; | 500 | bool disable_macro_jit; |
| 501 | bool extended_logging; | ||
| 501 | 502 | ||
| 502 | // Misceallaneous | 503 | // Misceallaneous |
| 503 | std::string log_filter; | 504 | std::string log_filter; |
diff --git a/src/yuzu/configuration/config.cpp b/src/yuzu/configuration/config.cpp index 7af974d8d..1d4816d34 100644 --- a/src/yuzu/configuration/config.cpp +++ b/src/yuzu/configuration/config.cpp | |||
| @@ -523,6 +523,8 @@ void Config::ReadDebuggingValues() { | |||
| 523 | Settings::values.quest_flag = ReadSetting(QStringLiteral("quest_flag"), false).toBool(); | 523 | Settings::values.quest_flag = ReadSetting(QStringLiteral("quest_flag"), false).toBool(); |
| 524 | Settings::values.disable_macro_jit = | 524 | Settings::values.disable_macro_jit = |
| 525 | ReadSetting(QStringLiteral("disable_macro_jit"), false).toBool(); | 525 | ReadSetting(QStringLiteral("disable_macro_jit"), false).toBool(); |
| 526 | Settings::values.extended_logging = | ||
| 527 | ReadSetting(QStringLiteral("extended_logging"), false).toBool(); | ||
| 526 | 528 | ||
| 527 | qt_config->endGroup(); | 529 | qt_config->endGroup(); |
| 528 | } | 530 | } |
diff --git a/src/yuzu/configuration/configure_debug.cpp b/src/yuzu/configuration/configure_debug.cpp index 2bfe2c306..027099ab7 100644 --- a/src/yuzu/configuration/configure_debug.cpp +++ b/src/yuzu/configuration/configure_debug.cpp | |||
| @@ -41,6 +41,7 @@ void ConfigureDebug::SetConfiguration() { | |||
| 41 | ui->enable_graphics_debugging->setChecked(Settings::values.renderer_debug); | 41 | ui->enable_graphics_debugging->setChecked(Settings::values.renderer_debug); |
| 42 | ui->disable_macro_jit->setEnabled(!Core::System::GetInstance().IsPoweredOn()); | 42 | ui->disable_macro_jit->setEnabled(!Core::System::GetInstance().IsPoweredOn()); |
| 43 | ui->disable_macro_jit->setChecked(Settings::values.disable_macro_jit); | 43 | ui->disable_macro_jit->setChecked(Settings::values.disable_macro_jit); |
| 44 | ui->extended_logging->setChecked(Settings::values.extended_logging); | ||
| 44 | } | 45 | } |
| 45 | 46 | ||
| 46 | void ConfigureDebug::ApplyConfiguration() { | 47 | void ConfigureDebug::ApplyConfiguration() { |
| @@ -53,6 +54,7 @@ void ConfigureDebug::ApplyConfiguration() { | |||
| 53 | Settings::values.quest_flag = ui->quest_flag->isChecked(); | 54 | Settings::values.quest_flag = ui->quest_flag->isChecked(); |
| 54 | Settings::values.renderer_debug = ui->enable_graphics_debugging->isChecked(); | 55 | Settings::values.renderer_debug = ui->enable_graphics_debugging->isChecked(); |
| 55 | Settings::values.disable_macro_jit = ui->disable_macro_jit->isChecked(); | 56 | Settings::values.disable_macro_jit = ui->disable_macro_jit->isChecked(); |
| 57 | Settings::values.extended_logging = ui->extended_logging->isChecked(); | ||
| 56 | Debugger::ToggleConsole(); | 58 | Debugger::ToggleConsole(); |
| 57 | Log::Filter filter; | 59 | Log::Filter filter; |
| 58 | filter.ParseFilterString(Settings::values.log_filter); | 60 | filter.ParseFilterString(Settings::values.log_filter); |
diff --git a/src/yuzu/configuration/configure_debug.ui b/src/yuzu/configuration/configure_debug.ui index 9d6feb9f7..6f94fe304 100644 --- a/src/yuzu/configuration/configure_debug.ui +++ b/src/yuzu/configuration/configure_debug.ui | |||
| @@ -90,7 +90,7 @@ | |||
| 90 | <item> | 90 | <item> |
| 91 | <widget class="QCheckBox" name="toggle_console"> | 91 | <widget class="QCheckBox" name="toggle_console"> |
| 92 | <property name="text"> | 92 | <property name="text"> |
| 93 | <string>Show Log Console (Windows Only)</string> | 93 | <string>Show Log in Console</string> |
| 94 | </property> | 94 | </property> |
| 95 | </widget> | 95 | </widget> |
| 96 | </item> | 96 | </item> |
| @@ -103,6 +103,34 @@ | |||
| 103 | </item> | 103 | </item> |
| 104 | </layout> | 104 | </layout> |
| 105 | </item> | 105 | </item> |
| 106 | <item> | ||
| 107 | <widget class="QCheckBox" name="extended_logging"> | ||
| 108 | <property name="enabled"> | ||
| 109 | <bool>true</bool> | ||
| 110 | </property> | ||
| 111 | <property name="toolTip"> | ||
| 112 | <string>When checked, the max size of the log increases from 100 MB to 1 GB</string> | ||
| 113 | </property> | ||
| 114 | <property name="text"> | ||
| 115 | <string>Enable Extended Logging</string> | ||
| 116 | </property> | ||
| 117 | </widget> | ||
| 118 | </item> | ||
| 119 | <item> | ||
| 120 | <widget class="QLabel" name="label_3"> | ||
| 121 | <property name="font"> | ||
| 122 | <font> | ||
| 123 | <italic>true</italic> | ||
| 124 | </font> | ||
| 125 | </property> | ||
| 126 | <property name="text"> | ||
| 127 | <string>This will be reset automatically when yuzu closes.</string> | ||
| 128 | </property> | ||
| 129 | <property name="indent"> | ||
| 130 | <number>20</number> | ||
| 131 | </property> | ||
| 132 | </widget> | ||
| 133 | </item> | ||
| 106 | </layout> | 134 | </layout> |
| 107 | </widget> | 135 | </widget> |
| 108 | </item> | 136 | </item> |
| @@ -115,7 +143,7 @@ | |||
| 115 | <item> | 143 | <item> |
| 116 | <layout class="QHBoxLayout" name="horizontalLayout_4"> | 144 | <layout class="QHBoxLayout" name="horizontalLayout_4"> |
| 117 | <item> | 145 | <item> |
| 118 | <widget class="QLabel" name="label_3"> | 146 | <widget class="QLabel" name="label_4"> |
| 119 | <property name="text"> | 147 | <property name="text"> |
| 120 | <string>Arguments String</string> | 148 | <string>Arguments String</string> |
| 121 | </property> | 149 | </property> |
| @@ -140,8 +168,8 @@ | |||
| 140 | <property name="enabled"> | 168 | <property name="enabled"> |
| 141 | <bool>true</bool> | 169 | <bool>true</bool> |
| 142 | </property> | 170 | </property> |
| 143 | <property name="whatsThis"> | 171 | <property name="toolTip"> |
| 144 | <string>When checked, the graphics API enters in a slower debugging mode</string> | 172 | <string>When checked, the graphics API enters a slower debugging mode</string> |
| 145 | </property> | 173 | </property> |
| 146 | <property name="text"> | 174 | <property name="text"> |
| 147 | <string>Enable Graphics Debugging</string> | 175 | <string>Enable Graphics Debugging</string> |
| @@ -153,8 +181,8 @@ | |||
| 153 | <property name="enabled"> | 181 | <property name="enabled"> |
| 154 | <bool>true</bool> | 182 | <bool>true</bool> |
| 155 | </property> | 183 | </property> |
| 156 | <property name="whatsThis"> | 184 | <property name="toolTip"> |
| 157 | <string>When checked, it disables the macro Just In Time compiler. Enabled this makes games run slower</string> | 185 | <string>When checked, it disables the macro Just In Time compiler. Enabling this makes games run slower</string> |
| 158 | </property> | 186 | </property> |
| 159 | <property name="text"> | 187 | <property name="text"> |
| 160 | <string>Disable Macro JIT</string> | 188 | <string>Disable Macro JIT</string> |
| @@ -169,7 +197,7 @@ | |||
| 169 | <property name="title"> | 197 | <property name="title"> |
| 170 | <string>Dump</string> | 198 | <string>Dump</string> |
| 171 | </property> | 199 | </property> |
| 172 | <layout class="QVBoxLayout" name="verticalLayout_6"> | 200 | <layout class="QVBoxLayout" name="verticalLayout_7"> |
| 173 | <item> | 201 | <item> |
| 174 | <widget class="QCheckBox" name="reporting_services"> | 202 | <widget class="QCheckBox" name="reporting_services"> |
| 175 | <property name="text"> | 203 | <property name="text"> |
| @@ -178,7 +206,7 @@ | |||
| 178 | </widget> | 206 | </widget> |
| 179 | </item> | 207 | </item> |
| 180 | <item> | 208 | <item> |
| 181 | <widget class="QLabel" name="label"> | 209 | <widget class="QLabel" name="label_5"> |
| 182 | <property name="font"> | 210 | <property name="font"> |
| 183 | <font> | 211 | <font> |
| 184 | <italic>true</italic> | 212 | <italic>true</italic> |
| @@ -200,7 +228,7 @@ | |||
| 200 | <property name="title"> | 228 | <property name="title"> |
| 201 | <string>Advanced</string> | 229 | <string>Advanced</string> |
| 202 | </property> | 230 | </property> |
| 203 | <layout class="QVBoxLayout" name="verticalLayout_7"> | 231 | <layout class="QVBoxLayout" name="verticalLayout_8"> |
| 204 | <item> | 232 | <item> |
| 205 | <widget class="QCheckBox" name="quest_flag"> | 233 | <widget class="QCheckBox" name="quest_flag"> |
| 206 | <property name="text"> | 234 | <property name="text"> |