serilog/serilog · C#
Structured logging library for .NET. Mid-sized, well-maintained.
Source:
serilog/serilog· commit2ef6364· scanned 2026-05-23
Analyze serilog/serilog (C#) at commit 2ef6364 for technical debt. Summarize severity distribution, top rules triggered, and SQALE rating.
Scanned 198 issues in 221ms.
At a glance
| Issues | SQALE rating | Remediation | Scan time |
|---|---|---|---|
| 198 | A | 13d 16h 50m | 221ms |
Severity distribution
| critical | high | medium | low |
|---|---|---|---|
| 0 | 46 | 137 | 15 |
Top rules triggered
| Rule | Severity | Count |
|---|---|---|
nesting-depth | high | 125 |
dispose-pattern | medium | 16 |
catch-generic-exception | medium | 16 |
line-length | low | 11 |
file-length | high | 10 |
pragma-disable | medium | 6 |
dynamic-type | medium | 5 |
console-writeline | low | 4 |
Raw scan data: serilog.json
What kind of debt is this? Show the SQALE breakdown by category.
Remediation time by debt category — where the work would land if you fixed everything:
| Category | Remediation |
|---|---|
| maintainability | 33d 6h |
| code-quality | 7d 2h |
| performance | 30m |
The bulk of remediation lives in maintainability — that's where a debt-reduction sprint would have the highest ROI.
Show me the worst issues — top high-severity findings with file paths.
Top 5 high-severity findings:
| Severity | Rule | Location |
|---|---|---|
| high | nesting-depth | src/Serilog/Capturing/DepthLimiter.cs:43 |
| high | nesting-depth | src/Serilog/Capturing/PropertyBinder.cs:69 |
| high | nesting-depth | src/Serilog/Capturing/PropertyValueConverter.cs:196 |
| high | nesting-depth | src/Serilog/Configuration/LoggerEnrichmentConfiguration.cs:184 |
| high | nesting-depth | src/Serilog/Configuration/LoggerSinkConfiguration.cs:184 |
What dependencies does it use?
# Dependency Analysis
**Project:** td-showcase-serilog-serilog-2ef63645cf0d-1779575568861
**Found:** 7 package file(s) across 1 ecosystem(s)
**Total Dependencies:** 27
**Ecosystems:** nuget
## src/Serilog/Serilog.csproj (nuget)
**Dependencies:** 8
### Production (8)
- PolySharp@1.15.0
- System.ValueTuple@4.5.0
- System.Diagnostics.DiagnosticSource@8.0.1
- System.Threading.Channels@8.0.0
- System.Diagnostics.DiagnosticSource@8.0.1
- System.Threading.Channels@8.0.0
- System.Diagnostics.DiagnosticSource@8.0.1
- System.Threading.Channels@8.0.0
## test/Serilog.ApprovalTests/Serilog.ApprovalTests.csproj (nuget)
**Dependencies:** 5
### Production (5)
- Microsoft.NET.Test.Sdk@17.11.1
- xunit.runner.visualstudio@2.8.2
- xunit@2.9.2
- Shouldly@4.2.1
- PublicApiGenerator@11.1.0
## test/Serilog.PerformanceTests/Serilog.PerformanceTests.csproj (nuget)
**Dependencies:** 5
### Production (5)
- Microsoft.NET.Test.Sdk@17.11.1
- PolySharp@1.14.1
- xunit.runner.visualstudio@2.8.2
- xunit@2.9.2
- BenchmarkDotNet@0.15.2
## test/Serilog.Tests/Serilog.Tests.csproj (nuget)
**Dependencies:** 8
### Production (8)
- Microsoft.NET.Test.Sdk@17.11.1
- Newtonsoft.Json@13.0.3
- xunit.runner.visualstudio@2.8.2
- xunit@2.9.2
- System.ValueTuple@4.5.0
- System.ServiceModel.Http@8.1.0
- System.ServiceModel.Primitives@8.1.0
- System.Security.Cryptography.Xml@8.0.3
## test/TestDummies/TestDummies.csproj (nuget)
**Dependencies:** 1
### Production (1)
- PolySharp@1.14.1What should I fix first?
Dedicate Time for Tech Debt Reduction — 46 high-severity issues found. Consider allocating sprint time for tech debt.
Improve Code Maintainability — Several files have maintainability issues like deep nesting or excessive length.
How do I reproduce this locally?
Clone the repo at the pinned commit:
git clone https://github.com/serilog/serilog.git
cd serilog && git checkout 2ef63645cf0d0edd4b187510b238754249c4348fOption 1 — npx (any MCP client)
Add to your client's MCP config:
{
"mcpServers": {
"tech-debt": { "command": "npx", "args": ["-y", "tech-debt-mcp@latest"] }
}
}Then call analyze_project with the absolute path to the clone.
Option 2 — Claude Code plugin
/plugin marketplace add PierreJanineh/TechDebtMCP
/plugin install tech-debt-mcp@techdebtmcpThen ask Claude Code: "Run analyze_project on this directory."
Spot a false positive?
Open an issue with the showcase-fp label and link this page. Existing reports for serilog/serilog.
Tech Debt MCP is a static analyzer. It identifies patterns that often indicate debt — not all flagged code is broken, and not all debt will be flagged. Repository authors are not responsible for these findings.