TacticTelemetry 1.0.0
dotnet add package TacticTelemetry --version 1.0.0
NuGet\Install-Package TacticTelemetry -Version 1.0.0
<PackageReference Include="TacticTelemetry" Version="1.0.0" />
<PackageVersion Include="TacticTelemetry" Version="1.0.0" />
<PackageReference Include="TacticTelemetry" />
paket add TacticTelemetry --version 1.0.0
#r "nuget: TacticTelemetry, 1.0.0"
#:package TacticTelemetry@1.0.0
#addin nuget:?package=TacticTelemetry&version=1.0.0
#tool nuget:?package=TacticTelemetry&version=1.0.0
TacticTelemetry
A small, non-invasive .NET logging sink that ships an application's warnings, errors, and notable
events to TacticDB so they can be searched and viewed after
the fact. It is a standard Microsoft.Extensions.Logging provider, so it captures the logs an app
already writes with no change to a single log call.
See SRS.md for the full specification. The read UI lives in TacticTelemetaryBrowser.
Install
Reference the TacticTelemetry project (or package) from your host.
Use
One line during host configuration:
builder.Logging.AddTacticTelemetry(builder.Configuration);
And one configuration section (TacticTelemetry). In Production, supply these as environment
variables with the TacticTelemetry__ prefix.
{
"TacticTelemetry": {
"ServerUrl": "https://your-tacticdb-host",
"ApiKey": "your-master-key",
"AppId": "belit-telemetry",
"Table": "logs",
"Service": "BeLit.Api",
"MinLevel": "Warning"
}
}
That is the entire integration. The library:
- captures every log at or above
MinLevelthrough the standard logging pipeline, alongside your existing providers, which keep working unchanged (its own delivery logs are suppressed, so the sink never feeds itself); - provisions the TacticDB app automatically, and writes each day to its own table
(
logs-2026-08-19) so a write only ever rewrites one small day's blob; you create nothing by hand; - keeps
Retention:Daysof day-tables and drops older ones whole (one delete each, not per record); - ships errors first: an
Error/Criticalis flushed at once rather than waiting out the batch window; - buffers, batches, and delivers off your application's threads;
- is fail-open: if TacticDB is slow or down, your app runs exactly as before, and no log call or startup ever throws because of telemetry.
Configuration reference
| Setting | Default | Purpose |
|---|---|---|
Enabled |
true |
Master switch. |
ServerUrl |
(required) | TacticDB base URL. |
ApiKey |
(required) | Master key. Secret. |
AppId |
telemetry |
Target app (provisioned if missing). |
AppName |
Telemetry |
Display name used on create. |
Table |
logs |
Base table name (the per-day prefix when rotating). |
RotateDaily |
true |
Write each day to its own table {Table}-yyyy-MM-dd. |
Service |
(required) | Logical service name stamped on every event. |
Environment |
host env | Environment label. |
Instance |
machine name | Instance label. |
MinLevel |
Warning |
Minimum level captured by this provider. |
BatchSize |
50 |
Max events per bulk request. |
FlushIntervalSeconds |
30 |
Max wait before a partial batch is flushed. Larger is cheaper: TacticDB rewrites the whole table per write. |
QueueCapacity |
10000 |
Bounded queue; drop-oldest when exceeded. |
HttpTimeoutSeconds |
10 |
Per-request timeout. |
CaptureScopes |
false |
Flatten ILogger scopes into properties. |
Retention:Enabled |
true |
Delete old records so the table stays small (and writes stay cheap). |
Retention:Days |
14 |
Delete records older than this. |
Retention:IntervalHours |
12 |
How often retention runs. |
Retention:MaxDeletesPerPass |
500 |
Cap on deletes per pass (a delete also rewrites the whole table). |
Build and test
dotnet build TacticTelemetry.slnx
dotnet test TacticTelemetry.slnx
| Product | Versions 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. |
-
net10.0
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Http (>= 10.0.0)
- Microsoft.Extensions.Logging (>= 10.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.0)
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 |
|---|---|---|
| 1.0.0 | 90 | 8/19/2026 |