aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI
diff options
context:
space:
mode:
authorAvi Levkovich <avi@twine-s.com>2019-11-28 18:00:04 +0200
committerAvi Levkovich <avi@twine-s.com>2019-11-28 18:00:04 +0200
commitbac355d83fbd8628336bfa763e9a8b7f1db164e2 (patch)
tree037112c61a06eba04610f01b9c9e559b49cf5777 /Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI
parent09b91aa98f10b7109cb97312021de8925a4b5339 (diff)
parent8276e5eb7c56b58ed86f611ca5bd9b1dc56b25b9 (diff)
downloadTango-bac355d83fbd8628336bfa763e9a8b7f1db164e2.tar.gz
Tango-bac355d83fbd8628336bfa763e9a8b7f1db164e2.zip
Merge branch 'master' of https://twinetfs.visualstudio.com/_git/Tango
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI')
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/App.xaml.cs22
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/TFS/TeamFoundationServiceExtendedClient.cs56
2 files changed, 56 insertions, 22 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/App.xaml.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/App.xaml.cs
index 8309500b7..94f98feb2 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/App.xaml.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/App.xaml.cs
@@ -23,13 +23,14 @@ using Tango.MachineStudio.UI.Views;
using Tango.MachineStudio.Common;
using Tango.Core;
using Tango.BL;
+using Tango.Integration.Operation;
namespace Tango.MachineStudio.UI
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
- public partial class App : Application
+ public partial class App : Application
{
private WpfGlobalExceptionTrapper exceptionTrapper;
private LogManager LogManager = LogManager.Default;
@@ -61,7 +62,14 @@ namespace Tango.MachineStudio.UI
#if DEBUG
LogManager.RegisterLogger(new VSOutputLogger());
#endif
- LogManager.RegisterLogger(new FileLogger());
+ LogManager.RegisterLogger(new FileLogger() { EnableAutoLogRemoval = true, EnableMaxFileSizeLimit = true });
+
+ var operatorLogger = MachineOperator.EmbeddedLogManager.RegisteredLoggers.SingleOrDefault(x => x is FileLogger) as FileLogger;
+ if (operatorLogger != null)
+ {
+ operatorLogger.EnableAutoLogRemoval = true;
+ operatorLogger.EnableMaxFileSizeLimit = true;
+ }
LogManager.Log("Application Started...");
@@ -89,7 +97,13 @@ namespace Tango.MachineStudio.UI
exceptionTrapper.Initialize(this);
exceptionTrapper.ApplicationCrashed += ExceptionTrapper_ApplicationCrashed;
- //Apply Caching
+ ApplyEFCacheSettings();
+ }
+
+ private void ApplyEFCacheSettings()
+ {
+ var settings = SettingsManager.Default.GetOrCreate<MachineStudioSettings>();
+
if (settings.CachingMode != ObservablesContextInMemoryCachingMode.None)
{
LogManager.Log("EF Caching is enabled.");
@@ -108,9 +122,7 @@ namespace Tango.MachineStudio.UI
{
LogManager.Log("EF Caching is disabled");
}
-
}
-
#region Global Exception Trapping
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/TFS/TeamFoundationServiceExtendedClient.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/TFS/TeamFoundationServiceExtendedClient.cs
index 31b330c3f..b3e121253 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/TFS/TeamFoundationServiceExtendedClient.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/TFS/TeamFoundationServiceExtendedClient.cs
@@ -185,6 +185,22 @@ namespace Tango.MachineStudio.UI.TFS
return item;
}
+ private string[] GetLogFiles(FileLogger logger)
+ {
+ string[] fileEntries = new string[1];
+ fileEntries[0] = logger.LogFile;
+ string fileName = Path.GetFileNameWithoutExtension(logger.LogFile);
+ int indexPos = fileName.IndexOf(FileLogger.FILE_SET_EXTENSION);
+ if (indexPos > 0)
+ {
+ string extension = Path.GetExtension(logger.LogFile);
+ fileName = fileName.Substring(0, indexPos);
+ fileEntries = Directory.GetFiles(logger.Folder, $"{fileName}*{extension}").Where(x => Path.GetFileName(x).StartsWith(logger.Tag)).OrderBy(x => x.Length).ThenBy(x => x).ToArray();
+ }
+
+ return fileEntries;
+ }
+
public void FinalizeBug(WorkItem item)
{
IAuthenticationProvider auth = TangoIOC.Default.GetInstance<IAuthenticationProvider>();
@@ -192,31 +208,37 @@ namespace Tango.MachineStudio.UI.TFS
FileLogger appFileLogger = LogManager.Default.RegisteredLoggers.FirstOrDefault(x => x.GetType() == typeof(FileLogger)) as FileLogger;
FileLogger embeddedFileLogger = MachineOperator.EmbeddedLogManager.RegisteredLoggers.FirstOrDefault(x => x.GetType() == typeof(FileLogger)) as FileLogger;
-
+
if (appFileLogger != null)
{
- var appLogFile = _tempFolder.CreateImaginaryFile();
- File.Copy(appFileLogger.LogFile, appLogFile.Path);
-
- item.Attachments.Add(new Attachment()
+ string[] logFiles = GetLogFiles(appFileLogger);
+ foreach( string file in logFiles)
{
- Description = "Application Log File",
- FilePath = appLogFile.Path,
- Name = Path.GetFileName(appFileLogger.LogFile),
- });
+ var appLogFile = _tempFolder.CreateImaginaryFile();
+ File.Copy(file, appLogFile.Path);
+ item.Attachments.Add(new Attachment()
+ {
+ Description = "Application Log File",
+ FilePath = appLogFile.Path,
+ Name = Path.GetFileName(file),
+ });
+ }
}
if (embeddedFileLogger != null && File.Exists(embeddedFileLogger.LogFile))
{
- var embeddedLogFile = _tempFolder.CreateImaginaryFile();
- File.Copy(embeddedFileLogger.LogFile, embeddedLogFile.Path);
-
- item.Attachments.Add(new Attachment()
+ string[] logFiles = GetLogFiles(embeddedFileLogger);
+ foreach (string file in logFiles)
{
- Description = "Embedded Log File",
- FilePath = embeddedLogFile.Path,
- Name = Path.GetFileName(embeddedFileLogger.LogFile),
- });
+ var embeddedLogFile = _tempFolder.CreateImaginaryFile();
+ File.Copy(file, embeddedLogFile.Path);
+ item.Attachments.Add(new Attachment()
+ {
+ Description = "Embedded Log File",
+ FilePath = embeddedLogFile.Path,
+ Name = Path.GetFileName(file),
+ });
+ }
}
SystemInformationModel sysModel = new SystemInformationModel();