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
This commit is contained in:
mageven 2020-08-04 05:02:53 +05:30 committed by GitHub
parent 60db4c3530
commit a33dc2f491
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
120 changed files with 800 additions and 809 deletions

View file

@ -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();