diff options
| author | TSRBerry <20988865+TSRBerry@users.noreply.github.com> | 2023-06-01 15:47:53 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-06-01 13:47:53 +0000 |
| commit | f4539c49d8def4c6086a61fe4bd9ed9665fac4b1 (patch) | |
| tree | a8c22c3b1fb8bbe4a7affc931da7f7c4abd04c8d /src/Ryujinx.Common/Logging/Formatters | |
| parent | 12c62fdbc223af1fcd0aca9f0146a6dff38ec1b3 (diff) | |
[Logger] Add print with stacktrace method (#5129)
* Add print with stacktrace method
* Adjust logging namespaces
* Add static keyword to DynamicObjectFormatter
Diffstat (limited to 'src/Ryujinx.Common/Logging/Formatters')
3 files changed, 17 insertions, 8 deletions
diff --git a/src/Ryujinx.Common/Logging/Formatters/DefaultLogFormatter.cs b/src/Ryujinx.Common/Logging/Formatters/DefaultLogFormatter.cs index 28a7d546..3769b03a 100644 --- a/src/Ryujinx.Common/Logging/Formatters/DefaultLogFormatter.cs +++ b/src/Ryujinx.Common/Logging/Formatters/DefaultLogFormatter.cs @@ -1,6 +1,7 @@ -using System.Text; +using System.Diagnostics; +using System.Text; -namespace Ryujinx.Common.Logging +namespace Ryujinx.Common.Logging.Formatters { internal class DefaultLogFormatter : ILogFormatter { @@ -27,6 +28,14 @@ namespace Ryujinx.Common.Logging if (args.Data is not null) { + if (args.Data is StackTrace trace) + { + sb.Append('\n'); + sb.Append(trace); + + return sb.ToString(); + } + sb.Append(' '); DynamicObjectFormatter.Format(sb, args.Data); } @@ -39,4 +48,4 @@ namespace Ryujinx.Common.Logging } } } -} +}
\ No newline at end of file diff --git a/src/Ryujinx.Common/Logging/Formatters/DynamicObjectFormatter.cs b/src/Ryujinx.Common/Logging/Formatters/DynamicObjectFormatter.cs index 5f15cc2a..6e3b0043 100644 --- a/src/Ryujinx.Common/Logging/Formatters/DynamicObjectFormatter.cs +++ b/src/Ryujinx.Common/Logging/Formatters/DynamicObjectFormatter.cs @@ -3,9 +3,9 @@ using System; using System.Reflection; using System.Text; -namespace Ryujinx.Common.Logging +namespace Ryujinx.Common.Logging.Formatters { - internal class DynamicObjectFormatter + internal static class DynamicObjectFormatter { private static readonly ObjectPool<StringBuilder> StringBuilderPool = SharedPools.Default<StringBuilder>(); @@ -17,7 +17,7 @@ namespace Ryujinx.Common.Logging } StringBuilder sb = StringBuilderPool.Allocate(); - + try { Format(sb, dynamicObject); diff --git a/src/Ryujinx.Common/Logging/Formatters/ILogFormatter.cs b/src/Ryujinx.Common/Logging/Formatters/ILogFormatter.cs index 9a55bc6b..25a06d83 100644 --- a/src/Ryujinx.Common/Logging/Formatters/ILogFormatter.cs +++ b/src/Ryujinx.Common/Logging/Formatters/ILogFormatter.cs @@ -1,7 +1,7 @@ -namespace Ryujinx.Common.Logging +namespace Ryujinx.Common.Logging.Formatters { interface ILogFormatter { string Format(LogEventArgs args); } -} +}
\ No newline at end of file |
