Skip to content

Commit

Permalink
Revert "Warnings were getting buried in binlogs; promote ALL SendAsyn…
Browse files Browse the repository at this point in the history
…c logging to Important (it's brief) and produce warnings for missing queues. (#8426)"

This reverts commit 6bf25f4.
  • Loading branch information
premun authored Feb 10, 2022
1 parent 0edc3d6 commit 37d5234
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 10 deletions.
6 changes: 0 additions & 6 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,6 @@ stages:
-ci
-restore
-test
-warnAsError $false
-projects $(Build.SourcesDirectory)\tests\UnitTests.proj
/bl:$(Build.SourcesDirectory)\artifacts\log\$(_BuildConfig)\Helix.binlog
/p:RestoreUsingNuGetTargets=false
Expand Down Expand Up @@ -171,7 +170,6 @@ stages:
-ci
-restore
-test
-warnAsError $false
-projects $(Build.SourcesDirectory)\tests\XHarness.Android.DeviceTests.proj
/bl:$(Build.SourcesDirectory)\artifacts\log\$(_BuildConfig)\Helix.XHarness.Android.Device.Tests.binlog
/p:RestoreUsingNuGetTargets=false
Expand Down Expand Up @@ -202,7 +200,6 @@ stages:
--ci
--restore
--test
--warnAsError false
--projects $(Build.SourcesDirectory)/tests/UnitTests.proj
/bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/Helix.binlog
/p:RestoreUsingNuGetTargets=false
Expand Down Expand Up @@ -233,7 +230,6 @@ stages:
-ci
-restore
-test
-warnAsError false
-projects $(Build.SourcesDirectory)/tests/XHarness.Apple.SimulatorTests.proj
/bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/XHarness.Apple.Simulator.Tests.binlog
/p:RestoreUsingNuGetTargets=false
Expand Down Expand Up @@ -264,7 +260,6 @@ stages:
-ci
-restore
-test
-warnAsError false
-projects $(Build.SourcesDirectory)/tests/XHarness.Apple.DeviceTests.proj
/bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/Helix.XHarness.Apple.Device.Tests.binlog
/p:RestoreUsingNuGetTargets=false
Expand Down Expand Up @@ -295,7 +290,6 @@ stages:
-ci
-restore
-test
-warnAsError false
-projects $(Build.SourcesDirectory)/tests/XHarness.Android.SimulatorTests.proj
/bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/Helix.XHarness.Android.Simulator.Tests.binlog
/p:RestoreUsingNuGetTargets=false
Expand Down
12 changes: 10 additions & 2 deletions src/Microsoft.DotNet.Helix/JobSender/JobDefinition.cs
Original file line number Diff line number Diff line change
Expand Up @@ -238,23 +238,31 @@ public async Task<ISentJob> SendAsync(Action<string> log, CancellationToken canc

private void WarnForImpendingRemoval(Action<string> log, QueueInfo queueInfo)
{
bool azDoVariableDefined = !string.IsNullOrEmpty(Environment.GetEnvironmentVariable("SYSTEM_TEAMPROJECT"));
DateTime whenItExpires = DateTime.MaxValue;

if (DateTime.TryParseExact(queueInfo.EstimatedRemovalDate, "yyyy-MM-dd", null, DateTimeStyles.AssumeUniversal, out DateTime dtIso))
{
whenItExpires = dtIso;
}
// This branch can be removed once the strings start coming in in ISO-8601 format
// Currently the API provides values in this format though and they are unlikely to get confused with each other.
else if (DateTime.TryParseExact(queueInfo.EstimatedRemovalDate, "M/d/yyyy", null, DateTimeStyles.AssumeUniversal, out DateTime dtUsa))
{
whenItExpires = dtUsa;
}

if (whenItExpires != DateTime.MaxValue) // We recognized a date from the string
{
TimeSpan untilRemoved = whenItExpires.ToUniversalTime().Subtract(DateTime.UtcNow);
if (untilRemoved.TotalDays <= 21)
{
log?.Invoke($"warning : Helix queue {queueInfo.QueueId} {(untilRemoved.TotalDays < 0 ? "was" : "is")} slated for removal on {queueInfo.EstimatedRemovalDate}. Please discontinue usage. Contact dnceng for questions / concerns ");
log?.Invoke($"{(azDoVariableDefined ? "##vso[task.logissue type=warning]" : "")}Helix queue {queueInfo.QueueId} {(untilRemoved.TotalDays < 0 ? "was" : "is")} slated for removal on {queueInfo.EstimatedRemovalDate}. Please discontinue usage. Contact dnceng for questions / concerns ");
}
}
else
{
log?.Invoke($"error : Unable to parse estimated removal date '{queueInfo.EstimatedRemovalDate}' for queue '{queueInfo.QueueId}' (please contact dnceng with this information)");
log?.Invoke($"{(azDoVariableDefined ? "##vso[task.logissue type=warning]" : "")}Unable to parse estimated removal date '{queueInfo.EstimatedRemovalDate}' for queue '{queueInfo.QueueId}' (please contact dnceng with this information)");
}
}

Expand Down
4 changes: 2 additions & 2 deletions src/Microsoft.DotNet.Helix/Sdk/SendHelixJob.cs
Original file line number Diff line number Diff line change
Expand Up @@ -262,9 +262,9 @@ protected override async Task ExecuteCore(CancellationToken cancellationToken)
}

Log.LogMessage(MessageImportance.High, $"Sending Job to {TargetQueue}...");

cancellationToken.ThrowIfCancellationRequested();
// LogMessageFromText will take any string formatted as a canonical error or warning and convert the type of log to this
ISentJob job = await def.SendAsync(msg => Log.LogMessageFromText(msg, MessageImportance.High), cancellationToken);
ISentJob job = await def.SendAsync(msg => Log.LogMessage(msg), cancellationToken);
JobCorrelationId = job.CorrelationId;
JobCancellationToken = job.HelixCancellationToken;
ResultsContainerUri = job.ResultsContainerUri;
Expand Down

0 comments on commit 37d5234

Please sign in to comment.