Orleans.Lattice.Api.Telemetry.Grpc 9.9.0

dotnet add package Orleans.Lattice.Api.Telemetry.Grpc --version 9.9.0
                    
NuGet\Install-Package Orleans.Lattice.Api.Telemetry.Grpc -Version 9.9.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Orleans.Lattice.Api.Telemetry.Grpc" Version="9.9.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Orleans.Lattice.Api.Telemetry.Grpc" Version="9.9.0" />
                    
Directory.Packages.props
<PackageReference Include="Orleans.Lattice.Api.Telemetry.Grpc" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Orleans.Lattice.Api.Telemetry.Grpc --version 9.9.0
                    
#r "nuget: Orleans.Lattice.Api.Telemetry.Grpc, 9.9.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Orleans.Lattice.Api.Telemetry.Grpc@9.9.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Orleans.Lattice.Api.Telemetry.Grpc&version=9.9.0
                    
Install as a Cake Addin
#tool nuget:?package=Orleans.Lattice.Api.Telemetry.Grpc&version=9.9.0
                    
Install as a Cake Tool

Orleans.Lattice.Api.Telemetry.Grpc

Optional, opt-in gRPC transport binding for Orleans.Lattice.Api.Telemetry - the transport-agnostic, read-only telemetry facade.

It exposes the facade as a code-first, Orleans-serialized gRPC service and ships a client-safe client. LatticeTelemetryApiGrpcClient binds the two facade operations - get catalog (the curated named-query catalogue the caller may select from) and query (evaluate one catalogue entry by id with bounded parameters) - alongside the unauthenticated auth-scheme discovery RPC. Every wire message rides the Orleans serializer, so the contract stays versioned and additive-only.

Wiring on the co-hosting silo:

builder.Services.AddLatticeTelemetryApiGrpc(o => o.RequireAuthorization = true);
app.MapLatticeTelemetryApiGrpc();

The host must also register the facade this binding exposes - services.AddLatticeTelemetryApi() from Orleans.Lattice.Api.Telemetry - in the same service provider; this package does not reference it.

Curated queries only

The binding carries no query text, on any RPC, in any deployment mode. A caller selects a server-authored catalogue entry by id and supplies only the bounded parameters that entry declares. There is no wire field that holds an expression, so the rule is enforced by the contract's shape rather than by a sanitiser.

Tenant scoping stays server-side

The binding is transport only. It forwards the visibility the caller requested and returns whatever scope the facade pinned; it never derives, infers, or asserts a tenant of its own. The facade remains the single enforcement point, so a client head cannot widen its own scope by editing a request. What was actually applied is always reported on the response's Scope.

Default-deny

Until the host registers a permissive ILatticeTelemetryApiAuthorizer (or turns enforcement off behind an outer authentication boundary), every call is rejected. The unauthenticated GetAuthScheme discovery RPC is the single exemption, so a client can learn how to sign in before it holds a credential. The facade itself re-derives and authorizes the caller server-side, so on a cluster running the Orleans.Lattice.Auth add-on the surface still fails closed for an unauthenticated caller even when the transport gate is disabled. Without that add-on the core no-op access gate admits every caller - as a platform operator too, so a request for an all-tenant or single-tenant view is honoured - and a query that asks only for the caller's own scope is pinned to the caller's resolved active tenant - the reserved default tenant when tenancy is off or the call asserts none.

Client-safe by construction

The package references the shared Orleans.Lattice.Api.Abstractions contract alone. A client head - the Explorer included - can consume telemetry over this binding without taking the MCP server surface or the facade's PromQL machinery. A reference-closure test asserts it, because a transitive re-coupling compiles perfectly well and nothing else in the build would notice.

See the Orleans.Lattice repository for full documentation.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
9.9.0 78 10/2/2026
9.8.0 90 9/26/2026
9.7.0 85 9/21/2026
9.6.1 97 9/9/2026
9.6.0 97 9/5/2026
9.5.0 100 9/2/2026