diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4ed5ed7b..393c62f1 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -26,6 +26,11 @@ jobs: - name: Checkout code uses: actions/checkout@v4 + - uses: actions/setup-dotnet@v4 + with: + dotnet-version: '10.0.x' + dotnet-quality: 'preview' + - name: Run DotNet Tests run: | dotnet test --collect:"XPlat Code Coverage" @@ -234,7 +239,7 @@ jobs: cp -r /tmp/digests-router-amd64/private/* /tmp/digests-router/private/ || true cp -r /tmp/digests-router-arm64/public/* /tmp/digests-router/public/ || true cp -r /tmp/digests-router-arm64/private/* /tmp/digests-router/private/ || true - + # List files to verify echo "Public digests:" ls -la /tmp/digests-router/public/ || true @@ -432,7 +437,7 @@ jobs: run: | mkdir -p /tmp/digests rm -rf /tmp/digests/* || true - + - name: Download x86_64 digests uses: actions/download-artifact@v4 with: @@ -444,13 +449,13 @@ jobs: with: name: digests-extension-aarch64 path: /tmp/digests-aarch64 - + - name: Merge digests run: | # Copy files from platform-specific folders to the main folder cp -r /tmp/digests-x86_64/* /tmp/digests/ || true cp -r /tmp/digests-aarch64/* /tmp/digests/ || true - + # List files to verify echo "Extension digests:" ls -la /tmp/digests/ || true diff --git a/DEVELOPMENT-CURRENT-COMMANDS.md b/DEVELOPMENT-CURRENT-COMMANDS.md index e99f3bea..2c39ad1b 100644 --- a/DEVELOPMENT-CURRENT-COMMANDS.md +++ b/DEVELOPMENT-CURRENT-COMMANDS.md @@ -18,7 +18,7 @@ NUMBER_OF_WORKERS=4 node dist/app.cjs dotnet build -c Release src/PwrDrvr.LambdaDispatch.Router -BUILD_TIME=$(date) GIT_HASH=$(git rev-parse --short HEAD) LAMBDA_DISPATCH_MinWorkerThreads=1 LAMBDA_DISPATCH_MaxWorkerThreads=4 DOTNET_ThreadPool_UnfairSemaphoreSpinLimit=0 LAMBDA_DISPATCH_InstanceCountMultiplier=4 LAMBDA_DISPATCH_MaxConcurrentCount=20 LAMBDA_DISPATCH_AllowInsecureControlChannel=true LAMBDA_DISPATCH_PreferredControlChannelScheme=http LAMBDA_DISPATCH_FunctionName=dogs AWS_LAMBDA_SERVICE_URL=http://localhost:5051 AWS_REGION=us-east-2 AWS_ACCESS_KEY_ID=test-access-key-id AWS_SECRET_ACCESS_KEY=test-secret-access-key AWS_SESSION_TOKEN=test-session-token src/PwrDrvr.LambdaDispatch.Router/bin/Release/net8.0/PwrDrvr.LambdaDispatch.Router 2>&1 | tee router.log +BUILD_TIME=$(date) GIT_HASH=$(git rev-parse --short HEAD) LAMBDA_DISPATCH_MinWorkerThreads=1 LAMBDA_DISPATCH_MaxWorkerThreads=4 DOTNET_ThreadPool_UnfairSemaphoreSpinLimit=0 LAMBDA_DISPATCH_InstanceCountMultiplier=4 LAMBDA_DISPATCH_MaxConcurrentCount=20 LAMBDA_DISPATCH_AllowInsecureControlChannel=true LAMBDA_DISPATCH_PreferredControlChannelScheme=http LAMBDA_DISPATCH_FunctionName=dogs AWS_LAMBDA_SERVICE_URL=http://localhost:5051 AWS_REGION=us-east-2 AWS_ACCESS_KEY_ID=test-access-key-id AWS_SECRET_ACCESS_KEY=test-secret-access-key AWS_SESSION_TOKEN=test-session-token src/PwrDrvr.LambdaDispatch.Router/bin/Release/net9.0/PwrDrvr.LambdaDispatch.Router 2>&1 | tee router.log # extension @@ -37,7 +37,7 @@ date # d-router - fix-scale-down-timer branch -BUILD_TIME=$(date) GIT_HASH=$(git rev-parse --short HEAD) LAMBDA_DISPATCH_MaxWorkerThreads=2 DOTNET_ThreadPool_UnfairSemaphoreSpinLimit=0 LAMBDA_DISPATCH_InstanceCountMultiplier=2 LAMBDA_DISPATCH_MaxConcurrentCount=10 LAMBDA_DISPATCH_AllowInsecureControlChannel=true LAMBDA_DISPATCH_PreferredControlChannelScheme=http LAMBDA_DISPATCH_FunctionName=dogs AWS_LAMBDA_SERVICE_URL=http://localhost:5051 AWS_REGION=us-east-2 AWS_ACCESS_KEY_ID=test-access-key-id AWS_SECRET_ACCESS_KEY=test-secret-access-key AWS_SESSION_TOKEN=test-session-token src/PwrDrvr.LambdaDispatch.Router/bin/Release/net8.0/PwrDrvr.LambdaDispatch.Router 2>&1 > router.log +BUILD_TIME=$(date) GIT_HASH=$(git rev-parse --short HEAD) LAMBDA_DISPATCH_MaxWorkerThreads=2 DOTNET_ThreadPool_UnfairSemaphoreSpinLimit=0 LAMBDA_DISPATCH_InstanceCountMultiplier=2 LAMBDA_DISPATCH_MaxConcurrentCount=10 LAMBDA_DISPATCH_AllowInsecureControlChannel=true LAMBDA_DISPATCH_PreferredControlChannelScheme=http LAMBDA_DISPATCH_FunctionName=dogs AWS_LAMBDA_SERVICE_URL=http://localhost:5051 AWS_REGION=us-east-2 AWS_ACCESS_KEY_ID=test-access-key-id AWS_SECRET_ACCESS_KEY=test-secret-access-key AWS_SESSION_TOKEN=test-session-token src/PwrDrvr.LambdaDispatch.Router/bin/Release/net9.0/PwrDrvr.LambdaDispatch.Router 2>&1 > router.log # d-demoapp diff --git a/DockerfileExtensionDotNet b/DockerfileExtensionDotNet index 3c58f809..70bcec98 100644 --- a/DockerfileExtensionDotNet +++ b/DockerfileExtensionDotNet @@ -1,6 +1,6 @@ # Use the official .NET 8 SDK image as the build environment # Build with whatever CPU the host OS has -FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env +FROM mcr.microsoft.com/dotnet/sdk:9.0 AS build-env # Needed for Native AOT compilation RUN apt update diff --git a/DockerfileRouter b/DockerfileRouter index 9c476cbd..5ee6f70c 100644 --- a/DockerfileRouter +++ b/DockerfileRouter @@ -1,6 +1,5 @@ -# Use the official .NET 8 SDK image as the build environment -# Build with whatever CPU the host OS has -FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build-env +# Check for image versions here: https://github.com/dotnet/dotnet-docker/blob/main/README.sdk.md +FROM mcr.microsoft.com/dotnet/sdk:10.0-preview AS build-env # Set the working directory WORKDIR /app diff --git a/extension/src/router_channel.rs b/extension/src/router_channel.rs index 76dd2e6e..3a510974 100644 --- a/extension/src/router_channel.rs +++ b/extension/src/router_channel.rs @@ -534,7 +534,7 @@ impl RouterChannel { // Include: Path and Query string, status code, bytes sent, bytes received, duration, time since // last bytes sent, time since last bytes received // log::info() - log::info!( + log::trace!( "{} - {} - BytesSentToApp: {} - BytesRcvdFromApp: {} - Access Log", app_url, status_code, diff --git a/global.json b/global.json new file mode 100644 index 00000000..de2ac638 --- /dev/null +++ b/global.json @@ -0,0 +1,7 @@ +{ + "sdk": { + "version": "10.0.100-preview.1.25120.13", + "rollForward": "latestFeature", + "allowPrerelease": true + } +} diff --git a/src/PwrDrvr.LambdaDispatch.Extension/PwrDrvr.LambdaDispatch.Extension.csproj b/src/PwrDrvr.LambdaDispatch.Extension/PwrDrvr.LambdaDispatch.Extension.csproj index 4c8ddea7..908356fd 100644 --- a/src/PwrDrvr.LambdaDispatch.Extension/PwrDrvr.LambdaDispatch.Extension.csproj +++ b/src/PwrDrvr.LambdaDispatch.Extension/PwrDrvr.LambdaDispatch.Extension.csproj @@ -5,7 +5,7 @@ portable true Exe - net8.0 + net10.0 enable enable Lambda @@ -57,8 +57,8 @@ - - + + diff --git a/src/PwrDrvr.LambdaDispatch.Messages/PwrDrvr.LambdaDispatch.Messages.csproj b/src/PwrDrvr.LambdaDispatch.Messages/PwrDrvr.LambdaDispatch.Messages.csproj index 3bd9c770..79f13488 100644 --- a/src/PwrDrvr.LambdaDispatch.Messages/PwrDrvr.LambdaDispatch.Messages.csproj +++ b/src/PwrDrvr.LambdaDispatch.Messages/PwrDrvr.LambdaDispatch.Messages.csproj @@ -1,7 +1,7 @@  - net8.0 + net10.0 enable enable portable diff --git a/src/PwrDrvr.LambdaDispatch.Router/Dispatcher.cs b/src/PwrDrvr.LambdaDispatch.Router/Dispatcher.cs index 6a9dc4d3..0e59aa52 100644 --- a/src/PwrDrvr.LambdaDispatch.Router/Dispatcher.cs +++ b/src/PwrDrvr.LambdaDispatch.Router/Dispatcher.cs @@ -258,7 +258,7 @@ public async Task AddRequest(HttpRequest incomingRequest, HttpResponse incomingR } // Log an access log entry - _logger.LogInformation("{Method} {Url} {Protocol} {RemoteIP} {UserAgent} - {} Status - {} Bytes Received - {} Bytes Sent - Access Log", + _logger.LogTrace("{Method} {Url} {Protocol} {RemoteIP} {UserAgent} - {} Status - {} Bytes Received - {} Bytes Sent - Access Log", accessLogProps.Method, accessLogProps.Uri, accessLogProps.Protocol, @@ -745,7 +745,7 @@ private bool TryBackgroundDispatchOne(PendingRequest pendingRequest, ILambdaConn RunRequestResult runRequestResult = task.Result; // Log an access log entry - _logger.LogInformation("{Method} {Url} {Protocol} {RemoteIP} {UserAgent} - {} Status - {} Bytes Received - {} Bytes Sent - Access Log - Background", + _logger.LogTrace("{Method} {Url} {Protocol} {RemoteIP} {UserAgent} - {} Status - {} Bytes Received - {} Bytes Sent - Access Log - Background", accessLogProps.Method, accessLogProps.Uri, accessLogProps.Protocol, diff --git a/src/PwrDrvr.LambdaDispatch.Router/PwrDrvr.LambdaDispatch.Router.csproj b/src/PwrDrvr.LambdaDispatch.Router/PwrDrvr.LambdaDispatch.Router.csproj index 49c531fe..ea6ba7a3 100644 --- a/src/PwrDrvr.LambdaDispatch.Router/PwrDrvr.LambdaDispatch.Router.csproj +++ b/src/PwrDrvr.LambdaDispatch.Router/PwrDrvr.LambdaDispatch.Router.csproj @@ -1,7 +1,9 @@ - net8.0 + true + true + net10.0 enable enable portable @@ -32,10 +34,10 @@ - - - - + + + + diff --git a/test/PwrDrvr.LambdaDispatch.Extension.Tests/PwrDrvr.LambdaDispatch.Extension.Tests.csproj b/test/PwrDrvr.LambdaDispatch.Extension.Tests/PwrDrvr.LambdaDispatch.Extension.Tests.csproj index a2373ac2..5717b174 100644 --- a/test/PwrDrvr.LambdaDispatch.Extension.Tests/PwrDrvr.LambdaDispatch.Extension.Tests.csproj +++ b/test/PwrDrvr.LambdaDispatch.Extension.Tests/PwrDrvr.LambdaDispatch.Extension.Tests.csproj @@ -1,6 +1,6 @@ - net8.0 + net10.0 enable enable true diff --git a/test/PwrDrvr.LambdaDispatch.HttpTestClient/PwrDrvr.LambdaDispatch.HttpTestClient.csproj b/test/PwrDrvr.LambdaDispatch.HttpTestClient/PwrDrvr.LambdaDispatch.HttpTestClient.csproj index 2fc2dd63..56c71406 100644 --- a/test/PwrDrvr.LambdaDispatch.HttpTestClient/PwrDrvr.LambdaDispatch.HttpTestClient.csproj +++ b/test/PwrDrvr.LambdaDispatch.HttpTestClient/PwrDrvr.LambdaDispatch.HttpTestClient.csproj @@ -3,7 +3,7 @@ true Exe - net8.0 + net10.0 enable enable diff --git a/test/PwrDrvr.LambdaDispatch.Router.TestClient/PwrDrvr.LambdaDispatch.Router.TestClient.csproj b/test/PwrDrvr.LambdaDispatch.Router.TestClient/PwrDrvr.LambdaDispatch.Router.TestClient.csproj index 08e6adb0..5c95fd92 100644 --- a/test/PwrDrvr.LambdaDispatch.Router.TestClient/PwrDrvr.LambdaDispatch.Router.TestClient.csproj +++ b/test/PwrDrvr.LambdaDispatch.Router.TestClient/PwrDrvr.LambdaDispatch.Router.TestClient.csproj @@ -1,4 +1,4 @@ - + @@ -6,7 +6,7 @@ portable true Exe - net8.0 + net10.0 enable enable Lambda @@ -33,7 +33,7 @@ - + diff --git a/test/PwrDrvr.LambdaDispatch.Router.Tests/PwrDrvr.LambdaDispatch.Router.Tests.csproj b/test/PwrDrvr.LambdaDispatch.Router.Tests/PwrDrvr.LambdaDispatch.Router.Tests.csproj index 9a00a60a..3f39cf9f 100644 --- a/test/PwrDrvr.LambdaDispatch.Router.Tests/PwrDrvr.LambdaDispatch.Router.Tests.csproj +++ b/test/PwrDrvr.LambdaDispatch.Router.Tests/PwrDrvr.LambdaDispatch.Router.Tests.csproj @@ -1,7 +1,7 @@ - net8.0 + net10.0 PwrDrvr.LambdaDispatch.Router.Tests enable enable @@ -13,7 +13,7 @@ - +