-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
HTTP stress test improvements #42313
Conversation
Tagging subscribers to this area: @dotnet/ncl |
/azp run runtime-libraries stress-http |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run runtime-libraries stress-http |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run runtime-libraries stress-http |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run runtime-libraries stress-http |
Azure Pipelines successfully started running 1 pipeline(s). |
Proper file logging with rotation, unified options.
4dc1f59
to
4bdb93d
Compare
/azp run runtime-libraries stress-http |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run runtime-libraries stress-http |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run runtime-libraries stress-http |
Azure Pipelines successfully started running 1 pipeline(s). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, and I can confirm this fixed the System.IO.Pipelines issue.
But probably still needs an other pair of eyes, more experienced with the HttpStress code.
@@ -25,63 +44,63 @@ protected override void OnEventSourceCreated(EventSource eventSource) | |||
} | |||
} | |||
|
|||
protected override void OnEventWritten(EventWrittenEventArgs eventData) | |||
private async Task ProcessMessages() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
NIT: ProcessMessagesAsync()
@@ -43,8 +43,8 @@ public class Configuration | |||
public double CancellationProbability { get; set; } | |||
|
|||
public bool UseHttpSys { get; set; } | |||
public string? LogPath { get; set; } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So there's no value having this configurable?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My goal was to make the logging usable for my investigations (file rotation, client and server side logging). To make it work with customizable path seemed like too much effort with a little gain.
<PackageReference Include="Serilog.Extensions.Logging.File" Version="2.0.0" /> | ||
<PackageReference Include="Serilog.Sinks.File" Version="4.1.0" /> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we have any rules about using 3rd-party helpers of this kind?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know. I didn't even considered it here since it's completely separate tool from production code.
@@ -19,8 +19,6 @@ namespace HttpStress | |||
{ | |||
public class StressClient : IDisposable | |||
{ | |||
private const string UNENCRYPTED_HTTP2_ENV_VAR = "DOTNET_SYSTEM_NET_HTTP_SOCKETSHTTPHANDLER_HTTP2UNENCRYPTEDSUPPORT"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is being removed because #987 got implemented right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Exactly, this setting doesn't exist anymore and was replaced by usage of HttpVersionPolicy
here: https:/dotnet/runtime/pull/42313/files#diff-6e9155f2664d22f1f4e0e8288b9c5719R73
/azp run runtime-libraries stress-http |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run runtime-libraries stress-ssl |
Azure Pipelines successfully started running 1 pipeline(s). |
Fixes:
HttpVersionPolicy
Re-hauled tracing:
Minor renames.
Contributes to: #42211 and #42198