diff options
author | mageven <62494521+mageven@users.noreply.github.com> | 2020-08-04 05:02:53 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-04 01:32:53 +0200 |
commit | a33dc2f4919f7fdc8ea9db41c4c70c38cedfd3df (patch) | |
tree | d3eee67f25c3a302fa23dc39670438e7ebbfd35c /Ryujinx.Common/Logging/Formatters/DefaultLogFormatter.cs | |
parent | 60db4c353099e8656a330ede03fdbe57a421fa47 (diff) |
Improved Logger (#1292)
* Logger class changes only
Now compile-time checking is possible with the help of Nullable Value
types.
* Misc formatting
* Manual optimizations
PrintGuestLog
PrintGuestStackTrace
Surfaceflinger DequeueBuffer
* Reduce SendVibrationXX log level to Debug
* Add Notice log level
This level is always enabled and used to print system info, etc...
Also, rewrite LogColor to switch expression as colors are static
* Unify unhandled exception event handlers
* Print enabled LogLevels during init
* Re-add App Exit disposes in proper order
nit: switch case spacing
* Revert PrintGuestStackTrace to Info logs due to #1407
PrintGuestStackTrace is now called in some critical error handlers
so revert to old behavior as KThread isn't part of Guest.
* Batch replace Logger statements
Diffstat (limited to 'Ryujinx.Common/Logging/Formatters/DefaultLogFormatter.cs')
-rw-r--r-- | Ryujinx.Common/Logging/Formatters/DefaultLogFormatter.cs | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/Ryujinx.Common/Logging/Formatters/DefaultLogFormatter.cs b/Ryujinx.Common/Logging/Formatters/DefaultLogFormatter.cs index 73b0e2b6..b9a08323 100644 --- a/Ryujinx.Common/Logging/Formatters/DefaultLogFormatter.cs +++ b/Ryujinx.Common/Logging/Formatters/DefaultLogFormatter.cs @@ -17,7 +17,7 @@ namespace Ryujinx.Common.Logging sb.Clear(); sb.AppendFormat(@"{0:hh\:mm\:ss\.fff}", args.Time); - sb.Append(" | "); + sb.Append($" |{args.Level.ToString()[0]}| "); if (args.ThreadName != null) { @@ -31,7 +31,7 @@ namespace Ryujinx.Common.Logging { PropertyInfo[] props = args.Data.GetType().GetProperties(); - sb.Append(' '); + sb.Append(" {"); foreach (var prop in props) { @@ -40,28 +40,33 @@ namespace Ryujinx.Common.Logging if (typeof(Array).IsAssignableFrom(prop.PropertyType)) { - Array enumerable = (Array)prop.GetValue(args.Data); - foreach (var item in enumerable) + Array array = (Array)prop.GetValue(args.Data); + foreach (var item in array) { sb.Append(item.ToString()); sb.Append(", "); } - sb.Remove(sb.Length - 2, 2); + if (array.Length > 0) + { + sb.Remove(sb.Length - 2, 2); + } } else { sb.Append(prop.GetValue(args.Data)); } - sb.Append(" - "); + sb.Append(" ; "); } - // We remove the final '-' from the string + // We remove the final ';' from the string if (props.Length > 0) { sb.Remove(sb.Length - 3, 3); } + + sb.Append('}'); } return sb.ToString(); |