Logging Improvements (#7)
* Logging Improvements Add Trace functions to SVC. Add function to get the function name who called.
This commit is contained in:
parent
6a3aa6cd88
commit
12e263f8b2
2 changed files with 13 additions and 5 deletions
|
@ -1,6 +1,7 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
|
using System.Reflection;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
|
||||||
namespace Ryujinx
|
namespace Ryujinx
|
||||||
|
@ -30,6 +31,11 @@ namespace Ryujinx
|
||||||
return ExecutionTime.ElapsedMilliseconds.ToString().PadLeft(8, '0') + "ms";
|
return ExecutionTime.ElapsedMilliseconds.ToString().PadLeft(8, '0') + "ms";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static string WhoCalledMe()
|
||||||
|
{
|
||||||
|
return new StackTrace().GetFrame(2).GetMethod().Name;
|
||||||
|
}
|
||||||
|
|
||||||
private static void LogFile(string Message)
|
private static void LogFile(string Message)
|
||||||
{
|
{
|
||||||
if (EnableLogFile)
|
if (EnableLogFile)
|
||||||
|
@ -59,7 +65,7 @@ namespace Ryujinx
|
||||||
{
|
{
|
||||||
if (EnableTrace)
|
if (EnableTrace)
|
||||||
{
|
{
|
||||||
string Text = $"{GetExecutionTime()} | TRACE > {Message}";
|
string Text = $"{GetExecutionTime()} | TRACE > {WhoCalledMe()} - {Message}";
|
||||||
|
|
||||||
Console.ForegroundColor = ConsoleColor.DarkGray;
|
Console.ForegroundColor = ConsoleColor.DarkGray;
|
||||||
Console.WriteLine(Text.PadLeft(Text.Length + 1, ' '));
|
Console.WriteLine(Text.PadLeft(Text.Length + 1, ' '));
|
||||||
|
@ -73,7 +79,7 @@ namespace Ryujinx
|
||||||
{
|
{
|
||||||
if (EnableDebug)
|
if (EnableDebug)
|
||||||
{
|
{
|
||||||
string Text = $"{GetExecutionTime()} | DEBUG > {Message}";
|
string Text = $"{GetExecutionTime()} | DEBUG > {WhoCalledMe()} - {Message}";
|
||||||
|
|
||||||
Console.ForegroundColor = ConsoleColor.Gray;
|
Console.ForegroundColor = ConsoleColor.Gray;
|
||||||
Console.WriteLine(Text.PadLeft(Text.Length + 1, ' '));
|
Console.WriteLine(Text.PadLeft(Text.Length + 1, ' '));
|
||||||
|
@ -87,7 +93,7 @@ namespace Ryujinx
|
||||||
{
|
{
|
||||||
if (EnableWarn)
|
if (EnableWarn)
|
||||||
{
|
{
|
||||||
string Text = $"{GetExecutionTime()} | WARN > {Message}";
|
string Text = $"{GetExecutionTime()} | WARN > {WhoCalledMe()} - {Message}";
|
||||||
|
|
||||||
Console.ForegroundColor = ConsoleColor.Yellow;
|
Console.ForegroundColor = ConsoleColor.Yellow;
|
||||||
Console.WriteLine(Text.PadLeft(Text.Length + 1, ' '));
|
Console.WriteLine(Text.PadLeft(Text.Length + 1, ' '));
|
||||||
|
@ -101,7 +107,7 @@ namespace Ryujinx
|
||||||
{
|
{
|
||||||
if (EnableError)
|
if (EnableError)
|
||||||
{
|
{
|
||||||
string Text = $"{GetExecutionTime()} | ERROR > {Message}";
|
string Text = $"{GetExecutionTime()} | ERROR > {WhoCalledMe()} - {Message}";
|
||||||
|
|
||||||
Console.ForegroundColor = ConsoleColor.Red;
|
Console.ForegroundColor = ConsoleColor.Red;
|
||||||
Console.WriteLine(Text.PadLeft(Text.Length + 1, ' '));
|
Console.WriteLine(Text.PadLeft(Text.Length + 1, ' '));
|
||||||
|
@ -115,7 +121,7 @@ namespace Ryujinx
|
||||||
{
|
{
|
||||||
if (EnableFatal)
|
if (EnableFatal)
|
||||||
{
|
{
|
||||||
string Text = $"{GetExecutionTime()} | FATAL > {Message}";
|
string Text = $"{GetExecutionTime()} | FATAL > {WhoCalledMe()} - {Message}";
|
||||||
|
|
||||||
Console.ForegroundColor = ConsoleColor.Magenta;
|
Console.ForegroundColor = ConsoleColor.Magenta;
|
||||||
Console.WriteLine(Text.PadLeft(Text.Length + 1, ' '));
|
Console.WriteLine(Text.PadLeft(Text.Length + 1, ' '));
|
||||||
|
|
|
@ -69,7 +69,9 @@ namespace Ryujinx.OsHle.Svc
|
||||||
|
|
||||||
if (SvcFuncs.TryGetValue(e.Id, out SvcFunc Func))
|
if (SvcFuncs.TryGetValue(e.Id, out SvcFunc Func))
|
||||||
{
|
{
|
||||||
|
Logging.Trace($"{Func.Method.Name} called.");
|
||||||
Func(Ns, Registers, Memory);
|
Func(Ns, Registers, Memory);
|
||||||
|
Logging.Trace($"{Func.Method.Name} ended.");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
Reference in a new issue