Skip to content

About

No description, website, or topics provided.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SQL Server Performance Observatory

Understand the slowdown. Keep control of the fix.

Deutsch · Architecture · Measurement method · Local SQL lab · Verification status

An independent, read-only diagnostic workspace built with C# 14, ASP.NET Core 10 and Microsoft.Data.SqlClient. It compares weighted Query Store observations, tracks plan identity changes, follows blocking chains and preserves sanitized deadlock evidence. English is the default interface language; German and Persian (RTL) are included.

Engineering preview: 0.1.0-preview.1. The delivered source has not been compiled or run on .NET/SQL Server in its preparation environment. Frontend/support checks were exercised with explicitly synthetic fixtures. CI and a guarded live SQL acceptance lab are supplied; see the precise verification boundary. No passing-build badge or measured speedup is asserted.

CI follow-up (6 October 2026): Uploaded logs confirm .NET builds and 51 passing xUnit tests on each of Windows/Linux, plus 20 real ASP.NET API checks. The browser job exposed a test-side CSP/inspector mismatch, now corrected. Read the diagnosis and remaining verification boundary.

English overview with a visible synthetic replay banner

Actual frontend, synthetic fixture data. These figures are neither production telemetry nor a performance benchmark.

Why this project

A slow query is a symptom, not a complete diagnosis. A changed plan is a clue, not proof of causality. A missing sample is unknown, not zero. The project makes those distinctions visible and keeps production remediation under DBA control.

Capability What is actually implemented
Query evidence Successful captured executions, weighted duration/CPU/logical reads, comparison of two closed windows, explicit sample thresholds.
Plan changes Plan IDs/hashes, forced-plan flag and changed plan-set indication; no plan-tree diff.
Blocking Request chains, sleeping roots, cycles, special negative owner IDs and incomplete boundaries.
Deadlocks Existing XEL reader, bounded XML parsing, victim/resource ownership graph, content-based deduplication.
Coverage Independent source states, last attempt/success, collection duration and row-limit warnings.
Privacy No Query Store text or plan XML selected; raw deadlock XML is processed transiently but not stored/exported.
Operation Read-only collector, opt-in server diagnostics, local snapshots, unsigned JSON evidence export.
Reproducibility Separate local Developer lab: index-present / index-removed / index-restored with identical parameters, plus blocking/deadlock/permission contracts.

No automatic tuning, arbitrary SQL, KILL, index changes or plan forcing in the web service. No AI diagnosis or invented p95 from Query Store aggregates. Exact scope and roadmap.

Start without SQL Server

Install the SDK in global.json; the first restore requires an approved NuGet connection. No frontend package installation is needed.

# In the repository root, on Windows:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\scripts\build.ps1
if ($LASTEXITCODE -ne 0) { throw 'Build/tests failed. Review logs before proceeding.' }
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\scripts\run-demo.ps1

The second script prints a temporary random access key. Open http://localhost:5080, sign in and explore the explicitly labeled replay. Linux/macOS: bash scripts/build.sh, then bash scripts/run-demo.sh. These commands must succeed on your machine before claiming a working build. See getting started.

Connect deliberately

A dedicated SQL identity needs the version-specific Query Store grant. Blocking and XEL additionally need optional instance-level diagnostic grants; both are off by default. Production Query Store settings and XE sessions are never changed automatically. Connection strings stay server-side. Start with permissions and configuration.

SQL Server 2019/2022 primary user databases are design targets; SQL Server 2022 Developer is the supplied laboratory target. These are not compatibility certifications. Azure-specific behavior, AG routing, HA, enterprise SSO and multi-user authorization are outside the preview.

Repository map

src/Observatory.Core/       Pure analysis, XML/chain normalization and state
src/Observatory.SqlServer/  Typed SQL adapters and four embedded read queries
src/Observatory.Web/        ASP.NET host, collector, authentication and static UI
tools/Observatory.Lab/     Separate guarded SQL mutation/measurement laboratory
tests/                    Authored xUnit, actual-server API/browser and support tests
sql/permissions/          DBA-reviewed grant templates
docs/en/ + docs/de/       Bilingual engineering and operational documentation
.github/workflows/        Build, native UI and opt-in live SQL acceptance

Evidence, not marketing numbers

The local lab uses 100,000 deterministic synthetic rows, five warmups and thirty measured executions per phase. It records actual client samples and parsed logical reads and requires equal result sequences. No result has been prefilled. Read the controlled experiment before running any write-capable tool.

Blocking chain view using synthetic data

Engineering documentation

Architecture · Methodology · Permissions · Configuration · Security · Operations · API · Testing · Lab · Portfolio · Publishing · Roadmap · Decisions.

Additional analysis

Persian technical analysis.

Sources and licensing

Microsoft's Query Store management guidance, runtime-statistics contract, DMV documentation and system_health guidance inform the adapter boundaries. The SDK and SqlClient LTS release were checked on 5 October 2026.

Original source is MIT licensed. SQL Server and external packages retain their own terms. No Microsoft endorsement, certification, customer deployment or performance guarantee is claimed. See third-party notices, contribution guide and security reporting.

About

No description, website, or topics provided.

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages