Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,28 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch .NET 10 (SimpleL7Proxy)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build (Main Solution - .NET 10)",
"program": "${workspaceFolder}/src/SimpleL7Proxy/bin/Debug/net10.0/SimpleL7Proxy.dll",
"args": [],
"cwd": "${workspaceFolder}/src/SimpleL7Proxy",
"stopAtEntry": false,
"console": "internalConsole"
},
{
"name": "Launch .NET 9 (Functions)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build (Functions - .NET 9)",
"program": "${workspaceFolder}/functions/bin/Debug/net9.0/functions.dll",
"args": [],
"cwd": "${workspaceFolder}/functions",
"stopAtEntry": false,
"console": "internalConsole"
},
{
"name": "Attach to .NET Functions",
"type": "coreclr",
Expand Down
146 changes: 146 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,68 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "build (Main Solution - .NET 10)",
"command": "dotnet",
"args": [
"build",
"${workspaceFolder}/SimpleL7Proxy.sln",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
"type": "process",
"group": "build",
"problemMatcher": "$msCompile",
"presentation": {
"reveal": "always",
"panel": "shared"
}
},
{
"label": "build (Functions - .NET 9)",
"command": "dotnet",
"args": [
"build",
"${workspaceFolder}/functions/functions.sln",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
"type": "process",
"group": "build",
"problemMatcher": "$msCompile",
"presentation": {
"reveal": "always",
"panel": "shared"
}
},
{
"label": "Switch to .NET 10 Solution",
"command": "echo",
"args": [
"Switched to .NET 10 (SimpleL7Proxy.sln)"
],
"type": "shell",
"problemMatcher": [],
"presentation": {
"reveal": "always",
"panel": "dedicated",
"showReuseMessage": false
}
},
{
"label": "Switch to .NET 9 Solution",
"command": "echo",
"args": [
"Switched to .NET 9 (functions.sln)"
],
"type": "shell",
"problemMatcher": [],
"presentation": {
"reveal": "always",
"panel": "dedicated",
"showReuseMessage": false
}
},
{
"label": "clean (functions)",
"command": "dotnet",
Expand Down Expand Up @@ -76,6 +138,90 @@
"command": "host start",
"isBackground": true,
"problemMatcher": "$func-dotnet-watch"
},
{
"label": "build SimpleL7Proxy",
"type": "shell",
"command": "dotnet build src/SimpleL7Proxy/SimpleL7Proxy.csproj /property:GenerateFullPaths=true /consoleloggerparameters:NoSummary"
},
{
"label": "build SimpleL7Proxy",
"type": "shell",
"command": "dotnet build src/SimpleL7Proxy/SimpleL7Proxy.csproj /property:GenerateFullPaths=true /consoleloggerparameters:NoSummary"
},
{
"label": "build SimpleL7Proxy",
"type": "shell",
"command": "dotnet build src/SimpleL7Proxy/SimpleL7Proxy.csproj /property:GenerateFullPaths=true /consoleloggerparameters:NoSummary"
},
{
"label": "build SimpleL7Proxy",
"type": "shell",
"command": "dotnet build src/SimpleL7Proxy/SimpleL7Proxy.csproj /property:GenerateFullPaths=true /consoleloggerparameters:NoSummary"
},
{
"label": "build SimpleL7Proxy",
"type": "shell",
"command": "dotnet build src/SimpleL7Proxy/SimpleL7Proxy.csproj /property:GenerateFullPaths=true /consoleloggerparameters:NoSummary"
},
{
"label": "build SimpleL7Proxy",
"type": "shell",
"command": "dotnet build src/SimpleL7Proxy/SimpleL7Proxy.csproj /property:GenerateFullPaths=true /consoleloggerparameters:NoSummary"
},
{
"label": "build SimpleL7Proxy",
"type": "shell",
"command": "dotnet build src/SimpleL7Proxy/SimpleL7Proxy.csproj /property:GenerateFullPaths=true /consoleloggerparameters:NoSummary"
},
{
"label": "build SimpleL7Proxy only",
"type": "shell",
"command": "dotnet build \"${workspaceFolder}/src/SimpleL7Proxy/SimpleL7Proxy.csproj\" /property:GenerateFullPaths=true /consoleloggerparameters:NoSummary",
"group": "build"
},
{
"label": "build (Main Solution in WSL)",
"type": "process",
"command": "wsl.exe",
"args": [
"-d",
"Ubuntu-22.04",
"--cd",
"/mnt/c/Users/nmishr/OneDrive - Microsoft/repos/microsoft/main/SimpleL7Proxy",
"dotnet",
"build",
"SimpleL7Proxy.sln",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
"group": "build",
"problemMatcher": "$msCompile",
"presentation": {
"reveal": "always",
"panel": "shared"
}
},
{
"label": "build (Functions in WSL)",
"type": "process",
"command": "wsl.exe",
"args": [
"-d",
"Ubuntu-22.04",
"--cd",
"/mnt/c/Users/nmishr/OneDrive - Microsoft/repos/microsoft/main/SimpleL7Proxy/functions",
"dotnet",
"build",
"functions.sln",
"/property:GenerateFullPaths=true",
"/consoleloggerparameters:NoSummary"
],
"problemMatcher": "$msCompile",
"presentation": {
"reveal": "always",
"panel": "shared"
}
}
]
}
13 changes: 11 additions & 2 deletions ReleaseNotes/version2.2.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,22 @@
# Release Notes #

2.2.10.6-d1

Shared
* Pulled Stream Processor code into folder
* Updated to dotnet 10

Proxy:
* Moved Stream Processor into Shared

2.2.10.5

* Bug Fix: Start App Insights with app config setting
* Bug Fix: environment defaults and BackendOptions were getting mixedup
* Bug Fix: environment defaults and BackendOptions were getting mixed-up
* Bug Fix: Probes not getting logged
* Bug Fix: Environment variables not being defaulted to
* Bug Fix: Make sure program does not exit until shutdown completes
* Make shared_iterator use either singlePass or maxAttempts, default to singlePass.
* Make shared iterator use either single Pass or maxAttempts, default to single Pass.
* Don't invalidate shared iterators unless using latency load balancer and the order changed
* In the case of a 404, use the same response path as a normal response
* Bug fix: possible loss of event in edge case
Expand Down
10 changes: 9 additions & 1 deletion src/Shared/Shared.csproj
Original file line number Diff line number Diff line change
@@ -1,6 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net9.0</TargetFramework>
<TargetFramework>net10.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.Extensions.Configuration.AzureAppConfiguration" Version="8.5.0" />
<PackageReference Include="Microsoft.Extensions.Hosting" Version="10.0.5" />
<PackageReference Include="Microsoft.Extensions.Hosting.Abstractions" Version="10.0.5" />
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="10.0.5" />
</ItemGroup>
</Project>
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@

using System.Text.Json.Nodes;
using System.Net.Http.Headers;
using SimpleL7Proxy.Events;

namespace SimpleL7Proxy.StreamProcessor
{
Expand Down Expand Up @@ -42,7 +41,7 @@ protected override void ProcessLastLines(string[] lastLines, string primaryLine)
/// <summary>
/// Populates event data with comprehensive statistics and provides backward compatibility.
/// </summary>
protected override void PopulateEventData(ProxyEvent eventData, HttpResponseHeaders headers)
protected override void PopulateEventData(IDictionary<string, string> eventData, HttpResponseHeaders headers)
{
// Copy all captured data to the event data
foreach (var kvp in data)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
using System.Net.Http.Headers;
using SimpleL7Proxy.Events;
using Microsoft.Extensions.Logging;


/*
* STREAM PROCESSOR BASE CLASS DOCUMENTATION
* =======================================
Expand Down Expand Up @@ -69,7 +69,7 @@ public static void SetLogger(ILogger? logger)
/// </summary>
/// <param name="eventData">The event data object to populate with statistics.</param>
/// <param name="headers">The HTTP response headers containing potential statistics.</param>
public abstract void GetStats(ProxyEvent eventData, HttpResponseHeaders headers);
public abstract void GetStats(IDictionary<string, string> eventData, HttpResponseHeaders headers);

private string _backgroundRequestId = string.Empty;
private bool _backgroundCompleted = false;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@

using System.Text.Json.Nodes;
using System.Net.Http.Headers;
using Microsoft.Extensions.Logging;
using SimpleL7Proxy.Events;
using System.Text.RegularExpressions;

namespace SimpleL7Proxy.StreamProcessor
Expand Down Expand Up @@ -70,7 +68,7 @@ protected override void ProcessLastLines(string[] lastLines, string primaryLine)
/// <summary>
/// Populates event data with comprehensive statistics and provides backward compatibility.
/// </summary>
protected override void PopulateEventData(ProxyEvent eventData, HttpResponseHeaders headers)
protected override void PopulateEventData(IDictionary<string, string> eventData, HttpResponseHeaders headers)
{
// Copy all captured data to the event data
foreach (var kvp in data)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using System.Net.Http.Headers;
using SimpleL7Proxy.Events;

namespace SimpleL7Proxy.StreamProcessor
{
Expand All @@ -20,7 +19,7 @@ public override async Task CopyToAsync(System.Net.Http.HttpContent sourceContent
/// <summary>
/// No statistics are extracted by the default processor.
/// </summary>
public override void GetStats(ProxyEvent eventData, HttpResponseHeaders headers)
public override void GetStats(IDictionary<string, string> eventData, HttpResponseHeaders headers)
{
// No stats to collect in default processor
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
using SimpleL7Proxy.Events;
using System.Net.Http.Headers;

namespace SimpleL7Proxy.StreamProcessor
Expand All @@ -21,7 +20,7 @@ public interface IStreamProcessor : IDisposable
/// Gets statistics about the stream processing operation.
/// </summary>
/// <returns>A dictionary containing processing statistics.</returns>
void GetStats(ProxyEvent eventData, HttpResponseHeaders headers);
void GetStats(IDictionary<string, string> eventData, HttpResponseHeaders headers);

// Partial method to indicate if the request is running in background mode
string BackgroundRequestId { get; }
Expand Down
Loading