[Blocker] Add health checks, telemetry and structured logging
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 30/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- azure, csharp
- Domain
- backend, cloud, observability
Research direction
Start by reading LearnStack/Program.cs to understand the current hosting and logging setup, then locate the database context and App Service configuration. The work is done when /healthz reports database availability, Blazor circuit failures and specified application failures are correlated in telemetry, and the requested error-rate alert and dashboard are configured.
Written by the indexing model from the issue text.
Description
Tier 1 — release blocker
Problem
There is no /healthz endpoint, no Application Insights, no OpenTelemetry and no structured logging. When production misbehaves the only signal is console output. Blazor Server in particular needs circuit-level visibility — dropped circuits, unhandled component exceptions and SignalR reconnects are invisible today.
Evidence
- No
AddHealthChecks,ApplicationInsights,OpenTelemetryorSerilogreference anywhere LearnStack/Program.cs— default console logging only
Proposed fix
AddHealthChecks().AddDbContextCheck<ApplicationDbContext>()mapped at/healthz, wired to the App Service health probe.- Add Application Insights (or OpenTelemetry exporting to Azure Monitor).
- Track: circuit open/close, unhandled component exceptions, OpenGraph fetch failures, login failures, slow queries.
- Add a dashboard and an alert on the error rate.
Acceptance criteria
-
/healthzreturns degraded when the database is unreachable - Unhandled exceptions in a Blazor circuit appear in telemetry with user/session correlation
- An alert fires on sustained 5xx or circuit-failure rate
- Dominant language
- HTML
- Stars
- 10
- Forks
- 0
- Avg merge
- 2h 35m
- Merged PRs (30d)
- 21
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from kasuken/LearnStack
-
enhancement
Difficulty 1/5 Under an hour Newbie friendliness 91/100
kasuken/LearnStack#59 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
kasuken/LearnStack#72 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 30/100
kasuken/LearnStack#71 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
kasuken/LearnStack#70 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 45/100
kasuken/LearnStack#69 ·
Maintainers usually reply within 1 day
All issues in kasuken/LearnStack
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 3 days
-
good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
btclib-org/btclib-wallet#267 ·
Maintainers usually reply within 1 day
-
bug llm-stack needs-triage
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
macOS
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
beyondcode/herd-community#1761 ·
-
P3 Type: Bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
grpc/grpc-go#9483 · 2 comments ·
Maintainers usually reply within 2 days