Skip to content

Comments

Introduce Logging package and rework official pipelines#3967

Open
cheenamalhotra wants to merge 59 commits intomainfrom
dev/cheena/logging-package
Open

Introduce Logging package and rework official pipelines#3967
cheenamalhotra wants to merge 59 commits intomainfrom
dev/cheena/logging-package

Conversation

@cheenamalhotra
Copy link
Member

Summary

Moves the ETW SqlClientEventSource tracing infrastructure (~1,180 lines) from the core driver into a new Microsoft.Data.SqlClient.Extensions.Logging (netstandard2.0) NuGet package. This enables independent versioning and shared use across SqlClient and the AKV provider (which had its own AKVEventSource, now deleted).

Key Changes

Area What Changed
New package Microsoft.Data.SqlClient.Extensions.Logging — contains SqlClientEventSource, SqlClientMetrics, SqlClientEventScope, and scope types
Core driver SqlClientEventSource.cs reduced to a ~43-line SqlClientDiagnostics bridge; 28 source files updated from TryEventScope/TrySNIEventScopeSqlClientEventScope
AKV provider Deleted AKVEventSource.cs; AKV now uses the shared SqlClientEventSource.Log from the Logging package
Build build.proj gains Logging targets; nuspec files add Logging dependency across all TFMs
Pipelines Consolidated into unified OneBranch official/non-official pipelines with selective build params, approval service, ESRP signing for Logging, reusable publish job with dry-run; deleted 9 standalone pipeline/variable files
Docs Added PackageReadme.md for all 6 packages; new OneBranch pipeline design spec (522 lines); updated AGENTS.md

Checklist

  • No breaking changes — logging behavior preserved via the extracted package as a dependency

Copilot AI review requested due to automatic review settings February 20, 2026 17:22
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 121 out of 122 changed files in this pull request and generated 2 comments.

Copilot AI review requested due to automatic review settings February 20, 2026 17:49
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 121 out of 122 changed files in this pull request and generated no new comments.

Copilot AI review requested due to automatic review settings February 20, 2026 19:25
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 125 out of 126 changed files in this pull request and generated 3 comments.

- Replaced copy scripts with CopyFiles@2 tasks.
Copy link
Contributor

@mdaigle mdaigle left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It may work as a whole, but this is a tough one to review because there are so many ideas combined into one changeset. I'd really like to see pieces broken out so that they can be effectively reviewed.

- Fixed inconsistent/inaccurate official pipeline variable names.
Copilot AI review requested due to automatic review settings February 22, 2026 22:09
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 124 out of 125 changed files in this pull request and generated no new comments.

Copilot AI review requested due to automatic review settings February 23, 2026 15:08
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 131 out of 132 changed files in this pull request and generated no new comments.

- Fixed ApiScan file copying for SqlClient.
- Removed some unused parameters, variables, and files.
<DebugSymbols>true</DebugSymbols>
</PropertyGroup>

<!--
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I replaced the old .nuspec with this. Now we can use the standard C# project targets and pipeline jobs/steps.

@mdaigle
Copy link
Contributor

mdaigle commented Feb 23, 2026

I think all of my comments are addressed. I'll be looking at the pipelines directly now to make sure everything looks good.


parameters:
# The directory to copy PDB files into for ApiScan to inspect.
- name: symbolsFolder
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@paulmedynski These 2 parameters aren't necessary now that we're defining the ob_sdl_apiscan variables below.

type: windows # read more about custom job pool types at https://aka.ms/obpipelines/yaml/jobs

variables:
- template: /eng/pipelines/libraries/variables.yml@self
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is already imported by our caller.

#################################################################################

parameters:
# App Registration Client Id.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@paulmedynski These docs aren't very useful.

#################################################################################

parameters:
# App Registration Client Id.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@paulmedynski Docs not useful.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area\Engineering Use this for issues that are targeted for changes in the 'eng' folder or build systems. Public API 🆕 Issues/PRs that introduce new APIs to the driver.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants