[CLI] Some fixes for logging

This commit is contained in:
VaDiM 2023-03-10 21:01:12 +03:00
parent 0925751776
commit ad1b3b4911
5 changed files with 26 additions and 21 deletions

View File

@ -16,11 +16,11 @@ namespace AssetStudio
public interface ILogger public interface ILogger
{ {
void Log(LoggerEvent loggerEvent, string message); void Log(LoggerEvent loggerEvent, string message, bool ignoreLevel = false);
} }
public sealed class DummyLogger : ILogger public sealed class DummyLogger : ILogger
{ {
public void Log(LoggerEvent loggerEvent, string message) { } public void Log(LoggerEvent loggerEvent, string message, bool ignoreLevel) { }
} }
} }

View File

@ -97,9 +97,9 @@ namespace AssetStudioCLI
} }
} }
public void Log(LoggerEvent logMsgLevel, string message) public void Log(LoggerEvent logMsgLevel, string message, bool ignoreLevel)
{ {
if (logMsgLevel < logMinLevel || string.IsNullOrEmpty(message)) if ((logMsgLevel < logMinLevel && !ignoreLevel) || string.IsNullOrEmpty(message))
{ {
return; return;
} }

View File

@ -22,7 +22,7 @@ namespace AssetStudioCLI
var image = m_Texture2D.ConvertToImage(flip: true); var image = m_Texture2D.ConvertToImage(flip: true);
if (image == null) if (image == null)
{ {
Logger.Error($"Failed to convert texture \"{m_Texture2D.m_Name}\" into image"); Logger.Error($"Export error. Failed to convert texture \"{m_Texture2D.m_Name}\" into image");
return false; return false;
} }
using (image) using (image)
@ -52,7 +52,7 @@ namespace AssetStudioCLI
var m_AudioData = m_AudioClip.m_AudioData.GetData(); var m_AudioData = m_AudioClip.m_AudioData.GetData();
if (m_AudioData == null || m_AudioData.Length == 0) if (m_AudioData == null || m_AudioData.Length == 0)
{ {
Logger.Error($"[{item.Text}]: AudioData was not found"); Logger.Error($"Export error. \"{item.Text}\": AudioData was not found");
return false; return false;
} }
var converter = new AudioClipConverter(m_AudioClip); var converter = new AudioClipConverter(m_AudioClip);
@ -72,7 +72,7 @@ namespace AssetStudioCLI
var buffer = converter.ConvertToWav(m_AudioData); var buffer = converter.ConvertToWav(m_AudioData);
if (buffer == null) if (buffer == null)
{ {
Logger.Error($"[{item.Text}]: Failed to convert to Wav"); Logger.Error($"Export error. \"{item.Text}\": Failed to convert to Wav");
return false; return false;
} }
File.WriteAllBytes(exportFullPath, buffer); File.WriteAllBytes(exportFullPath, buffer);

View File

@ -161,6 +161,7 @@ namespace AssetStudioCLI
public void ShowExportableAssetsInfo() public void ShowExportableAssetsInfo()
{ {
var exportableAssetsCountDict = new Dictionary<ClassIDType, int>(); var exportableAssetsCountDict = new Dictionary<ClassIDType, int>();
string info = "";
if (parsedAssetsList.Count > 0) if (parsedAssetsList.Count > 0)
{ {
foreach (var asset in parsedAssetsList) foreach (var asset in parsedAssetsList)
@ -175,7 +176,7 @@ namespace AssetStudioCLI
} }
} }
var info = "\n[Exportable Assets Count]\n"; info += "\n[Exportable Assets Count]\n";
foreach (var assetType in exportableAssetsCountDict.Keys) foreach (var assetType in exportableAssetsCountDict.Keys)
{ {
info += $"# {assetType}: {exportableAssetsCountDict[assetType]}\n"; info += $"# {assetType}: {exportableAssetsCountDict[assetType]}\n";
@ -184,6 +185,11 @@ namespace AssetStudioCLI
{ {
info += $"#\n# Total: {parsedAssetsList.Count} assets"; info += $"#\n# Total: {parsedAssetsList.Count} assets";
} }
}
else
{
info += "No exportable assets found.";
}
if (options.o_logLevel.Value > LoggerEvent.Info) if (options.o_logLevel.Value > LoggerEvent.Info)
{ {
@ -194,7 +200,6 @@ namespace AssetStudioCLI
Logger.Info(info); Logger.Info(info);
} }
} }
}
public void FilterAssets() public void FilterAssets()
{ {
@ -327,20 +332,20 @@ namespace AssetStudioCLI
if (exportedCount == 0) if (exportedCount == 0)
{ {
Logger.Info("Nothing exported."); Logger.Default.Log(LoggerEvent.Info, "Nothing exported.", ignoreLevel: true);
} }
else if (toExportCount > exportedCount) else if (toExportCount > exportedCount)
{ {
Logger.Info($"Finished exporting {exportedCount} asset(s) to \"{options.o_outputFolder.Value.Color(Ansi.BrightYellow)}\"."); Logger.Default.Log(LoggerEvent.Info, $"Finished exporting {exportedCount} asset(s) to \"{options.o_outputFolder.Value.Color(Ansi.BrightYellow)}\".", ignoreLevel: true);
} }
else else
{ {
Logger.Info($"Finished exporting {exportedCount} asset(s) to \"{options.o_outputFolder.Value.Color(Ansi.BrightGreen)}\"."); Logger.Default.Log(LoggerEvent.Info, $"Finished exporting {exportedCount} asset(s) to \"{options.o_outputFolder.Value.Color(Ansi.BrightGreen)}\".", ignoreLevel: true);
} }
if (toExportCount > exportedCount) if (toExportCount > exportedCount)
{ {
Logger.Info($"{toExportCount - exportedCount} asset(s) skipped (not extractable or file(s) already exist)."); Logger.Default.Log(LoggerEvent.Info, $"{toExportCount - exportedCount} asset(s) skipped (not extractable or file(s) already exist).", ignoreLevel: true);
} }
} }

View File

@ -14,7 +14,7 @@ namespace AssetStudioGUI
this.action = action; this.action = action;
} }
public void Log(LoggerEvent loggerEvent, string message) public void Log(LoggerEvent loggerEvent, string message, bool ignoreLevel)
{ {
switch (loggerEvent) switch (loggerEvent)
{ {