Skip to content

Issue3971 investigation#4025

Draft
scbedd wants to merge 6 commits intomainfrom
issue3971-investigation
Draft

Issue3971 investigation#4025
scbedd wants to merge 6 commits intomainfrom
issue3971-investigation

Conversation

@scbedd
Copy link
Copy Markdown
Member

@scbedd scbedd commented Mar 24, 2026

This is just #4001 with some additional debugging.

heaths and others added 6 commits March 23, 2026 18:15
Updated the HTTP client implementation to accept mutable requests, allowing
for more efficient request handling. This change improves the ability to
modify request bodies and headers directly, enhancing performance and
reducing unnecessary cloning.

Additionally, several async methods were updated to ensure proper
asynchronous behavior, particularly in the body handling and stream
management. This refactor aims to streamline the request execution
process and improve overall code maintainability.

Fixes #3971
This commit introduces the `FileStream` and `FileReader` types to facilitate
asynchronous file reading and seeking. The `FileStream` provides a buffered
stream adapter, while `FileReader` wraps a standard file for async operations.
These additions enhance the library's capabilities for handling file I/O in an
asynchronous context, improving performance and usability.
We don't need it, and don't necessarily want to have to maintain it for a general purpose file buffer.
@github-actions
Copy link
Copy Markdown

API Change Check

APIView identified API level changes in this PR and created the following API reviews

azure_core
typespec_client_core

Copilot AI added a commit that referenced this pull request Mar 25, 2026
When System.Debug is true in Azure DevOps, set RUST_LOG=trace and
Logging__LogLevel__Default=Debug to enable verbose logging from both
the Rust test code and the ASP.NET Core test-proxy process. Also adds
the "Dump Test Proxy Audit Logs" step from PR #4025.

Fixes #4026

Co-authored-by: heaths <1532486+heaths@users.noreply.github.com>
Agent-Logs-Url: https://github.com/Azure/azure-sdk-for-rust/sessions/a6b116bf-9dde-4eeb-a0ae-b45a876adc6a
heaths added a commit that referenced this pull request Mar 25, 2026
…4027)

When `System.Debug` is enabled in AzDO, pipeline tests run without any
enhanced logging, making it difficult to diagnose failures in the Rust
test code or the `test-proxy` process.

## Changes

- **`eng/pipelines/templates/variables/rust.yml`**: Update `RUST_LOG` to
use `trace` when `System.Debug == true`, and `info` otherwise
(previously `debug` / empty string). This is the single source of truth
for `RUST_LOG` across all pipelines.

- **`ci.tests.yml` / `live.tests.yml`**: Add a conditional step that
sets `Logging__LogLevel__Default=Debug` (ASP.NET Core log level for
`test-proxy`) when `System.Debug == true`. The step runs before the test
proxy starts and before tests execute so both processes inherit the
variable.

- **`ci.tests.yml`**: Add a "Dump Test Proxy Audit Logs" step (`GET
/Audit/Logs` via `Invoke-WebRequest`) conditioned on `System.Debug ==
true`, alongside the existing log dump step, with error handling so a
failure doesn't mask the original test result.

<!-- START COPILOT ORIGINAL PROMPT -->



<details>

<summary>Original prompt</summary>

> 
> ----
> 
> *This section details on the original issue you should resolve*
> 
> <issue_title>Enable tracing and more information when System.Debug is
checked in AzDO</issue_title>
> <issue_description>When we check `System.Debug` (env var
`SYSTEM_DEBUG`, I believe) in Azure DevOps, we should set env vars like
in #4025 and set `RUST_LOG=trace` to log more
information for diagnostics so we can more easily troubleshoot issues
like we saw for #4001.</issue_description>
> 
> <agent_instructions>Get changes to the pipeline in #4025 to determine
what environment variables to set when System.Debug is checked in Azure
Pipelines. There's an Azure Pipelines variable for that or I believe you
can also use the SYSTEM_DEBUG environment variable, but you should
figure that out. Open a PR that updates the appropriate pipeline under
eng/pipelines to set the env vars before starting the test proxy or
running tests.</agent_instructions>
> 
> ## Comments on the Issue (you are @copilot in this section)
> 
> <comments>
> <comment_new><author>@heaths</author><body>
> We could add a step to our local build scripts under `eng/pipelines`
that would export environment variables `RUST_LOG` and whatever
#4025 is setting to have ASP.NET's HTTP server
log more information, which test-proxy supports.</body></comment_new>
> </comments>
> 


</details>


> **Custom agent used: agentic-workflows**
> GitHub Agentic Workflows (gh-aw) - Create, debug, and upgrade
AI-powered workflows with intelligent prompt routing



<!-- START COPILOT CODING AGENT SUFFIX -->

- Fixes #4026

<!-- START COPILOT CODING AGENT TIPS -->
---

📱 Kick off Copilot coding agent tasks wherever you are with [GitHub
Mobile](https://gh.io/cca-mobile-docs), available on iOS and Android.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: heaths <1532486+heaths@users.noreply.github.com>
Co-authored-by: Heath Stewart <heaths@microsoft.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Azure.Core The azure_core crate Azure.Identity The azure_identity crate Cosmos The azure_cosmos crate KeyVault Key Vault Storage Storage Service (Queues, Blobs, Files)

Projects

Status: Untriaged
Status: Untriaged
Status: Todo

Development

Successfully merging this pull request may close these issues.

2 participants