Skip to content
This repository has been archived by the owner on Jun 23, 2022. It is now read-only.

Commit

Permalink
FW: improving logging
Browse files Browse the repository at this point in the history
  • Loading branch information
Adrian Green committed Feb 20, 2016
1 parent 3364660 commit 3f9a785
Show file tree
Hide file tree
Showing 30 changed files with 304 additions and 94 deletions.
30 changes: 16 additions & 14 deletions AzureWebsitesMigrationAssistant.csproj
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
Expand All @@ -7,7 +7,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>CompatCheckAndMigrate</RootNamespace>
<AssemblyName>CompatCheckAndMigrate</AssemblyName>
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<TargetFrameworkProfile />
<SccProjectName>SAK</SccProjectName>
Expand Down Expand Up @@ -46,6 +46,7 @@
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
Expand All @@ -55,23 +56,19 @@
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup />
<PropertyGroup>
<ManifestCertificateThumbprint>66F37E5E7A4849038BD69132CB37CBB8CCEE8B85</ManifestCertificateThumbprint>
</PropertyGroup>
<PropertyGroup>
<ManifestKeyFile>AzureWebsitesMigrationAssistant_TemporaryKey.pfx</ManifestKeyFile>
<GenerateManifests>false</GenerateManifests>
</PropertyGroup>
<PropertyGroup>
<GenerateManifests>true</GenerateManifests>
</PropertyGroup>
<PropertyGroup>
<SignManifests>true</SignManifests>
</PropertyGroup>
<PropertyGroup>
<NoWin32Manifest>true</NoWin32Manifest>
<SignManifests>false</SignManifests>
</PropertyGroup>
<PropertyGroup />
<PropertyGroup>
<SignAssembly>false</SignAssembly>
</PropertyGroup>
Expand All @@ -82,6 +79,12 @@
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
</PropertyGroup>
<PropertyGroup>
<TargetZone>LocalIntranet</TargetZone>
</PropertyGroup>
<PropertyGroup>
<ApplicationManifest>Properties\app.manifest</ApplicationManifest>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.Web.Administration, Version=7.9.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
Expand Down Expand Up @@ -212,6 +215,7 @@
</Compile>
<Compile Include="Helpers\Application.cs" />
<Compile Include="Helpers\ApplicationPool.cs" />
<Compile Include="Helpers\TraceHelper.cs" />
<Compile Include="Helpers\IISServers.cs" />
<Compile Include="Helpers\RemoteSystemInfos.cs" />
<Compile Include="Helpers\Impersonator.cs" />
Expand Down Expand Up @@ -311,10 +315,8 @@
<None Include="App.config">
<SubType>Designer</SubType>
</None>
<None Include="AzureWebsitesMigrationAssistant_TemporaryKey.pfx">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
<None Include="oldclickonce.cmd" />
<None Include="Properties\app.manifest" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
Expand Down Expand Up @@ -369,4 +371,4 @@
<Target Name="AfterBuild">
</Target>
-->
</Project>
</Project>
2 changes: 1 addition & 1 deletion Controls/AddRemoteServers.cs
Expand Up @@ -34,7 +34,7 @@ public void SetState(object state, bool isNavigatingBack = false)
this.useScom = false;
}

MainForm.WriteTrace("in set state remote");
TraceHelper.Tracer.WriteTrace("in set state remote");
cbxDrive.SelectedIndex = 0;
if (this.useScom)
{
Expand Down
18 changes: 18 additions & 0 deletions Controls/ContentAndDbMigrationControl.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

65 changes: 43 additions & 22 deletions Controls/ContentAndDbMigrationControl.cs
Expand Up @@ -5,6 +5,7 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Diagnostics;
using System.IO;
using System.Linq;
using System.Windows.Forms;
Expand Down Expand Up @@ -72,12 +73,12 @@ public void UpdateProgressbar(string serverAndSiteName)
PublishStatus pubStatus;
if (_publishControlMap.TryGetValue(serverAndSiteName, out pubStatus))
{
MainForm.WriteTrace("Incrementing progress bar for {0}", serverAndSiteName);
TraceHelper.Tracer.WriteTrace("Incrementing progress bar for {0}", serverAndSiteName);
pubStatus.PerformStep();
}
else
{
MainForm.WriteTrace("Not Incrementing progress bar for {0} since status control was not found", serverAndSiteName);
TraceHelper.Tracer.WriteTrace("Not Incrementing progress bar for {0} since status control was not found", serverAndSiteName);
}
}

Expand All @@ -93,12 +94,12 @@ public void SetProgressbarMax(string serverAndSiteName, int maxValue)
pubStatus.PerformStep();
}

MainForm.WriteTrace("Setting progress bar max for {0} to {1}", serverAndSiteName, maxValue);
TraceHelper.Tracer.WriteTrace("Setting progress bar max for {0} to {1}", serverAndSiteName, maxValue);
pubStatus.UpdateMaxProgressBarvalue(maxValue);
}
else
{
MainForm.WriteTrace("Not setting progress bar max for {0} to {1} since status control was not found", serverAndSiteName, maxValue);
TraceHelper.Tracer.WriteTrace("Not setting progress bar max for {0} to {1} since status control was not found", serverAndSiteName, maxValue);
}
}

Expand All @@ -107,12 +108,12 @@ public void SetContentPublished(string serverAndSiteName, bool success)
PublishStatus pubStatus;
if (_publishControlMap.TryGetValue(serverAndSiteName, out pubStatus))
{
MainForm.WriteTrace("Setting content publish completion for {0} to {1}", serverAndSiteName, success);
TraceHelper.Tracer.WriteTrace("Setting content publish completion for {0} to {1}", serverAndSiteName, success);
pubStatus.ContentPublished(success);
}
else
{
MainForm.WriteTrace("Not Setting content publish completion for {0} to {1} since control was not found", serverAndSiteName, success);
TraceHelper.Tracer.WriteTrace("Not Setting content publish completion for {0} to {1} since control was not found", serverAndSiteName, success);
}
}

Expand All @@ -121,7 +122,7 @@ public void SetDbPublished(string serverAndSiteName, bool success)
PublishStatus pubStatus;
if (_publishControlMap.TryGetValue(serverAndSiteName, out pubStatus))
{
MainForm.WriteTrace("Setting db publish completion for {0} to {1}", serverAndSiteName, success);
TraceHelper.Tracer.WriteTrace("Setting db publish completion for {0} to {1}", serverAndSiteName, success);
pubStatus.DbPublished(success);
}
}
Expand All @@ -130,12 +131,12 @@ public void UpdateStatusLabel(string text)
{
if (lblStatus.InvokeRequired)
{
MainForm.WriteTrace("Setting status label text to {0} via invoke", text);
TraceHelper.Tracer.WriteTrace("Setting status label text to {0} via invoke", text);
this.lblStatus.Invoke(new MethodInvoker(delegate() { this.lblStatus.Text = text; }));
}
else
{
MainForm.WriteTrace("Setting status label text to {0}", text);
TraceHelper.Tracer.WriteTrace("Setting status label text to {0}", text);
this.lblStatus.Text = text;
}
}
Expand All @@ -157,7 +158,7 @@ private void TryDeployment(bool retry)

if (retry)
{
MainForm.WriteTrace("Retrying ..");
TraceHelper.Tracer.WriteTrace("Retrying ..");
foreach (var server in this.IISServers.Servers.Values)
{
foreach (var site in server.Sites.Where(s => (!s.ContentPublishState || !s.DbPublishState)))
Expand All @@ -176,7 +177,7 @@ private void TryDeployment(bool retry)
}
else
{
MainForm.WriteTrace("No control found for site: {0}", site.SiteName);
TraceHelper.Tracer.WriteTrace("No control found for site: {0}", site.SiteName);
}
}
}
Expand All @@ -197,7 +198,7 @@ private void TryDeployment(bool retry)
contentTraceFileName,
dbTraceFileName);

MainForm.WriteTrace("Adding control to map for site: {0}", site.SiteName);
TraceHelper.Tracer.WriteTrace("Adding control to map for site: {0}", site.SiteName);
_publishControlMap[site.ServerName + site.SiteName] = pubStatus;
pubStatus.Dock = DockStyle.Top;
statusPanel.Controls.Add(pubStatus);
Expand All @@ -208,7 +209,7 @@ private void TryDeployment(bool retry)
PublishStatus pubStatus;
if (!_publishControlMap.TryGetValue(site.ServerName + site.SiteName, out pubStatus))
{
MainForm.WriteTrace("Adding control to map for site: {0} with site or db creation error", site.SiteName);
TraceHelper.Tracer.WriteTrace("Adding control to map for site: {0} with site or db creation error", site.SiteName);
pubStatus = new PublishStatus(site.SiteName, site.SiteCreationError);
_publishControlMap[site.ServerName + site.SiteName] = pubStatus;
pubStatus.Dock = DockStyle.Top;
Expand All @@ -230,14 +231,14 @@ private void TryDeployment(bool retry)
{
if (!site.ContentPublishState)
{
MainForm.WriteTrace("Queuing operation for site: {0}", site.SiteName);
TraceHelper.Tracer.WriteTrace("Queuing operation for site: {0}", site.SiteName);
var operation = new PublishContentOperation(site, this);
manager.Enqueue(operation);
}
if (!site.DbPublishState)
{
MainForm.WriteTrace("Queing another operation for db for site: {0}", site.SiteName);
TraceHelper.Tracer.WriteTrace("Queing another operation for db for site: {0}", site.SiteName);
manager.Enqueue(new PublishDbOperation(site, this));
}
}
Expand All @@ -247,36 +248,51 @@ private void TryDeployment(bool retry)
{
foreach (var server in this.IISServers.Servers.Values)
{
foreach (var site in server.Sites.Where(s => s.PublishProfile != null && string.IsNullOrEmpty(s.SiteCreationError)))
foreach (var site in server.Sites)
{
if (site.PublishProfile == null)
{
TraceHelper.Tracer.WriteTrace("ERROR: Skipping publish, no publish profile found for site: {0}", site.SiteName);
TraceHelper.Tracer.WriteTrace("HINT: Make sure that the publish profile element for the site contains the attribute" +
" originalsitename=\"{0}:{1}\" attribute", server.Name, site.SiteName);
TraceHelper.Tracer.WriteTrace("For more information see: https://www.movemetothecloud.net/Faq#toc12");
continue;
}
if (string.IsNullOrEmpty(site.SiteCreationError))
{
TraceHelper.Tracer.WriteTrace("ERROR: Skipping publish, site creation error for site: {0}", site.SiteName);
TraceHelper.Tracer.WriteTrace("Site creation error: {0}", site.SiteCreationError);
continue;
}
MainForm.WriteTrace("Queuing operation for site: {0}", site.SiteName);
TraceHelper.Tracer.WriteTrace("Queuing operation for site: {0}", site.SiteName);
var operation = new PublishContentOperation(site, this);
manager.Enqueue(operation);
if (operation.HasDatabase)
{
MainForm.WriteTrace("Queing another operation for db for site: {0}", site.SiteName);
TraceHelper.Tracer.WriteTrace("Queing another operation for db for site: {0}", site.SiteName);
manager.Enqueue(new PublishDbOperation(site, this));
}
}
}
}
MainForm.WriteTrace("Calling start");
TraceHelper.Tracer.WriteTrace("Calling start");
manager.StartProcessing();
MainForm.WriteTrace("Caling Wait");
TraceHelper.Tracer.WriteTrace("Caling Wait");
manager.WaitForOperations();
};

_worker.RunWorkerCompleted += (object runWorkerCompletedSender, RunWorkerCompletedEventArgs runWorkerCompletedEventArgs) =>
{
MainForm.WriteTrace("Wait complete. In worker completed");
TraceHelper.Tracer.WriteTrace("Wait complete. In worker completed");
this.progressPictureBox.Visible = false;
UpdateStatusLabel("Finished deploying");
if (runWorkerCompletedEventArgs.Error != null)
{
MainForm.WriteTrace("Worker thread has errors {0}", runWorkerCompletedEventArgs.Error.Message);
TraceHelper.Tracer.WriteTrace("Worker thread has errors {0}", runWorkerCompletedEventArgs.Error.Message);
MessageBox.Show(runWorkerCompletedEventArgs.Error.Message);
}
Expand Down Expand Up @@ -330,5 +346,10 @@ private void btnBack_Click(object sender, EventArgs e)
{
FireGoToEvent(WizardSteps.SiteStep, this.IISServers, true);
}

private void button1_Click(object sender, EventArgs e)
{
Process.Start(TraceHelper.Tracer.TraceFile);
}
}
}
4 changes: 2 additions & 2 deletions Controls/ContentAndDbMigrationControl.resx
Expand Up @@ -112,9 +112,9 @@
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
2 changes: 2 additions & 0 deletions Controls/InstallerControl.cs
Expand Up @@ -48,6 +48,7 @@ public void UpdateInstallStatus(string productName, string status, bool isComple
catch (Exception ex)
{
_installHelper.LogInformation(ex.ToString());
TraceHelper.Tracer.WriteTrace(ex.ToString());
}
}

Expand Down Expand Up @@ -75,6 +76,7 @@ public void MarkAllProductsComplete()
}
catch (Exception ex)
{
TraceHelper.Tracer.WriteTrace(ex.ToString());
_installHelper.LogInformation(ex.ToString());
_installHelper.Dispose();
}
Expand Down
4 changes: 3 additions & 1 deletion Controls/MigrationCandidatesControl.cs
Expand Up @@ -365,9 +365,11 @@ private void SyncSelectedObjects(TreeNode selectedNode, bool nodeChecked)
}
catch (System.ArgumentException ex)
{
MessageBox.Show("Invalid connection string.\r\n\r\nValid connection string should be like\r\n 'Data Source=<servername>; Initial Catalog=<intialCatalog>; Trusted_Connection=<Yes|No>'" );
string message = "Invalid connection string.\r\n\r\nValid connection string should be like\r\n 'Data Source=<servername>; Initial Catalog=<intialCatalog>; Trusted_Connection=<Yes|No>'";
MessageBox.Show(message);
selectedNode.Tag = "AddDB";
selectedNode.Checked = false;
TraceHelper.Tracer.WriteTrace(message);
return;
}
}
Expand Down

0 comments on commit 3f9a785

Please sign in to comment.