Skip to content

Feature/mythical log idea backport#4594

Open
mhijaziB wants to merge 2 commits into
mainfrom
feature/mythical-logIdea-backport
Open

Feature/mythical log idea backport#4594
mhijaziB wants to merge 2 commits into
mainfrom
feature/mythical-logIdea-backport

Conversation

@mhijaziB
Copy link
Copy Markdown
Contributor

@mhijaziB mhijaziB commented May 4, 2026

Ticket

https://app.hubspot.com/contacts/9313073/record/0-5/44937368596/

Context

Mike from mythical applied some logging changes so that he only warning+ logs appear in Admin/Docs. He also changed Admin/* to allow logs based on what has been chosen. This is a backport to our sdk to test it out

Description

Adds a configurable admin-route logging policy for microservices.

By default, admin routes remain protected from noisy service logging rules and are held at Warning, preserving the existing SDK behavior. Customers that need admin routes to follow the same logging rules as the rest of the service can opt in with:

BEAM_ADMIN_ROUTE_LOG_POLICY=FollowServiceRules

Details

Added AdminRouteLogPolicy with:
-Protected
- FollowServiceRules
  • Added IMicroserviceArgs.AdminRouteLogPolicy.
  • Added environment parsing for BEAM_ADMIN_ROUTE_LOG_POLICY.
  • Updated microservice request log-level handling so:
    • protected admin routes use Warning
    • opted-in admin routes follow realm/logging-context rules
    • normal routes continue following existing service rules
  • Kept AdminRoutes.Docs() log suppression scoped and restored after generation.

Tests

Validated with:

dotnet test microservice\microserviceTests\microserviceTests.csproj --no-restore --filter "FullyQualifiedName~AdminRouteLogPolicyTests"
dotnet test microservice\microserviceTests\microserviceTests.csproj --no-restore --filter "FullyQualifie

Move the ambient microservice log-level AsyncLocal into beamable.tooling.common so AdminRoutes and runtime logging share the same context without introducing a runtime dependency.

Scope OpenAPI docs generation to temporarily raise the log threshold to Warning and restore the previous level afterward. Preserve the existing MicroserviceBootstrapper.ContextLogLevel API as an obsolete forwarder for compatibility.
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 4, 2026

Lightbeam link

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant